Unpacking — Déballage de binaires packés

Concepts Malware

Le packing

Un packer compresse/chiffre le code original et ajoute un stub qui le restaure en mémoire à l'exécution. Très utilisé par les malwares pour échapper à l'analyse statique. L'unpacking récupère le binaire original ("OEP" — Original Entry Point).

Détection & cas simple (UPX)

# Détecter le packer
die binaire ; detect-it-easy ; strings | grep UPX

# UPX : déballage trivial
upx -d packed.exe -o unpacked.exe

Unpacking manuel

# 1. Laisser le stub décompresser en mémoire
# 2. Poser un breakpoint au tail jump vers l OEP
#    (souvent un grand jmp après une boucle de décompression)
# 3. Dumper le processus à l OEP
#    x64dbg + Scylla (dump + fix IAT)
# 4. Reconstruire l Import Address Table