AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Routerlogin und JavaScript

Offene Frage von "prelude247"
Ein Thema von prelude247 · begonnen am 12. Jan 2009 · letzter Beitrag vom 12. Jan 2009
Antwort Antwort
prelude247

Registriert seit: 1. Aug 2005
28 Beiträge
 
Delphi 7 Enterprise
 
#1

Routerlogin und JavaScript

  Alt 12. Jan 2009, 15:28
Hallo DP'ler,

ich versuche nun schon seit geraumer Zeit einen automatisierten Reconnect auf meinem Router (D-Link DGL-4300) auszuführen.
Das klappt auch soweit ganz gut, jetzt kommt das große ABER, nur wenn auf dem Router eine offene Session läuft. Den Reconnect führe ich über eine Batch mit cURL aus:

Code:
curl "http://192.168.0.1/pppoe.cgi?data=.f.."
curl "http://192.168.0.1/pppoe.cgi?data=.P.."
wenn jedoch die Session am Router abgelaufen ist muss ich mich erst erneut anmelden und dann läuft alles wie gehabt.

Im Netz hab ich dann folgendes gefunden:

Code:
curl "http://192.168.0.1/post_login.cgi?data=%PWD%."
curl "http://192.168.0.1/pppoe.cgi?data=.f.."
curl "http://192.168.0.1/pppoe.cgi?data=.P.."
Ich habe nun das %PWD% durch mein Passwort ersetzt, jedoch funktionierte das nicht wie geplant.
Bei einer normalen Anmeldung wird das Passwort in der From übertragen: http://192.168.0.1/post_login.cgi?da...jP31IwE7XVADUn.

Bei jedem Login ändert sich jetzt jedoch dieser Hashwert.

Nun zu meiner Frage:

Kann man es irgendwie realisieren diesen Wert zu generieren bzw. das Skript des Routers auszuführen?

Ich habe leider keinerlei Erfahrung mit Javascript. Den Quelltext der Loginseite hab ich angehängt.

MfG
Prelude247
Angehängte Dateien
Dateityp: txt routerlogin_974.txt (11,1 KB, 6x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Routerlogin und JavaScript

  Alt 12. Jan 2009, 19:37
Hi,

also das ist mal der relevante Code:

Code:
var a = new Array;

// Compute the login hash.
var shex = byteArrayToHexString(convertFromBase64(data),0,4);
var goodp = document.myform.Password.value.substr(0,16);
document.myform.Password.value = "";      // Make sure password never gets sent as clear text
for (var i = goodp.length; i < 16; i++) {
   goodp = goodp.concat(String.fromCharCode(1));
}
var str = shex + goodp;
// Pad the string to 64 bytes.
for (var i = str.length; i < 63; i++) {
   str = str.concat(String.fromCharCode(1));
}
str = str.concat((document.myform.username.value == 'user') ? 'U' : String.fromCharCode(1));
var hash = hex_md5(str);
var saltHash = shex.concat(hash);
a = convertHexString(saltHash, 20, 20);

// Send the new configuration to the server
sendDataToServer ("post_login.cgi?data=" + convertToBase64(a),loginReturnValue)
Damit die anderen nicht suchen müssen. Nun müsste man herauskriegen, was die Funktionen genau machen.
Es gibt auf dem Router auch eine md5.js, vielleicht bringt die einen weiter.

Grüße, Matze
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz