Router Control - Router D-Link DIR-635
Kurze Beschreibung des Algorithmus.
1. Konvertiere die Bytefolge von [data] in eine Hexadezimale-String-Sequenz.
2. Wenn das eingegebene Passwort weniger als 16 Zeichen enthällt, so fülle das Passwort mit den Unicode-Zeichen an der Adresse 1 bis das Passwort 16 Zeichen lang ist.
3. Verbinde das String aus Teilaufgabe 1 mit dem aus Teilaufgabe 2.
4. Wenn nun der String aus Teilaufgabe 3 weniger als 63 Zeichen hat, so fülle dieses String mit den Unicode-Zeichen an der Adresse 1, bis das String 63 Zeichen enthällt.
5. Wenn sich der Admin einlogt, so hänge an den String aus Teilaufgabe 4 einmal das Unicode-Zeichen mit der Adresse 1 an. Wenn sich ein User anmeldet, so hänge an den String das Zeichen \'U\'.
6. Bilde MD5 vom String aus Teilaufgabe 5.
7. Verbinde String aus Teilaufgabe 1 mit dem String aus Teilaufgabe 6.
8. Konvertiere String aus Teilaufgabe 7 in ein Byte-Array
9. Verbinde \"post_login.cgi?data=\" mit dem Array aus Teilaufgabe 8 und sende es an den Router. Das Array wurde zuvor mit convertToBase64() konvertiert.
Kann man sowas in ein Anmeldestring packen?
1. Konvertiere die Bytefolge von [data] in eine Hexadezimale-String-Sequenz.
2. Wenn das eingegebene Passwort weniger als 16 Zeichen enthällt, so fülle das Passwort mit den Unicode-Zeichen an der Adresse 1 bis das Passwort 16 Zeichen lang ist.
3. Verbinde das String aus Teilaufgabe 1 mit dem aus Teilaufgabe 2.
4. Wenn nun der String aus Teilaufgabe 3 weniger als 63 Zeichen hat, so fülle dieses String mit den Unicode-Zeichen an der Adresse 1, bis das String 63 Zeichen enthällt.
5. Wenn sich der Admin einlogt, so hänge an den String aus Teilaufgabe 4 einmal das Unicode-Zeichen mit der Adresse 1 an. Wenn sich ein User anmeldet, so hänge an den String das Zeichen \'U\'.
6. Bilde MD5 vom String aus Teilaufgabe 5.
7. Verbinde String aus Teilaufgabe 1 mit dem String aus Teilaufgabe 6.
8. Konvertiere String aus Teilaufgabe 7 in ein Byte-Array
9. Verbinde \"post_login.cgi?data=\" mit dem Array aus Teilaufgabe 8 und sende es an den Router. Das Array wurde zuvor mit convertToBase64() konvertiert.
Kann man sowas in ein Anmeldestring packen?
Zuletzt geändert von Gabro am 25.01.2008, 16:02, insgesamt 4-mal geändert.
Ich habe mir das Tutorial für das erstellen eines neuen Routers angesehen und soweit verstanden. Auch das Programm Live HTTP headers habe ich installiert und benutzt.
Nun habe ich ein Problem. Der Router D-Link DIR-635 braucht einen Anmeldestring in dieser Form
<POST>post_login.cgi?data=CMhh_5vs.dpFnGAbNRt0hKw7TVf.
oder
<POST>post_login.cgi?data=t52f7bu5kNMSdG8bsubaKtvn2ib.
Wie man schon sieht wird der Inhalt der data-Variable generiert, nämlich mit einem Java-Script. Der Quellcode scheint Username und Passwort zu verbinden und zu verschlüsseln. Bei jedem Login sieht der Inhalt von data anders aus.
Ich hätte keine Probleme damit jetzt ein Programm zu schreiben der diese Generierung vornimmt, allerdings habe ich keine Ahnung wie ich diesen Algorithmus in ein Anmeldestring packen soll.
Hat jemand eine Idee ob und wie man Methoden von Java innerhalb eines Anmeldestrings aufrufen kann?
Sind sowas wie Schleifen in einem Anmeldestring möglich?
Nun habe ich ein Problem. Der Router D-Link DIR-635 braucht einen Anmeldestring in dieser Form
<POST>post_login.cgi?data=CMhh_5vs.dpFnGAbNRt0hKw7TVf.
oder
<POST>post_login.cgi?data=t52f7bu5kNMSdG8bsubaKtvn2ib.
Wie man schon sieht wird der Inhalt der data-Variable generiert, nämlich mit einem Java-Script. Der Quellcode scheint Username und Passwort zu verbinden und zu verschlüsseln. Bei jedem Login sieht der Inhalt von data anders aus.
Ich hätte keine Probleme damit jetzt ein Programm zu schreiben der diese Generierung vornimmt, allerdings habe ich keine Ahnung wie ich diesen Algorithmus in ein Anmeldestring packen soll.
Hat jemand eine Idee ob und wie man Methoden von Java innerhalb eines Anmeldestrings aufrufen kann?
Sind sowas wie Schleifen in einem Anmeldestring möglich?
Zuletzt geändert von Gabro am 24.01.2008, 22:00, insgesamt 1-mal geändert.