DTAG Speedport Hybrid
Bilder
Frontpanel, Anzeige und Bedienteil:
Oberseite der Hauptplatine:
Unterseite der Hauptplatine:
Hauptprozessor ohne Kuehlkoerper:
Ein weiterer Prozessor mit DDR Ram auf der Rueckseite:
Datenblaetter
- NAND Flash s34ml01g1_04g1.pdf
Lustiges
Config-Datei ist binaer und unlesbar
1 0000000: 796b f40c 6a3c 146f fac0 4413 642e 17b2 yk..j<.o..D.d... 2 0000010: 926c fd75 9ee7 b687 683a d99e 0ee8 9d54 .l.u....h:.....T 3 0000020: 26eb 0c1b 0cf0 4c93 308f 73e2 635e 837e &.....L.0.s.c^.~ 4 0000030: 50a2 959a c985 2df0 829c 6e1d 3ba6 0f05 P.....-...n.;... 5 0000040: b6cf 5b62 f492 d0cf f471 7e99 e7f1 25fd ..[b.....q~...%. 6 0000050: af8e 81d9 82b1 f893 06d7 c336 10c9 26fa ...........6..&. 7 0000060: ae18 0bef 8f03 4db9 bd7c 180f f6a6 73fa ......M..|....s. 8 0000070: 355b fe4d 7956 b08c 5cb6 c1f2 a75d dc00 5[.MyV..\....].. 9 0000080: 2538 6f2b c7c6 291d 1558 69a4 6a63 0bf9 %8o+..)..Xi.jc.. 10 0000090: 99be 763b a0cb e069 3c65 1f76 1e41 c339 ..v;...i<e.v.A.9 11 00000a0: f991 cef4 6e10 98ea d9c9 38f4 7088 6052 ....n.....8.p.`R 12 00000b0: e9e8 d3d8 abca d697 e4ce 072c 0f33 081c ...........,.3.. 13 00000c0: 183e 5acb 5754 b05f c82e 72e0 6c88 bf43 .>Z.WT._..r.l..C 14 00000d0: ba54 0e1b dc76 ab32 f9fb ef82 5d31 d4d9 .T...v.2....]1.. 15 00000e0: 9c57 22dc cf6f 114f 32e6 4549 1f42 f46c .W"..o.O2.EI.B.l 16 00000f0: 92fe d22d 304b 3212 4559 ef66 3243 4805 ...-0K2.EY.f2CH. 17 0000100: 91dd eb04 6b06 efb8 a44a dc88 b859 3989 ....k....J...Y9. 18 0000110: 377e 8d03 22f1 bb52 11e1 b0dc 664e 31f2 7~.."..R....fN1.
Vielleicht verschluesselt, oder irgendwie komprimiert und der Header entfernt.
Firmware Versionen
Die FW-Versionen die dem Geraet aufgedraengt werden, kann man unter http://firmware.acs.t-online.de/tftpboot/cpe/DTAG-CPE-Information.xml entdecken. Man kann dort auch direkt die aktuelle FW herunterladen.
Engineer Menu
Es gibt ein verstecktes Menu und zwar hier: http://speedport.ip/engineer/html/dsl.html?lang=en. Dort kann man z.B. die maximal erreichbare DSL Geschwindigkeit sehen.
Telnet aktivieren
- Config aus Router speichern
- Config entschluesseln
crypt.py decrypt *.config plaintext.xml
- In plaintext.xml
<X_ServiceManage TelnetEnable="0" TelnetPort="23" KeyEquipMode="0"/>
auf
<X_ServiceManage TelnetEnable="1" TelnetPort="23" KeyEquipMode="0"/>
aendern
- User und Passwort noch anpassen:
<UserInfoInstance InstanceID="1" Username="!!Huawei" Userpassword="@HuaweiHgw" Userlevel="0" Timestamp="0000-00-00 00:00:00" Size="0"/>
aendern in
<UserInfoInstance InstanceID="1" Username="dasistmeinrouter" Userpassword="supergeheimespasswort" Userlevel="0" Timestamp="0000-00-00 00:00:00" Size="0"/>
- Config verschluesseln
crypt.py encrypt plaintext.xml telnetOn.config
- Config wieder in router einspielen
- Per Telnet mit router verbinden
su
eingeben → root!
In der Shell
Wie gewoehnlich fehlen ein paar essentielle Tools. Daher bauen wir mittels buildroot ein paar nach…
buildroot
- Download hier
tar -xvjf buildroot_speedport_160717.tar.bz2;make
- dropbear, busybox, minicom auf einem dem Speedport zugaenglichen http server kopieren. Im weiteren Beispiel hat dieser die IP 192.168.4.1.
# -*- coding: utf-8 -*- """ Created on Sun Jul 17 12:21:19 2016 @author: xxx """ import telnetlib import time PROMPT="# " HOST = "speedport.ip" user = "<telnet user von oben>" password = "<telnet passwort von oben>" tn = telnetlib.Telnet(HOST) tn.read_until("Login: ") tn.write(user + "\n") tn.read_until("Password: ") tn.write(password + "\n") tn.read_until("ATP>") tn.write("sh\n") tn.read_until("$ ") tn.write("su\n") tn.read_until("# ") tn.write("cd /tmp;rm -rf /tmp/*; wget -g -l /tmp/busybox -r /bb 192.168.4.1; chmod +x /tmp/busybox; /tmp/busybox --install .\n") tn.read_until(PROMPT) tn.write("export PATH=/tmp:$PATH\n") tn.read_until(PROMPT) tn.write("wget http://192.168.4.1/strace; chmod +x strace\n") tn.read_until(PROMPT) tn.write("wget http://192.168.4.1/dropbearmulti; chmod +x dropbearmulti; ln -s dropbearmulti dbclient; ln -s dropbearmulti scp; ln -s dropbearmulti ssh; ln -s dropbearmulti dropbear;ln -s dropbearmulti dropbearkey\n") tn.read_until(PROMPT) tn.write("wget http://192.168.4.1/minicom; chmod +x minicom\n") tn.read_until(PROMPT) tn.close()
- Mit telnet auf dem Speedport einloggen
export PATH=/tmp:$PATH
- Spass haben!
Tools
atcmd
Befehl | Bedeutung | Kommentar |
---|---|---|
atcmd hwver display | HW Version anzeigen | |
atcmd cimi display | IMSI (Karte) anzeigen | |
atcmd board display | IMSI (Board) anzeigen | IMEI ? |
atcmd swver display | SW Version anzeigen | |
atcmd sysinfo display | System informationen anzeigen |