Winzip Selfextractor



  • Hallo!

    Ihr kennt doch bestimmt alle den WinZip Selfextractor!?
    Wenn ich nun auf eine solche EXE, die mit WinZip erstellt wurde,mit der linken Maustaste anklicke erscheint ein Button im Popupmenue "extrahieren". Wenn man darauf klickt dann entpackt WinZip die Dateien die in der EXE komprimiert enthalten sind.
    Woran erkennt WinZip oder Windows (keine Ahnung) das es sich hierbei um eine selbstextrahierende Exe handelt???
    Im Code der Exe konnte ich nichts merkwürdiges erkennen.



  • Im EXE-Header steht doch glaube ich, wie groß das Programm ist. Bei den selbstextrahierenden Dateien sind die gepackten Daten - schätze ich - einfach hinten an den Code angehängt. Man könnte überprüfen, ob die Dateigröße nicht mit der im EXE-Header angegebenen Größe übereinstimmt. Außerdem ist da sicher nach dem eigentlichen Code noch irgendeine besondere Byte-Kombination.



  • WinRar kann ja auch selbstextrahierende Zips entpacken, dowas müsste man doch auch irgendwie faken können, oder nicht?



  • Original erstellt von ratfury:
    Im Code der Exe konnte ich nichts merkwürdiges erkennen.

    Normale Exe-Dateien beginnen mit MZ, SFX-Dateien mit MZP.



  • Die Datei beginnt mit MZ! Was sind SFX Dateien?



  • SFX = Self eXtracting



  • Original erstellt von Jansen:
    Normale Exe-Dateien beginnen mit MZ, SFX-Dateien mit MZP.

    Gegenbeispiel gefunden :p (GhostView 4.3 Win32). Laut meiner Doku ist das Feld "Länge des letzten benutzen Sektors mod 512" im DOS-Header. Ich denke, auch SFX-Files müssen sich noch an die Spezifikationen halten 🙄.

    [ Dieser Beitrag wurde am 29.05.2003 um 02:27 Uhr von TriPhoenix editiert. ]



  • Ich hab mal ein bissel rumprobiert.
    Es ist ziemlich einfach einen solche Geschichte zu basteln.
    Man nimmt einfach ein Zip-Programm das auch SFX kann wie z.B. VclZip (Ist eigentlich eine Kpmponente für BCB aber wenn man das Beispiel kompiliert hat man ein nettes Zip-Programm) bei diesem Programm ist eine EXE-Datei mit dabei, die das eigentliche Extrahierungsprogramm darstellt.
    VclZip hängt die Zip Dateien nur an die EXE ran und erstellt irgendwelche Header, oder so. Wenn man nun anstatt der standard Datei eine beliebige EXE nimmt, dann wird an diese EXE die Zip Datei angehängt und WinZip und andere Programme erkennen diese EXE als selbstextrahierend!
    Die EXE ist voll lauffähig und die angehängten gepackten Dateien sind sogar extrahierbar!


Anmelden zum Antworten