Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
python-exe-unpacker — Un script auxiliar para desempaquetar y descompilar EXEs compilados a partir de código python. | Kitploit
Herramientas/GitHubGitHub/withsecurelabs/python-exe-unpacker
Análisis Dinámico (Sandboxing)Ingeniería InversaAnálisis ForenseAnálisis de MalwareAnálisis de Binarios
GitHubwithsecurelabs/python-exe-unpacker

python-exe-unpacker

Un script auxiliar para desempaquetar y descompilar EXEs compilados a partir de código python.

Ver Repositorio

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
1.0k3526hace 2 añosRevisado por Kitploit
Compartir

Autor: In Ming Loh ([email protected] - @tantaryu)
Empresa: Countercept (@countercept)
Sitio web: https://www.countercept.com

Introducción

Un script que ayuda a los investigadores a desempaquetar y descompilar ejecutables escritos en Python. Sin embargo, por ahora solo admite ejecutables creados con py2exe y pyinstaller.

Este script une varias herramientas disponibles para la comunidad. Con suerte, esto puede ayudar a las personas en su trabajo diario. Hay varias reglas YARA disponibles para determinar si el ejecutable está escrito en Python (este script también confirma si el ejecutable fue creado con py2exe o pyinstaller).

Requisitos

  • Python 2.7 o posterior.
  • Instala todas las dependencias necesarias:
    pip2 install --user -r requirements.txt
    o si prefieres instalar tus dependencias con permisos de root
    sudo pip2 install -r requirements.txt

Primeros pasos

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

    • pyinstaller
      • Se creará una carpeta con el nombre de archivo original concatenado con "_extracted". Por ejemplo: "malware.exe_extracted".
      • El archivo Python principal que contiene la lógica normalmente será el archivo sin extensión (en la carpeta concatenada con "_extracted"). En el siguiente ejemplo, "hello" es el que contiene la lógica principal de Python:

-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 tiene una opción que puede cifrar el bytecode de Python. Este script intentará descifrarlo y descompilar el código descifrado.
  • py2exe
    • El resultado del desempaquetado y descompilación se ubicará en la carpeta "unpacked" o en la ubicación que especifiques.
    • Si aparece un error como este "Error in unpacking the exe. Probably due to version incompability (exe created using python 2 and run this script with python 3)", intenta configurar tu Python a una versión diferente de la que estás usando. Ej.: "alias python=python2" o "alias python=python3"
  • python python_exe_unpack.py -p [archivo pyc]

    • En el ejemplo anterior, a veces el archivo Python que contiene la lógica principal no estará en el formato que uncompyle6 acepta (faltan los números mágicos de Python). El comando anterior antepondrá los números mágicos y lo descompilará (si el número mágico ya está antepuesto, no lo agregará y simplemente procederá con la descompilación).
  • Créditos

    • Extreme Coders por su script pyinstxtractor.py para ayudar a desempaquetar ejecutables de pyinstaller.
    • Extreme Coders por sus instrucciones sobre cómo descifrar bytecode de Python cifrado: https://0xec.blogspot.sg/2017/02/extracting-encrypted-pyinstaller.html
    • unpy2exe
    • uncompyle6
    Descargar herramienta