
🗜️ Un packer pour fichiers exécutables Windows x86 écrit en C et en assembleur Intel x86. Le nouveau fichier après compression peut entraver la rétro-ingénierie.

PE-Packer est un packeur simple pour les fichiers Windows PE. Le nouveau fichier PE après empaquetage peut entraver le processus de rétro-ingénierie.
Il effectue les opérations suivantes lors de l'empaquetage d'un fichier PE :
Lors de l'exécution d'un fichier PE empaqueté, le shell-entry déchiffre et charge le programme original comme suit :
Avant l'empaquetage, l'utilisation d'outils de désassemblage permet de désassembler le fichier exécutable pour analyser le code, comme IDA Pro.
Désassemblage du code.

Recherche de chaînes constantes.

Analyse de la table d'importation.

Après l'empaquetage, l'analyse inverse sera entravée.
Désassemblage du code.

Recherche de chaînes constantes.

Analyse de la table d'importation.

Ce projet est juste une démo pour les débutants afin d'étudier le format PE Windows et le langage assembleur. Il présente encore des problèmes de compatibilité et des bogues qui ne peuvent pas être utilisés en pratique.
Le projet doit être configuré sur/pour Windows 32 bits et ne peut traiter que les programmes .exe 32 bits pour l'instant.
i686.PATH de ces trois outils.mkdir -p build
cd build
cmake .. -D CMAKE_C_COMPILER=gcc -G "MinGW Makefiles"
cmake --build .
Ou exécutez directement le fichier build.ps1 :
PS> .\build.ps1
Pour empaqueter un programme, vous devez spécifier son nom d'entrée et son nom de sortie.
PE-Packer <input-file> <output-file>
Par exemple :
PE-Packer hello.exe hello-pack.exe
Vous pouvez utiliser Doxygen pour générer la documentation.
Distribué sous la licence MIT. Voir LICENSE pour plus d'informations.