[HowTo] Arcadyan/o2 IAD 4421, IAD 6431 VoIP Daten aus Webinterface auslesen

hph

Mitglied
Mitglied seit
18 Nov 2012
Beiträge
253
Punkte für Reaktionen
0
Punkte
16
Hallo,

ich habe einen Teil der Firmware einer o2 Box 6431 reverse engineered und ein Tool zur Entschlüsselung der Config-Backup-Dateien geschrieben. Damit ist es also ganz leicht und zerstörungsfrei möglich, die VoIP Daten auszulesen. Siehe dazu auch meinen Blogeintrag.

Orientierung
Das Tool kann auf die folgenden Modelle angewendet werden: IAD 6431 (z. B. o2 Box 6431), IAD 4421 (z. B. o2 Box 4421), (ggf. weitere Modelle)...

Es können Firmware-Versionen von 1.01.18 bis einschließlich 1.01.23b entschlüsselt werden.

Hinweis zur Firmware 1.01.23b
Falls ihr eure VoIP/PPPoE-Daten bei dieser Firmware auslesen wollt, dann müsst ihr die Konfigurationsdatei zwingend direkt aus dem Flash laden. Über das Webinterface geht es nicht mehr. Wie es geht, lest ihr hier.

Falls ihr eine Config des IAD 4421 mit alter Alice-Firmware ( < 1.01.18 ) entschlüsseln wollt, dann braucht ihr dieses Tool.

Die IADs 3221, 3222, 3231 und 3232 werden nicht von Arcadyan hergestellt, sondern von Sphairon. Um diese zu entschlüsseln, benötigt ihr mein anderes Tool.
(Stand Nov/2013)

Anleitung
Diese Anleitung ist recht kurz und allgemein gehalten, sollte jedoch zusammen mit den FAQ bei eigentlich jedem Setup funktionieren.
Falls ihr einen T-Com VDSL Resale Anschluss habt, dann sei euch die Anleitung von Goldstuhl ans Herz gelegt. Diese ist sehr ausführlich.
Wenn jemand eine Anleitung für weitere Konstellationen schreiben mag, dann werde ich sie gerne hier einpflegen.

0. o2 Box anschließen und sicherstellen, dass Telefonie und Internet funktionieren. Dazu am besten einen ausgehenden Testanruf mit einer o2 Nummer machen und eine Internetseite aufrufen.

1. Falls ihr die Firmware 1.01.22 oder kleiner habt: In die o2 Box (http://o2.box/) einloggen und die config.bin herunterladen: “System” -> “Einstellungen sichern” -> “Konfiguration speichern”.
Falls ihr die Firmware 1.01.23b oder größer habt: Hier lesen.

2. Mein Tool "Arcadyan IAD Decrypter" herunterladen (am Post angehängt, Anhang anzeigen arcadyan_decrypter_v0.05a.zip) und in den Ordner, in der die .bin liegt, entpacken.

3. Ladet euch Microsoft "strings" herunter und entpackt es in den Ordner eurer .bin-Datei. Ihr könnt die Internetverknüpfung "MS strings" benutzen.

4. Startet die .bat Datei an, die zu eurer Box gehört. Sollte für eure Box keine .bat existieren oder habt ihr die .bin unter anderem Namen gespeichert, dann öffnet "cmd" und geht in den Ordner eurer .bin. Benutzt arcadyan_dec.exe wie folgt:
Code:
Usage: arcadyan_dec.exe -d <input file> <output file>

-d: decrypt input file, save result to output file
Hinweis: Mein Tool enthält keinerlei Schadcode. Falls ihr Zweifel habt, solltet ihr es in einer Sandbox oder auf einer Virtual Machine ausführen.
arcadyan_dec_v0.03.png
5. Öffnet die o2box6431_strings.txt bzw o2box4421_strings.txt in einem Texteditor und sucht nach euren VoIP Daten.

Code:
PPPoE1
[email protected] <- Internet PPPoE Login
XXXX <- Internet PPPoE Passwort
PPPoE2
[email protected] <- VoIP PPPoE Login
XXXX <- VoIP PPPoE Passwort

Hinweis: Habt ihr nur einen Eintrag unter PPPoE2 und PPPoE1 ist bei euch leer, dann schaut euch FAQ #4 und #5 an.

Code:
$NOTIFY
$PROXY
sip.XXXX-voip.de <- VoIP Proxy
sip.XXXX-voip.de <- VoIP Proxy
sip.XXXX-voip.de <- VoIP Proxy
registrarXX.sip.XXXX-voip.de oder sip.XXXXX-voip.de <- VoIP Registrar
XXXXXXXXXXX <- VoIP Telefonnummer
XXXXXXXXXXX <- VoIP Login (kann identisch sein mit VoIP Telefonnummer)
XXXXXXXXXXXXXXXX oder XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX <- VoIP Passwort (16- oder 32-stellig)

6. Tragt eure VoIP Daten in eure FRITZ!Box ein. Ein Update auf die neuste Firmware ist zwingend notwendig. Screenshots auf denen man sieht, wie und wo was einzutragen ist findet ihr z. B. hier. Fertig.

Spenden
Ich möchte mich bei allen Leuten herzlich bedanken, die mich in der Vergangenheit unterstützt haben. Mein Studentendasein geht dem Ende entgegen und deswegen möchte ich keine Spenden mehr annehmen.
Wer meine Tools oder meine Hilfe in der Vergangenheit hilfreich fand und sich trotzdem in Form einer Spende bedanken möchte, der kann gerne an Amnesty International spenden. [Hanno "hph", 2014-04-23]

Grundsätzlich stelle ich meine Tools und meine Hilfe unentgeltlich zur Verfügung. Wer freiwillig spenden möchte, der kann das gerne per Paypal oder Bitcoin tun.

Code:
Paypal: <zensiert>
Bitcoin: <zensiert>

Bitte beachtet, dass auch meine Freizeit begrenzt ist. Ich versuche die Decrypter stets aktuell zu halten und jedem zu helfen, sofern es meine Zeit zulässt. Natürlich ist mein Support (im Forum/per PN/eMail/TeamViewer) unabhängig von einer Spende.
Vielen Dank! :)

Bugs und Erfolge mit anderen IADs
Bitte posted hier rein, ob ihr auch mit anderen IADs Erfolg hattet. Das würde anderen Usern die Suche erleichtern.
Bugs können ebenfalls hier geposted oder mir per PN geschickt werden. Schreibt bitte dazu, wie ich euch kontaktieren kann, falls ich Rückfragen habe.

Fragen zum Tool
Fragen bitte hier im Thread stellen.

Alle Versionen des Decrypters
Anhang anzeigen arcadyan_decrypter_v0.05a.zip - Wie v0.05, jedoch nicht mit UPX komprimiert (19.11.2014)
Anhang anzeigen arcadyan_decrypter_v0.05.zip - Support for OBC6 file format added (30.11.2013)
Anhang anzeigen arcadyan_decrypter_v0.04.zip - "SHA-1 mismatch" Problem gefixed (24.02.2013)
Anhang anzeigen arcadyan_decrypter_v0.03.zip - VLAN ID Extraktion hinzugefügt (22.02.2013)
Anhang anzeigen arcadyan_decrypter_v0.02.zip - erstes Release (13.02.2013)

Fragen zur Einrichtung der FRITZ!Box
Wer Fragen zur Einrichtung seiner Rufnummern auf der FB hat, der sucht am besten im Forum oder fragt hier oder in einem eigenen Thread. Da ich selbst keinen O2/Alice Anschluss besitze, kann ich per PN wenig bis keine Hilfestellung zur Einrichtung oder etwaigen Fehlern geben.

Eine Liste von häufigen Fehlern samt Lösungsvorschläge von verschiedenen Usern werde ich hier anhängen. Das ist mehr oder minder eine Zusammenfassung dieses Threads und der PNs und E-Mails, die ich erhalten habe. Kein Anspruch auf Vollständigkeit.

1. Request Denied
Problem: Die zweite PPPOE Verbindung für die Telefonie wird nicht aufgebaut und man erhält den Fehler "Request Denied".
Lösung: Für die zweite PPPOE Verbindung den VCI-Wert von 32 auf 35 ändern. (Danke an mcgiovanni88 für den Rat.)

2. DNS-Fehler
Problem: Nach Neustart der FB oder nach Zwangstrennung bleiben einige oder alle zuvor erfolgreich registrierte Rufnummern unregistriert. Im Log taucht ein "DNS Fehler" für die Rufnummer auf.
Lösung: Für jede Rufnummer den Proxy einrichten. Das sollte meistens (oder immer?!) "sip.alice-voip.de" sein. Zu finden ist der richtige Wert auch in der Ausgabedatei meines Tools.

3. Fehler 403
Problem: Die VoIP PPPoE Verbindung wird zwar aufgebaut, aber die Rufnummer kann nicht registriert werden. Es wird Fehler 403 von der Gegenstelle gemeldet.
Lösung: VoIP Login und VoIP Passwort der Rufnummer sowie Landes- und Ortsvorwahl überprüfen. Dazu am besten alle Ausgabedateien meines Tools löschen und die Entschlüsselung erneut durchführen. Die erhaltenen Werte per Copy/Paste eintragen und darauf achten, dass kein Zeichen zu viel und keins zu wenig drinsteht. Die Vorwahlen müssen ebenfalls exakt und korrekt (wie hier gezeigt) angegeben werden, da ansonsten ebenfalls ein 403 gemeldet wird (danke an Borat 81 für den Hinweis).

4. Keine Antwort auf PPPoE Pakete bei VDSL Anschluss
Problem: Beim Einrichten eurer PPPoE Verbindung(en) an einem VDSL Anschluss erhaltet ihr die Fehlermeldung "Die Prüfung der Internetverbindung ist fehlgeschlagen. Der Internetanbieter antwortet nicht auf PPPoE-Pakete. Wiederholen Sie den Test zu einem späteren Zeitpunkt.".
Ursache 1: VLAN ID(s) nicht oder falsch konfiguriert.
Lösung: Die VLAN ID bzw. die VLAN IDs müssen richtig konfiguriert werden. Sie können sowohl in der Konsolenausgabe des Decrypters als auch in der Datei o2box4421_output.txt bzw. o2box6431_output.txt nachgelesen werden (ab v0.03 des Decrypters). Eine Liste der bereits ermittelten IDs ist hier:
-> Ihr habt einen "echten" o2 VDSL Anschluss: Internet PPPoE VLAN ID = 11, VoIP PPPoE VLAN ID = 12 (danke an dxm523).
-> Ihr habt einen T-Com VDSL Resale Anschluss: Internet PPPoE VLAN ID = 7.
Ursache 2: Eine alte Firmware Version ist möglicherweise das Problem (z. B. hat die Version 84.05.22 auf einer FB 7390 einen solchen Fehler verursacht).
Lösung: Firmware auf neuste Version updaten (mit Version 84.05.50 funktionierte es dann in dem o. g. Fall).

Hinweis auf einen T-Com VDSL Resale Anschluss ist, dass ihr nur einen PPPoE2 Eintrag habt und PPPoE1 bei euch leer ist. Siehe auch FAQ #5.

5. Leerer PPPoE1 Eintrag
Problem: Euer PPPoE1 Eintrag ist leer. In PPPoE2 stehen jedoch PPPoE Daten.
Lösung: Ihr habt vermutlich einen VDSL Resale Anschluss der T-Com. Tragt die Daten aus PPPoE2 als eure normale Internetverbindung ein und stellt dabei VLAN ID gemäß FAQ #4 ein. Eure VoIP Nummern sind über die normale Internetverbindung ohne zweite Einwahl registrierbar (bestätigt durch kingmos). Siehe auch FAQ #4.

6. o2 VoIP funktioniert, aber alternativer Anbieter kann nicht registriert werden
Problem: Ihr wollt alternative VoIP Anbieter (z. B. sipgate, dus.net, easybell, etc.) parallel zu eurer o2 VoIP Rufnummer nutzen. Eure o2 VoIP Nummer funktioniert, aber die alternative Rufnummer kann nicht registriert werden. Ihr habt einen o2 Anschluss, bei dem zwei separate PPPoE Verbindungen bestehen. Eure FB versucht den alternativen VoIP Anbieter über die zweite PPPoE Verbindung (privates o2 Netz) zu kontaktieren.
Lösung: Updated eure FB auf die neuste Firmware. Editiert eure alternative VoIP Rufnummer unter Telefonie -> Eigene Rufnummern -> Edit-Symbol neben eurer Rufnummer. Dort solltet ihr die Option "Anmeldung immer über eine Internetverbindung" einschalten. Taucht diese Option auch bei eurer neusten Firmware nicht auf, dann handelt nach diesem Post. Das wiederholt ihr für alle Rufnummern von Alternativanbietern.

7. Rufnummer Zugangsdaten unter $NOTIFY $PROXY sind nicht vorhanden
Problem: (Ihr habt einen neuen Anschluss.) Die verschlüsselte Config habt ihr runtergeladen und entschlüsselt. PPPoE Daten sind vorhanden, aber unter
Code:
$NOTIFY
$PROXY
sind keine Zugangsdaten für die Rufnummer eingetragen.
Lösung: Ihr müsst die o2 Box anklemmen und sicherstellen, dass eure Telefonie funktioniert. Das geht am besten durch ein Telefonat über die o2 Box. Danach ladet ihr die Config erneut herunter und entschlüsselt diese. Nun solltet ihr eure Zugangsdaten für die Rufnummer sehen.

8. Einstellungen in der FB werden nicht übernommen
Problem: Eure Einstellungen werden in der FB nicht übernommen. Nach dem Klick auf "Übernehmen" sind die geänderten Felder trotzdem wieder grau/leer.
Lösung: Wer genau für das Problem verantwortlich ist, ist unklar. Jedenfalls führt ein Wechsel des Browsers meistens zum Erfolg.

9. FB Eingabemasken sehen anders auf als auf den Screenshots
Problem: Das Webinterface eurer FB sieht anders aus, als auf den Screenshots. Manche wichtigen Eingabefelder sind nicht zu finden.
Lösung: Ihr solltet die Firmware eurer FB updaten und die Ansicht auf "Erweitert" stellen.

10. Internet und VoIP auf einem Draytek Vigor 2750vN einrichten
Problem: Ihr habt einen Draytek Vigor 2750vN und wollt Internet und VoIP darauf einrichten.
Lösung: eve_Snuffy hat dazu eine Anleitung verfasst. Außerdem hat er noch ein paar Screenshots von den korrekten Einstellungen hinzugefügt.
 
Zuletzt bearbeitet:
Hallo zusammen,

ich habe vor kurzem auf die Speedoption gewechselt und nun probleme.

Besitze eine 7390 und habe von alice/o2 die o2box 6431 bekommen.
Am liebsten würde ich ja nur meine 7390 nutzen und inet darüber klappt auch nur fehlen mir die daten um voip einzurichten.

Habe im inet gelesen das es mit ein paar konfiguration an der fritzbox möglich sein soll. Habe mir das ganze auf der fritzbox auch schonmal angesehen und habe festgestellt das ich dort eigentlich alles eintragen kann, sogar das zweite vlan für voip einstellen kann.

Kennt einer die konfig für die voip oder kann ich die aus der neuen o2box 6431 irgendwie auslesen?

Wenn ich die Boxen hintereinander schalte habe ich auch noch ein telefon problem. Habe den amtausgang der o2box 6431 mit dem Y-Kabel der fritzbos 7390 verbunden und an der fritzbox dann mein analoges telefon ( habe nur ein analog-anschluß). die fritzbox erkennt das amt und ich kann auch telen aber nur mit knacken in der leitung, bzw das amtzeichen ist auch kein durchgehender ton mehr sondern ein sehr schnell auf einanderfolgender tut ton. Außerdem nutze ich viel die faxfunktion der fritzbox 7390 und diese geht nun garnicht mehr. Liegt wohl an dem dafor beschrieben problem.

Wenn euch irgendwelche infos fehlen sagt bescheid, ich reiche gerne alles mögliche nach!

Ansonsten habt etwas rücksicht, ist ein neues Thema für mich und bin neu hier.

Gruß Mario
 
kennt jemand die o2box 6431???
 
Ja, ich kenne die Box vom Hörensagen. Sie ist der Nachfolger der Alice Box 7570.

Alice ist bekannt dafür, die Kunden zur Benutzung der eigenen (und nicht immer ganz fehlerfreien) Hardware zu zwingen. Das geschieht u. a. dadurch, dass die VoIP-Konfigurationsdaten geheimgehalten werden. Zwar gelingt es gelegentlich, den Alice-Boxen durch mehr oder weniger mühsame Hacks die Konfigurationsdaten zu entlocken. Dass das aber einer bei der relativ neuen 6431 schon geschafft hat, ist mir nicht bekannt. Also heißt die Devise: Geduld haben oder selber hacken ;)

Falls die Telefon- und Faxprobleme auch dann auftreten, wenn du die Fritzbox weglässt (das Telefon also direkt an der 6431 hängt), dann könnte die Ursache darin liegen, dass du einen VoIP-basierten Anschluss hast. Es könnte sich auch um die berühmt-berüchtigten Kinderkrankheiten handeln, die speziell bei neu auf den Markt gekommenen Alice-Boxen immer wieder auftreten. In diesem Fall kannst du natürlich der Alice-Hotline eine Störung melden. Für Telefonstörungen gibt es eine kostenlose Hotline: 0800-525 13 78.

Sollte das Telefon direkt an der 6431 gut funktionieren und die Störungen nur bei Einsatz der Fritzbox auftreten, kannst du von der Alice-Hotline keine Hilfe erwarten, denn Fremdhardware wird nicht supportet.

Grüßle

Der Mikrogigant
 
ich habe nun mal probiert den java decoder für die 4421 zu benutzen um meine bin zu entschlüsseln aber leider hänge ich und komme nicht weiter.

wenn jemand eine idee hat die daten aus der o2box 6431 zu bekommen bitte ich um info.

Als info, die box scheint ein innenleben von astoria networks zu haben.

Danke liebe Forumgemeinde
 
Zuletzt bearbeitet:
bin der einzige der diese blöde box hat? ich finde einfach keinen weg an die daten zu kommen und o2/alice sagt sie geben sie nicht raus!

Brauche also euro Hilfe um irgendwie weiterzukommen.
 
Mario84 schrieb:
Brauche also euro Hilfe um irgendwie weiterzukommen.
Da brauchen wir erst mal Deine Hilfe, da Du die Box hast. Lies die Firmware aus (die gibt's nämlich auch nirgendwo als Download).

G., -#####o:
 
ok, bin für jede hilfe dankbar.

Firmware auslesen, wie?
Habe auf der Box die Möglichkeit die Konfiguration zu sichern. Dort erstellt er mir eine .bin Datei. Aber meinst du sicherlich nicht, oder?

Folgende Infos werden preisgegeben:
Gerätebezeichnung o2 Box 6431
Firmware Version 1.01.17w
 
Mario84 schrieb:
Firmware auslesen, wie?
Box aufmachen, nach einer seriellen Schnittstelle fahnden, Schnittstelle mit einem Pegelwandler adaptieren und schauen, was daran geht.
Mario84 schrieb:
Dort erstellt er mir eine .bin Datei.
Die sich bekannterweise nicht mit den derzeit verfügbaren Mitteln entschlüsseln lässt.
Mario84 schrieb:
Aber [die] meinst du sicherlich nicht ...
Nein.

G., -#####o:
 
So offen und die Schnittstelle werden wohl die 4 Pins sein, oder?

IMAG0299.jpg

Schnittstelle mit einem Pegelwandler adaptieren und schauen, was daran geht.
Bitte genauer erklären bzw. mir Hilfestellung leisten. Sorry, bin ein Newby.
 
Zuletzt bearbeitet:
Mario84 schrieb:
... die Schnittstelle werden wohl die 4 Pins sein ...
Ja. Wenn der Hersteller sich treu geblieben ist, dann gilt folgende Belegung:
Code:
1 Vcc (3,3V), markiert mit <|
2 TxD (out)
3 RxD (in)
3 Gnd (Masse, 0V)
Mario84 schrieb:
Bitte genauer erklären!
Damit meine ich in etwa das, was hier mit einem Speedport W700V "veranstaltet" wurde.

PS: Die kommenden drei Wochen bin ich mal weg.

G., -#####o:
 
Hallo Mario84, hasst Du das 6431 aufbekommen ohne den Aufkleber abzumachen?

Hintergrund ist der das ich vor dem gleichen Problem stehe, aber jetzt nicht mein "Garantie" verlieren möchte.
RS232 Kabel habe ich soweit alles da.
 
Ja habe ich, nur die zwei Schrauben lösen und mit einem Plastikrakel an den Seiten lang.

Der Aufkleber muss nicht ab, sind keine Schrauben drunter!

Berichte mal wenn du weiter gekommen bist mit dem auslesen.
Mir alles etwas zu hoch.
 
Hallo zusammen,

kann man evtl. mit einem anderm Router / Modem diese Daten auslesen? Hab das schei*** Ding heute schon fast aus dem Fenster geschmissen.

Gruß
Olli
 
hat irgendjemand erfolge zu melden wie man die daten aus der kiste bekommt?
 
Hallo,

habe auch diesen merkwürdigen Router und einige Fortschritte:
1. Man kann über die serielle Schnittstelle und brntool einen kompletten Dump machen.
2. aus dem Dump lässt sich sowohl die Firmware (offset 0x860000, 7680k), als auch die verschlüsselte Config extrahieren (offset 0x40000, 256k)
3. die firmware kann mit dem SP700EX tool gesplittet werden
4. die einzelnen Bin-Teile 1-4 lassen sich de-obfuscaten und dann mit xz entpacken (de-obfuscater hier: http://sviehb.wordpress.com/2011/09...g-an-obfuscated-firmware-image-e01-unpacking/)
5. Teil 1 enthält das Betriebssystem. Vielleicht hat hier jemand informationen, wie sich das entpacken lässt, sodass man an den config-verschlüsselcode kommt?
6. Teil 2-4 enthalten PFS-Dateisysteme/Archive, die sich wieder mit SP700EX entpacken lassen

Die Verschlüsselung der exportieren Konfiguration aus dem Web-Interface ist analog zu den easyboxen oder der o2 box 4421 verschlüsselt. Allerdings scheinen die AES-Keys unterschiedlich zu sein, daher gibt es hier noch nichts neues leider (vielleicht kann jemand den ersten Teil der Firmware mit IDA anschauen?).

Aber interessant ist, dass im ersten PFS auch alle cgi-bins der weboberfläche angegeben sind. ein interessantes cgi ist dabei /cgi-bin/config1.bin . Im Inhalt sind diverse sensible Daten vorhanden, allerdings werde ich aus dem Inhalt noch nicht ganz schlau. vielleicht kann hier jemand weiterhelfen?

Eine andere Idee wäre auch, die PFS-Archive anzupassen, und neue SSIs in die Html-Dateien zu packen. Eventuell findet sich dort eine Hintertür o.ä.?

Vielleicht hat jemand noch mehr Ideen.

Gruß
 
kannst du mal den kompletten brntool Aufruf (sprich den ganzen Befehls String) posten? python 2.7 oder 3?
 
Also habe python 2.7 benutzt aber ist egal denke ich (man braucht nur das python-serial paket). dann wäre der aufruf ganz regulär:
Code:
./brntool.py --read=dump.bin --addr=0xB0000000 --size=0x1000000
Das dauert dann ca. 2 stunden. Damit das klappt, muss selbstverständlich der debug-modus über dreimaliges drücken von space per serieller konsole beim anschalten erfolgen.

hier zur info auch noch die rom-aufteilung (kann per serieller console aus dem brnboot gezogen werden):
Code:
---------------------------------------
    Area            Address      Length
---------------------------------------
[0] Boot            0xB0000000     256K
[1] Configuration   0xB0040000     256K
[2] Certificate     0xB0080000     128K
[3] Special Area    0xB00A0000     128K    
[4] Primary Setting 0xB00C0000     128K
[5] Code Image 0    0xB00E0000    7680K
[6] Code Image 1    0xB0860000    7680K
[7] Boot Params     0xB0FE0000     128K
[8] Flash Image     0xB0000000    16384K

das code image 1 ist dabei die aktuelle firmware und code image 0 angeblich die alte. Auf jeden fall bootet die box von adresse 0xb0860000.
mit
Code:
dd if=dump.bin of=firmware.bin bs=1024 count=7680
lässt sich die firmware aus dem dump dann extrahieren. Man kann natürlich auch brntool direkt die entsprechenden Speicherbereiche übergeben, aber ein kompletter dump ist ja nicht ganz verkehrt.

Mich würde mal interessieren, ob jemand, der seine VOIP-Daten kennt beim aufruf von http://192.168.1.1/cgi-bin/config1.bin in der Datei zufällig sein passwort etc. findet. Die Config1.bin scheint nämlich die unverschlüsselte Version der konfiguration zu sein. allerdings bin ich mir dabei nicht ganz sicher. Spannend wäre auch, ob die Pin zum debuggen eines laufenden Routers (per serieller console) auch in der Datei drinne steht. da ich meine pin nicht weiß, kann ich das ebenfalls nicht bestätigen. Bei der 4421 muss man ja nach "root" suchen - den String gibt es aber leider nicht im file

gruß
 
Zuletzt bearbeitet:
So, ich hab mal ein wenig mit rumgespielt, das Zerlegen klappt ja soweit ganz prima. Ingesamt habe ich 7 Parts (Part 1-4 sind noch "obfuscated .bin" Dateien, die anderen 3 sind lzma komprimierte Dateien und werden gleich entpackt.

Vorab habe ich mal eine Frage. die Parts 2-4 sind das PFS, sehe ich das korrekt? Wenn ja, dann "decode to prog." ich alle 3 Parts einzeln, die dann im Ordner www im sp700ex Folder abgelegt werden. Was ich testen wollte ist folgendes, einfach mal eine "Hello World" html Datei erstellen und diese in der GUI verankern, dann Gesamt Image bauen und über den Recovery Kernel flashen.

Was hab ich gemacht, unter Linux kurz deobfuscate (mit der .c Datei) gebaut, alle 4 .nbin Parts entschlüsselt, die .lzma Datein parallel gesichert, eventuell braucht man die nochmal, dann die 4 .lzma Dateien (so hab ichs benannt mit xz entpackt und wieder in die Windows Umgebung damit. Dann Part 2-4 jeweils einzeln bei SP700ex eingeladen und decodieren lassen. Dann die Test Html Datei in an seinen entsprechenden Platz gesetzt und nun gehts ums Image bauen

Kommen wir jetzt zu meinen Fragen, eventuell kannst Du mir die beantworten.

1. Frage:

Über den "Encode dir..." Button wird ja nun der www Ordner wieder "gepackt" und zu einem .bin Part zusammengefügt. Woher weiß SP700ex welche einzelne Datei aus www in welche .bin Part (2, 3 oder 4) muss? Es gibt zwar die beiden Listing Dateien pfs_filelist_details.txt (hier sind explizit Speicherorte in Form von Hex Adressen hinterlegt) und pfs_filelist.txt (nur die Nennung). Order muss man ausschließlich immer nur einzeln die .bin Parts dekodieren, Änderungen dann ist das erstellte www Verzeichnisch einfügen, sofort wieder zurück encodieren und das einzeln für alle 3 machen?

2. Frage:

Sagen wir mal, ich mache die Änderungen an den PFS .bin Parts korrekt, muss ich diese _unpacked.bin bezeichneten Dateien dann via linux wieder mit xz packen (damit sie in .lzma Endung vorliegen) um sie dann, s. Frage 3, wieder zu verschlüsseln (also komplett anders herum arbeiten)?

3. Frage:

muss ich die .bin Parts nachdem ich Änderungen eingefügt habe, bevor ich das Gesamtimage baue wieder obfuscaten, sprich verschlüssen, oder würde der entsprechende Bootloader, der das beim Starten des OS eigentlich machen würde, ignorieren und ich muss es nur einmal entschlüsseln. Wenn ersteres korrekt ist, müsste man noch einen reverse-deobfuscate schreiben (kenne mich mit C nicht aus).

4. Frage:

SP700ex bietet beim bauen nur Menüpunkte für 5 Parts, ich habe aber 7. Ich denke das zusätzliche Parts wahrscheinlich über "o2_IAD_4421_FW_1.01.19_unpack_parts.bat" mit angeheftet werden können (dafür eventuell die .lzma Files 1-4), oder ist das Egal

Hintergrund der Fragerei, Nachdem ich nach trial & error eine FW Image gabaut habe, bekomme ich ein Check Fehler im Recovery Kernel, er flasht die geänderte FW nicht.
 
die Parts 2-4 sind das PFS, sehe ich das korrekt?
Denke schon

1. Frage:

Über den "Encode dir..." Button wird ja nun der www Ordner wieder "gepackt" und zu einem .bin Part zusammengefügt. Woher weiß SP700ex welche einzelne Datei aus www in welche .bin Part (2, 3 oder 4) muss? Es gibt zwar die beiden Listing Dateien pfs_filelist_details.txt (hier sind explizit Speicherorte in Form von Hex Adressen hinterlegt) und pfs_filelist.txt (nur die Nennung). Order muss man ausschließlich immer nur einzeln die .bin Parts dekodieren, Änderungen dann ist das erstellte www Verzeichnisch einfügen, sofort wieder zurück encodieren und das einzeln für alle 3 machen?
Ich denke, man muss das alles einzeln machen. Die Firmware lädt die PFS-Archive vermutlich in anderen Reihenfolgen etc.
2. Frage:

Sagen wir mal, ich mache die Änderungen an den PFS .bin Parts korrekt, muss ich diese _unpacked.bin bezeichneten Dateien dann via linux wieder mit xz packen (damit sie in .lzma Endung vorliegen) um sie dann, s. Frage 3, wieder zu verschlüsseln (also komplett anders herum arbeiten)?

3. Frage:

muss ich die .bin Parts nachdem ich Änderungen eingefügt habe, bevor ich das Gesamtimage baue wieder obfuscaten, sprich verschlüssen, oder würde der entsprechende Bootloader, der das beim Starten des OS eigentlich machen würde, ignorieren und ich muss es nur einmal entschlüsseln. Wenn ersteres korrekt ist, müsste man noch einen reverse-deobfuscate schreiben (kenne mich mit C nicht aus).
Also die Firmware kann theoretisch mehrere ZIP-Formate erkennen und verarbeiten: [ZIP] = normales (PK)Zip, [ZIP 3] = pseudoverschlüsselung, [ZIP 2] = verschlüsselung der config und [ZIP 1]=normales LZMA . Beim booten kann man schön im Log sehen:
Code:
Unzipping firmware [1(6)] at 0x80002000 ... [ZIP 3] [ZIP 1]  done
sprich erst wird die firmware pseudoentschlüsselt (siehe das c-tool) und dann per lzma entpackt. Ich würde vermuten, dass man die PFS-Archive auch "nur" LZMA-gepackt in die Firmware packen kann, da diese die Header parsed und dementsprechend Dateien dekomprimiert/"entschlüsselt". Ansonsten kann man die Verschlüsselung wie in dem C-Programm sicherlich auch invertieren. Ich kann mich da mal an ein Java-Tool machen.

4. Frage:

SP700ex bietet beim bauen nur Menüpunkte für 5 Parts, ich habe aber 7. Ich denke das zusätzliche Parts wahrscheinlich über "o2_IAD_4421_FW_1.01.19_unpack_parts.bat" mit angeheftet werden können (dafür eventuell die .lzma Files 1-4), oder ist das Egal

Hintergrund der Fragerei, Nachdem ich nach trial & error eine FW Image gabaut habe, bekomme ich ein Check Fehler im Recovery Kernel, er flasht die geänderte FW nicht.

es kann gut sein, dass alle Teile gepackt werden müssen. Ich könnte da o.g. Javaprogramm erweitern, damit man auch mehrere Teile in die Firmware packen kann.

Gruß
 

Statistik des Forums

Themen
246,140
Beiträge
2,246,777
Mitglieder
373,641
Neuestes Mitglied
Test88888
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.