Abo
  • Services:
Anzeige
Code des Bootloaders
Code des Bootloaders (Bild: Christer Weinigel)

Dateien extrahieren

Mittlerweile glaube ich, das Schema verstanden zu haben. Eine Datei besteht aus einer Kopf-Sektion, einer Datensektion und einer Fuß-Sektion. Nur die ersten 2028 Byte einer Sektion enthalten auch Daten. Jeder Datei folgt eine identische Kopie mit dem Anhang "cp" im Dateinamen sowie einer "param"- und "paramcp"-Datei.

Als fauler Programmierer schreibe ich mir natürlich ein Werkzeug, um die Extraktion zu automatisieren.

Ein Python-Programm durchläuft das Abbild und extrahiert alle Dateien, die es finden kann. Es parst die Kopf-Sektion und kopiert die Nutzdaten heraus, bis es auf eine Fuß-Sektion trifft. Zum Schluss prüft das Programm, ob die Angaben der Dateigröße im Fuß mit den extrahierten Daten übereinstimmen und dass die Daten danach alle Null sind. Die Nutzdaten werden schließlich in eine Datei geschrieben. Existiert bereits eine Datei mit diesem Namen, wird eine Zahl angehängt.

Anzeige

Nachdem ich das Programm ausgeführt habe, liegen einige Dateien in meinem Testverzeichnis. Das Unix-Programm "file" kann Dateien analysieren und das Dateiformat ermitteln. Ich lasse es über die Dateien laufen:

fp:        AIX core file fulldump 32-bit 64-bit
fpcp:      AIX core file fulldump 32-bit 64-bit
param:     data
paramcp:   data

tx:        ISO-8859 text, with CRLF line terminators
txcp:      ISO-8859 text, with CRLF line terminators
param.0:   data
paramcp.0: data

bmp:       PC bitmap, Windows 3.x format, 800 x 600 x 8
bmpcp:     PC bitmap, Windows 3.x format, 800 x 600 x 8
param.1:   data
paramcp.1: data

hz:        data
hzcp:      data
param.2:   data
paramcp.2: data

os:        data
oscp:      data
param.3:   data
paramcp.3: data

me:        Little-endian UTF-16 Unicode text, with CRLF line terminators
mecp:      Little-endian UTF-16 Unicode text, with CRLF line terminators
param.4:   data
paramcp.4: data

hlp:       Little-endian UTF-16 Unicode text, with CRLF line terminators
hlpcp:     Little-endian UTF-16 Unicode text, with CRLF line terminators
param.5:   data
paramcp.5: data

Dass es sich um die "fp"-Datei um einen FPGA-Bitstrom handelt, weiß ich, deshalb irritiert mich die "AIX core"-Aussage nicht sehr. "bmp" soll ein Bild im Windows-Bitmap-Format sein. Schauen wir es uns an:

  • Diasembler-Ausgabe (Bild: Christer Weinigel)
  • Diasembler-Ausgabe  (Bild: Christer Weinigel)
  • Diasembler-Ausgabe (Bild: Christer Weinigel)
  • FPGA-Quellcode (Bild: Christer Weinigel)
  • Owon-Bootscreen (Bild: Christer Weinigel)
Owon-Bootscreen (Bild: Christer Weinigel)

Das Boot-Logo. Schön! Und da ich das Bild laden konnte und es keine sichtbaren Störungen aufweist, kann ich sicher sein, dass mein Dateiextraktor funktioniert.

Die Datei "hz" enthält jede Menge binärer Daten. Sie ist ungefähr 3 MByte groß, vielleicht ist sie wichtig. Aber ich habe keine Idee, was sie tut.

Eine andere 3 MByte große Datei heißt "os" und enthält wahrscheinlich ARM-Maschinencode. Ausgehend vom Namen handelt es sich wohl um das Betriebssystem des Oszilloskops.

Die "me"- und "hlp"-Dateien enthalten Unicode-Text, darin befinden sich wohl die Menü-Einträge und Hilfetexte.

Danach liefert der Extraktor nur noch Unsinn. Es stehen weitere Daten im Speicherabbild, aber die "param"-Datei danach hat keine Fuß-Sektion. Nachdem ich die Kopfsektion mit der vorherigen verglichen habe, fällt mir auf, dass am Index 0x124 die Dateigröße steht und nicht mehr Nullen wie vorher. Wenn die Dateigröße im Kopf steht, dann ist der Fuß wohl nicht notwendig. Ich überarbeite mein Programm und mache weiter.

Allerdings wird es schlimmer. Die nächste Sektion ist einfach Müll. Danach gibt es weitere Kopfsektionen für Dateien namens "savewave" und mehrere Kopien von Dateien namens "table1", "tale" und "table3". Ich verändere mein Programm, um solche merkwürdigen Sektionen zu ignorieren und nach der nächsten Kopfsektion Ausschau zu halten.

Ich bin mir nicht sicher, ob der "Müll" nicht irgendetwas Wichtiges enthält. Ich hoffe, ich muss mir darum keine Gedanken machen.

 Die Param-DateiDer Inhalt der Param-Datei 

eye home zur Startseite
mifish 24. Nov 2016

+1 interessanter artikel

muhviehstah 23. Nov 2016

wäre binwalk hierbei nicht hilfreich gewesen?

muhviehstah 23. Nov 2016

kt

Elchinator 22. Nov 2016

Das wesentlichste Teil - die Hardware - scheint ja ab Werk durchaus brauchbar zu sein...

derdiedas 22. Nov 2016

Danke Golem - und nun bin ich doch wieder motiviert - zwar kein Linux zu installieren...



Anzeige

Stellenmarkt
  1. Fidor Solutions AG, München
  2. EXPERT-TÜNKERS GmbH, Lorsch
  3. über Hays AG, Hamburg
  4. Endress+Hauser Conducta GmbH+Co. KG, Waldheim (bei Dresden)


Anzeige
Blu-ray-Angebote
  1. 24,99€ (Vorbesteller-Preisgarantie)
  2. (Blu-rays, 4K UHDs, Box-Sets und Steelbooks im Angebot)
  3. 61,99€

Folgen Sie uns
       


  1. Luxuslimousine

    Jaguar XJ - die Katze wird elektrisch

  2. Umwelt

    China baut 100-Meter-Turm für die Luftreinigung

  3. Marktforschung

    Viele Android-Apps kollidieren mit kommendem EU-Datenschutz

  4. Sonic Forces

    Offenbar aktuellste Version von Denuvo geknackt

  5. KWin

    KDE beendet Funktionsentwicklung für X11

  6. Sprachassistenten

    Alexa ist Feministin

  7. Elektromobilität

    Elektroautos werden langsam beliebter in Deutschland

  8. Crypto-Bibliothek

    OpenSSL bekommt Patch-Dienstag und wird transparenter

  9. Spectre und Meltdown

    Kleine Helferlein überprüfen den Rechner

  10. Anfrage

    Senat sieht sich für WLAN im U-Bahn-Tunnel nicht zuständig



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Matthias Maurer: Ein Astronaut taucht unter
Matthias Maurer
Ein Astronaut taucht unter
  1. Rocketlab Billigrakete startet erfolgreich in Neuseeland
  2. Planetologie Forscher finden große Eisvorkommen auf dem Mars
  3. SpaceX Geheimer Satellit der US-Regierung ist startklar

Zahlungsverkehr: Das Bankkonto wird offener
Zahlungsverkehr
Das Bankkonto wird offener
  1. Gerichtsurteil Internet- und Fernsehkunden müssen bei Umzug weiterzahlen
  2. Breitbandmessung Provider halten versprochene Geschwindigkeit fast nie ein
  3. EU-Verordnung Verbraucherschützer gegen Netzsperren zum Verbraucherschutz

Indiegames-Rundschau: Krawall mit Knetmännchen und ein Mann im Fass
Indiegames-Rundschau
Krawall mit Knetmännchen und ein Mann im Fass
  1. Games 2017 Die besten Indiespiele des Jahres
  2. Indiegames-Rundschau Von Weltraumpiraten und dem Wunderdoktor

  1. Re: äußerst überraschend

    crazypsycho | 07:08

  2. Für mich als möglicher Käufer ...

    MrReset | 07:01

  3. Re: SJW müssen mal wieder den Spaß aus allem...

    Aki-San | 06:58

  4. Re: Gibt eigentlich noch neue normale offline Autos?

    chefin | 06:57

  5. Re: Alexa, wo ist das nächste Freudenhaus?

    Aki-San | 06:51


  1. 07:18

  2. 18:19

  3. 17:43

  4. 17:38

  5. 15:30

  6. 15:02

  7. 14:24

  8. 13:28


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel