Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
python-exe-unpacker — Un script utilitaire pour dépaqueter et décompiler les EXE compilés à partir de code python. | Kitploit
Outils/GitHubGitHub/withsecurelabs/python-exe-unpacker
Analyse Dynamique (Sandboxing)Rétro-ingénierieAnalyse ForensiqueAnalyse de MalwareAnalyse de Binaires
GitHubwithsecurelabs/python-exe-unpacker

python-exe-unpacker

Un script utilitaire pour dépaqueter et décompiler les EXE compilés à partir de code python.

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
1.0k35044il y a 2 ansVérifié par Kitploit
Partager

Auteur : In Ming Loh ([email protected] - @tantaryu)
Société : Countercept (@countercept)
Site web : https://www.countercept.com

Introduction

Un script qui aide les chercheurs à dépaqueter et décompiler des exécutables écrits en python. Cependant, pour l'instant, il ne prend en charge que les exécutables créés avec py2exe et pyinstaller.

Ce script assemble plusieurs outils disponibles pour la communauté. Espérons que cela puisse aider les gens dans leur travail quotidien. Plusieurs règles YARA sont disponibles pour déterminer si l'exécutable est écrit en python (Ce script confirme également si l'exécutable est créé avec py2exe ou pyinstaller).

Prérequis

  • Python 2.7 ou ultérieur.
  • Installez toutes les dépendances nécessaires :
    pip2 install --user -r requirements.txt
    ou si vous préférez installer vos dépendances avec les droits root
    sudo pip2 install -r requirements.txt

Pour commencer

  • python python_exe_unpack.py -i [malware.exe]

    • pyinstaller
      • Un dossier sera créé avec le nom de fichier d'origine concaténé avec "_extracted". Par exemple : "malware.exe_extracted".
      • Le fichier python principal qui contient la logique sera généralement le fichier sans extension (dans le dossier concaténé avec "_extracted"). Dans l'exemple suivant, "hello" est celui qui contient la logique python principale :

-rw-rw-r-- 1 testuser testuser 70K Nov 14 13:08 bz2.pyd

-rw-rw-r-- 1 testuser testuser 993K Nov 14 13:08 _hashlib.pyd

-rw-rw-r-- 1 testuser testuser 111 Nov 14 13:08 hello

-rw-rw-r-- 1 testuser testuser 1009 Nov 14 13:08 hello.exe.manifest

-rw-rw-r-- 1 testuser testuser 1.1K Nov 14 13:08 Microsoft.VC90.CRT.manifest

-rw-rw-r-- 1 testuser testuser 220K Nov 14 13:08 msvcm90.dll

-rw-rw-r-- 1 testuser testuser 557K Nov 14 13:08 msvcp90.dll

-rw-rw-r-- 1 testuser testuser 638K Nov 14 13:08 msvcr90.dll

-rw-rw-r-- 1 testuser testuser 628K Nov 14 13:08 out00-PYZ.pyz

drwxrwxr-x 2 testuser testuser 12K Nov 14 13:08 out00-PYZ.pyz_extracted

-rw-rw-r-- 1 testuser testuser 5.2K Nov 14 13:08 pyiboot01_bootstrap

-rw-rw-r-- 1 testuser testuser 2.5K Nov 14 13:08 pyimod01_os_path

-rw-rw-r-- 1 testuser testuser 12K Nov 14 13:08 pyimod02_archive

-rw-rw-r-- 1 testuser testuser 22K Nov 14 13:08 pyimod03_importers

-rw-rw-r-- 1 testuser testuser 0 Nov 14 13:08 pyi-windows-manifest-filename hello.exe.manifest

-rw-rw-r-- 1 testuser testuser 2.6M Nov 14 13:08 python27.dll

-rw-rw-r-- 1 testuser testuser 10K Nov 14 13:08 select.pyd

-rw-rw-r-- 1 testuser testuser 234 Nov 14 13:08 struct

-rw-rw-r-- 1 testuser testuser 671K Nov 14 13:08 unicodedata.pyd

  • pyinstaller dispose d'une option qui peut chiffrer le bytecode python. Ce script essaiera de le déchiffrer et de décompiler le code déchiffré.
  • py2exe
    • Le résultat du dépaquetage et de la décompilation sera situé dans le dossier "unpacked" ou à l'emplacement que vous spécifiez.
    • Si une erreur comme celle-ci s'affiche « Error in unpacking the exe. Probably due to version incompability (exe created using python 2 and run this script with python 3) », essayez de définir votre python sur une version différente de celle que vous utilisez. Ex. : « alias python=python2 » ou « alias python=python3 »
  • python python_exe_unpack.py -p [fichier pyc]

    • Dans l'exemple ci-dessus, il arrive que le fichier python qui contient la logique principale ne soit pas dans un format accepté par uncompyle6 (numéros magiques python manquants). La commande ci-dessus ajoutera les numéros magiques en préfixe et le décompilera (Si le numéro magique est déjà ajouté en préfixe, il ne l'ajoutera pas et passera directement à la décompilation).
  • Crédits

    • Extreme Coders pour leur script pyinstxtractor.py qui aide à dépaqueter les exécutables pyinstaller.
    • Extreme Coders pour leurs instructions sur la façon de déchiffrer le bytecode python chiffré : https://0xec.blogspot.sg/2017/02/extracting-encrypted-pyinstaller.html
    • unpy2exe
    • uncompyle6
    Télécharger l’outil