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

Themenstart

muhviehstah 23. Nov 2016

wäre binwalk hierbei nicht hilfreich gewesen?

Themenstart

muhviehstah 23. Nov 2016

kt

Themenstart

Elchinator 22. Nov 2016

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

Themenstart

derdiedas 22. Nov 2016

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

Themenstart

Kommentieren



Anzeige

Stellenmarkt
  1. über Ratbacher GmbH, Raum Heidelberg
  2. Viega Holding GmbH & Co. KG, Attendorn
  3. Daimler AG, Sindelfingen
  4. AGRAVIS Raiffeisen AG, Münster


Anzeige
Spiele-Angebote
  1. (-60%) 19,99€
  2. 38,99€
  3. (-31%) 8,99€

Folgen Sie uns
       


  1. 2016

    Bundesnetzagentur sperrt fast eine Million Elektrogeräte

  2. Sopine A64

    Weiterer Bastelrechner im Speicherriegel-Format erscheint

  3. Nach MongoDB

    Erpresser räumen auch Elasticsearch-Installationen leer

  4. Landgericht Düsseldorf

    Gericht schafft Vodafones Datenautomatik ab

  5. RT2600ac

    Synologys zweiter Router bietet 802.11ac Wave 2

  6. Google

    Pixel-Lautsprecher knackt bei maximaler Lautstärke

  7. Hewlett Packard Enterprise

    Fusion von HPE und CSC bringt Konzernteile zurück

  8. Autonomes Fahren

    Laserscanner für den Massenmarkt kommen

  9. Demis Hassabis

    Dieser Mann will die ultimative KI entwickeln

  10. Apple

    MacOS 10.12.3 warnt vor hohem Display-Energiebedarf



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
GPD Win im Test: Crysis in der Hosentasche
GPD Win im Test
Crysis in der Hosentasche
  1. Essential Android-Erfinder Rubin will neues Smartphone entwickeln
  2. Google Maps Google integriert Uber in Karten-App
  3. Tastaturhülle Canopy hält Magic Keyboard und iPad zum Arbeiten zusammen

Tado im Test: Heizkörperthermostate mit effizientem Stalker-Modus
Tado im Test
Heizkörperthermostate mit effizientem Stalker-Modus
  1. Focalcrest Mixtile Hub soll inkompatible Produkte in Homekit einbinden
  2. Airbot LG stellt Roboter für Flughäfen vor
  3. Smarte Lautsprecher Die Stimme ist das Interface der Zukunft

Routertest: Der nicht ganz so schnelle Linksys WRT3200ACM
Routertest
Der nicht ganz so schnelle Linksys WRT3200ACM
  1. Norton Core Symantec bietet sicheren Router mit Kreditkartenpflicht
  2. Routerfreiheit bei Vodafone Der Kampf um die eigene Telefonnummer
  3. Router-Schwachstellen 100.000 Kunden in Großbritannien von Störungen betroffen

  1. Re: Mit einem solchen Programm hat der Staat die...

    KrasnodarLevita... | 11:49

  2. Re: Wehret den Anfängen!

    daarkside | 11:47

  3. Re: Kunst kommt von Können

    schily | 11:47

  4. Re: Wie verkaufen sich die Dinger eigentlich?

    Seroy | 11:45

  5. Re: Pessimismus der Konkurrenz macht SpaceX...

    oxybenzol | 11:42


  1. 11:44

  2. 11:40

  3. 11:30

  4. 11:16

  5. 10:55

  6. 10:46

  7. 10:36

  8. 10:00


  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