Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
python-exe-unpacker — Um script auxiliar para descompactar e descompilar EXEs compilados a partir de código python. | Kitploit
Ferramentas/GitHubGitHub/withsecurelabs/python-exe-unpacker
Análise Dinâmica (Sandboxing)Engenharia ReversaAnálise ForenseAnálise de MalwareAnálise de Binários
GitHubwithsecurelabs/python-exe-unpacker

python-exe-unpacker

Um script auxiliar para descompactar e descompilar EXEs compilados a partir de código python.

Ver Repositório

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
1.0k35044há 2 anosRevisado pelo Kitploit
Compartilhar

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

Introdução

Um script que ajuda pesquisadores a descompactar e descompilar executáveis escritos em Python. No entanto, atualmente ele só suporta executáveis criados com py2exe e pyinstaller.

Este script integra várias ferramentas disponíveis para a comunidade. Esperamos que isso possa ajudar as pessoas no seu trabalho diário. Várias regras YARA estão disponíveis para determinar se o executável foi escrito em Python (este script também confirma se o executável foi criado com py2exe ou pyinstaller).

Requisitos

  • Python 2.7 ou posterior.
  • Instale todas as dependências necessárias:
    pip2 install --user -r requirements.txt
    ou, se preferir instalar as dependências com permissão de root
    sudo pip2 install -r requirements.txt

Começando

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

    • pyinstaller
      • Será criada uma pasta com o nome original do arquivo concatenado com "_extracted". Por exemplo: "malware.exe_extracted".
      • O arquivo Python principal que contém a lógica geralmente será o arquivo sem extensão (na pasta concatenada com "_extracted"). No exemplo a seguir, "hello" é o que contém a lógica principal do 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

  • O pyinstaller tem uma opção que pode criptografar o bytecode do Python. Este script tentará descriptografá-lo e descompilar o código descriptografado.
  • py2exe
    • O resultado da descompactação e descompilação estará localizado na pasta "unpacked" ou no local que você especificar.
    • Se aparecer um erro como este "Error in unpacking the exe. Probably due to version incompability (exe created using python 2 and run this script with python 3)", tente definir seu python para uma versão diferente da que você está usando. Ex.: "alias python=python2" ou "alias python=python3"
  • python python_exe_unpack.py -p [arquivo pyc]

    • No exemplo acima, às vezes o arquivo Python que contém a lógica principal não estará no formato que o uncompyle6 aceita (faltam os números mágicos do Python). O comando acima adicionará os números mágicos e o descompilará (se o número mágico já estiver presente, ele não o adicionará e apenas prosseguirá com a descompilação).
  • Créditos

    • Extreme Coders pelo script pyinstxtractor.py para ajudar a descompactar executáveis do pyinstaller.
    • Extreme Coders pelas instruções sobre como descriptografar bytecode Python criptografado: https://0xec.blogspot.sg/2017/02/extracting-encrypted-pyinstaller.html
    • unpy2exe
    • uncompyle6
    Baixar ferramenta