Ein Packer ist ein Werkzeug, das eine ausführbare Datei komprimiert oder verschlüsselt und einen kleinen Stub hinzufügt, der den Originalcode beim Start im Speicher entpackt.
Wie ein Packer funktioniert
Der Packer nimmt ein Programm, komprimiert und oft verschlüsselt dessen Code und Daten und verpackt es in eine neue ausführbare Datei. Beim Start stellt der Entpack-Stub das Originalprogramm im Speicher wieder her und springt zu dessen eigentlichem Einstiegspunkt. Auf der Festplatte sieht die Datei völlig anders aus als das Original.
- Kompressions-Packer wie das quelloffene UPX verkleinern Dateien einfach.
- Protektoren wie Themida oder VMProtect ergänzen Anti-Debugging und Code-Virtualisierung, um kommerzielle Software vor Cracking zu schützen.
- Crypter sind Packer, die in kriminellen Foren gezielt verkauft werden, um Schadsoftware unerkennbar zu machen.
Warum Packer für die Sicherheit wichtig sind
Der Großteil heutiger Malware ist gepackt. Packen verbirgt Zeichenketten, Importe und Codemuster, nach denen Virensignaturen suchen, und jeder neue Build kann einzigartig aussehen. Sicherheitsteams werten Packen daher als Warnsignal: hohe Entropie in Dateisektionen, sehr wenige importierte Funktionen oder ungewöhnliche Sektionsnamen sind typische Indikatoren. Statische Analyse allein scheitert oft, daher entpacken Analysten Proben in Sandboxes, per Speicherabbild und mit Debuggern. Allerdings nutzt auch legitime Software Packer – eine gepackte Datei ist nicht automatisch bösartig.
Empfehlungen
- Setzen Sie Endpoint-Schutz mit Verhaltens- und Speicheranalyse ein, nicht nur Dateisignaturen.
- Behandeln Sie gepackte Programme aus unbekannten Quellen als Hochrisiko und analysieren Sie sie in einer Sandbox.
- Softwarehersteller sollten gepackte Dateien signieren, damit sie sich von Malware unterscheiden lassen.