![]() |
Routerlogin und JavaScript
Liste der Anhänge anzeigen (Anzahl: 1)
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:
wenn jedoch die Session am Router abgelaufen ist muss ich mich erst erneut anmelden und dann läuft alles wie gehabt.
curl "http://192.168.0.1/pppoe.cgi?data=.f.."
curl "http://192.168.0.1/pppoe.cgi?data=.P.." Im Netz hab ich dann folgendes gefunden:
Code:
Ich habe nun das %PWD% durch mein Passwort ersetzt, jedoch funktionierte das nicht wie geplant.
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.." Bei einer normalen Anmeldung wird das Passwort in der From übertragen: ![]() 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 |
Re: Routerlogin und JavaScript
Hi,
also das ist mal der relevante Code:
Code:
Damit die anderen nicht suchen müssen. Nun müsste man herauskriegen, was die Funktionen genau machen.
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) Es gibt auf dem Router auch eine md5.js, vielleicht bringt die einen weiter. Grüße, Matze |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz