Router-Rom-Datei auspacken

3588
user1863359

Weiß jemand, in welchem ​​Dateityp oder Dateisystem eine Router-Rom-Datei (vom Router-Interface heruntergeladen) normalerweise gespeichert wird? Gibt es ein Werkzeug (wir sprechen hier nicht von Archivierungswerkzeug wie zip / 7z / rar), mit dem ich die Firmware-Datei entpacken / ordnen könnte? Ich frage mich deshalb, weil ich herumspielen möchte, wahrscheinlich einige Änderungen hinzufügen und meinen Router mit der modifizierten Firmware spülen möchte. Der Router unterstützt keine benutzerdefinierten und ausgefallenen Firmwares von Drittanbietern. Daher muss ich die Lagerfirmware des Herstellers modifizieren.

-2
Dies hängt stark vom Betriebssystem des Routers und seinem Bootloader ab. Es gibt kein Standardformat unter allen Routern. LawrenceC vor 10 Jahren 2
Ja, es würde völlig von der Marke / dem Modell und der Version des Routers abhängen, und selbst wenn Sie uns diese Informationen angeben würden, sind die Chancen gering, dass jemand dies je an * diesem speziellen Router * versucht hat - insbesondere, wenn dies der Fall ist nicht einer, der traditionell mit zB OpenWRT umgeflasht werden kann. Horn OK Please vor 10 Jahren 0
Hier ist die Spezifikation des Routers, über den ich gesprochen habe: TP-LINK TD-W8951ND mit Firmware ZynOS user1863359 vor 10 Jahren 0
Sie verstehen, auch wenn Sie die Datei entpacken, es wird die kompilierte Version der Firmware sein, oder? Ramhound vor 10 Jahren 0
Ich habe keine Ahnung, aber es gibt einen Dienst (Website), mit dem Sie Ihre Rom-Datei hochladen und Informationen extrahieren können, die ich brauche, aber ich brauche etwas auf lokaler Ebene user1863359 vor 10 Jahren 0
kann mir hier jemand helfen user1863359 vor 10 Jahren 0

1 Antwort auf die Frage

2
itachi

Ein Tool namens binwalk ist ein guter Ausgangspunkt, um eine Firmware zu analysieren. Es wird eine Liste erstellt, die die Firmware-Datei enthält. Es ist auch in der Lage, identifizierte Blöcke zu extrahieren, aber ich verwende stattdessen dd .

Binwalk ist zwar sehr nützlich, aber nicht ganz genau. Ich habe Probleme mit ZynOS-Firmware und binwalk sagt, dass es sich um ein komprimiertes LZMA-Archiv handelt, aber keines der LZMA-Tools kann es entpacken. Es sieht aus wie ein großes Datenpaket ohne bekannte Dateistruktur.

Es kann eine schlechte Information für Sie sein, aber manchmal ist es nicht möglich, sie einfach auszupacken, zu ändern und erneut zu packen (wie mein Linksys, bei dem die Firmware nur eine SquashFS-Partition mit einem typischen Linux-Dateisystem ist). Ich werde weitere Nachforschungen anstellen und wenn ich etwas Interessantes finde, werde ich meinen Beitrag aktualisieren.

Sie sollten eine ähnliche Ausgabe von binwalk erhalten .

 DECIMAL HEX DESCRIPTION ------------------------------------------------------------------------------------------------------------------- 65790 0x100FE LZMA compressed data, properties: 0x7E, dictionary size: 4194304 bytes, uncompressed size: 65536 bytes 84992 0x14C00 ZynOS header, header size: 48 bytes, rom image type: ROMBIN, uncompressed size: 66696, compressed size: 16847, uncompressed checksum: 0xCB32, compressed checksum: 0xD5A5, flags: 0xE0, uncompressed checksum is valid, the binary is compressed, compressed checksum is valid, memory map table address: 0x0 85043 0x14C33 LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 66696 bytes 128002 0x1F402 GIF image data, version "89a", 200 x 50 136194 0x21402 GIF image data, version "89a", 560 x 50 328486 0x50326 Copyright string: " (c) 2001 - 2012 TP-LINK TECHNOLOGIES CO., LTD.LOGIES CO., LTD." 350208 0x55800 ZynOS header, header size: 48 bytes, rom image type: ROMBIN, uncompressed size: 5077932, compressed size: 1121804, uncompressed checksum: 0xB4F9, compressed checksum: 0x84CA, flags: 0xE0, uncompressed checksum is valid, the binary is compressed, compressed checksum is valid, memory map table address: 0x0 350259 0x55833 LZMA compressed data, properties: 0x5D, dictionary size: 8388608 bytes, uncompressed size: 5077932 bytes 

Säulen:

  1. Position in der Zieldatei (dezimal)
  2. Position in der Zieldatei (hexadezimal)
  3. Kurze Beschreibung eines Blocks
was meinst du mit "ich benutze dd"? user1863359 vor 10 Jahren 0
Vielen Dank für die Antwort. Ich habe bereits das Binwalk-Tool ausprobiert, und ich hatte die gleichen Probleme. Eigentlich bin ich mit Linux Os nicht sehr vertraut und suche nach einem Win-Tool .... Ich habe einen Onlinedienst verwendet [http://50.57.229.26/zynos.php] aber es ist jetzt nicht mehr funktionsfähig !! ... können Sie mir als letztes erklären, was Sie mit "Ich benutze dd" meinen? user1863359 vor 10 Jahren 0
"dd" ist ein allgemeines, binäres Kopierwerkzeug. Angenommen, Sie möchten die GIF-Datei extrahieren, die sich am Offset _128002_ befindet, und dann einfach eine Konsole eingeben: ** dd if = firmware.bin von = image1.gif bs = 1 überspringen = 128002 count = 8132 **. "count" -Wert ist eine Differenz zwischen Zielsegmentversatz und folgendem Segmentversatz, in diesem Fall: 136194-128002. In einigen Fällen ist die Extraktionsoption von binwalk möglicherweise die bessere Wahl. Versuchen Sie, versuchen Sie und versuchen Sie es. itachi vor 10 Jahren 0