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.

Stellenmarkt
  1. SAP QM/MES Spezialist (m/w/d)
    Müller Service GmbH, Leppersdorf
  2. Quality Assurance (QA) Executive (m/w/d)
    Fressnapf Holding SE, Düsseldorf
Detailsuche

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.

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
Golem Akademie
  1. PostgreSQL Fundamentals
    14.-17. September 2021, online
  2. Docker & Containers - From Zero to Hero
    5.-7. Oktober 2021, online
Weitere IT-Trainings

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
 Die Param-DateiDer Inhalt der Param-Datei 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10.  


Aktuell auf der Startseite von Golem.de
Frommer Legal
Große Abmahnwelle wegen Filesharing in Deutschland

Viele Menschen suchen derzeit Hilfe bei einer Anwaltskanzlei, weil sie wegen angeblich illegalem Filesharing abgemahnt wurden.

Frommer Legal: Große Abmahnwelle wegen Filesharing in Deutschland
Artikel
  1. Ärger um Drachenlord: Dorf verhängt Allgemeinverfügung wegen umstrittenem Youtuber
    Ärger um Drachenlord
    Dorf verhängt Allgemeinverfügung wegen umstrittenem Youtuber

    Seit Jahren ist das Dorf Altschauerberg Schauplatz von Provokationen gegen den Youtuber Rainer Winkler. Jetzt sollen neue Gesetze die Ordnung wiederherstellen.

  2. Elektroautos: Neue Ladekarten sollen Schwarzladen verhindern
    Elektroautos
    Neue Ladekarten sollen Schwarzladen verhindern

    Das einfache Klonen von Ladekarten soll künftig nicht mehr möglich sein. Doch dazu müssen alle im Umlauf befindlichen Karten ausgetauscht werden.

  3. Kriminalität: Dresdnerin wegen Mordauftrag im Darknet angeklagt
    Kriminalität
    Dresdnerin wegen Mordauftrag im Darknet angeklagt

    Eine 41-Jährige aus Dresden ist angeklagt, im Darknet einen Mord in Auftrag gegeben zu haben. Für die Ermordung der neuen Freundin ihres Ex-Mannes soll sie 0,2 Bitcoin geboten haben.

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...


Folgen Sie uns
       


  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Schnäppchen • Amazon Prime Day nur noch heute • SSD (u. a. Crucial BX500 1TB SATA 64,06€) • Gaming-Laptops von Razer & MSI • Crucial 32GB Kit DDR4-4000 269,79€ • 30% auf Warehouse • Primetime bei Saturn (u. a. Switch Lite 166,24€) • Gaming-Chairs • MM Gönn dir Dienstag [Werbung]
    •  /