← Все проекты
Проект / Python

DimaReverse/nuitka-static-unpacker: Nuitka Static Unpacker — статический анализатор для Python-бинарников Nuitka

Инструмент для извлечения констант, модулей и байт-кода из скомпилированных Python-программ без запуска.

DimaReverse/nuitka-static-unpacker — open-source проект на Python, который стоит оценить перед внедрением или доработкой.

★ 24 Python Форки 4 Issue 0 Оценка 7/10 Карточка проверена

Для кого это

Для специалистов по безопасности, аналитиков вредоносного ПО, участников CTF-соревнований и разработчиков, которые проводят аудит собственных скомпилированных приложений.

Проблема / задача

Когда вы получаете скомпилированный Python-файл (например, подозрительный исполняемый файл или задание для реверс-инжиниринга), понять, что внутри, сложно — исходный код скрыт, а ручной анализ требует времени и навыков низкоуровневого программирования.

Как это работает

Инструмент анализирует PE-структуру бинарника, находит встроенный «blob» с данными Python (константы, метаданные модулей, байт-код) и извлекает его. Для коммерческих сборок Nuitka с включённым плагином data-hiding есть экспериментальная поддержка расшифровки. Можно работать в чисто статическом режиме или переключаться в динамический через инъекцию DLL для захвата кода во время выполнения.

Что видно по README

Это Python-скрипт для статического анализа бинарников, скомпилированных компилятором Nuitka. Он извлекает встроенные константы, структуры модулей, метаданные объектов кода и .pyc файлы. Поддерживает исследовательский режим для обхода защиты коммерческой версии Nuitka. Включает утилиту для быстрого листинга модулей (за 1-2 секунды) и фильтрации перед полным декомпилированием.

Ключевые возможности

Извлечение констант и строк из бинарникаВосстановление .pyc файлов и структуры модулейЭкспериментальный обход защиты Nuitka CommercialСтатический анализ без запуска кодаОпциональный динамический режим через DLL-инъекциюГенерация JSON-отчётов для триажа

Технологии

Python 3.8+pefile для анализа PE-структурCapstone для дизассемблированияuncompyle6/decompyle3 для декомпиляцииPython

Интересный факт

Проект включает отдельный скрипт list_modules.py, который за 1-2 секунды показывает все модули внутри бинарника, не запуская полный пайплайн декомпиляции — это как «быстрый рентген» перед глубоким анализом.

С чего начать

  • Установите зависимости: pip install -r requirements.txt
  • Для onefile-исполняемых файлов сначала извлеките встроенную полезную нагрузку (см. README)

Оценка GitRadar

Удобство
7/10
Свежесть
8/10
Перспектива
7/10
Монетизация
6/10
Общая оценка
7/10

Вердикт GitRadar

Стоит пробовать, если вы работаете с Nuitka-бинарниками в контексте безопасности или реверс-инжиниринга. Это специализированный инструмент с чёткой фокусировкой, но требует понимания, как работает Nuitka и PE-формат.

Наблюдения по обновлениям

Проект активно развивается: недавно добавлен быстрый листинг модулей, фильтрация и улучшена поддержка коммерческих сборок. Автор поддерживает companion-репозитории для работы с защитой Themida/WinLicense.

Что мы проверили

Карточка собрана по данным GitHub, README и структуре репозитория. Это не официальная документация проекта.

Исходный репозиторий
https://github.com/DimaReverse/nuitka-static-unpacker
Лицензия
MIT
Создан на GitHub
23 апреля 2026 г.
Последнее обновление репо
23 апреля 2026 г.
Последняя проверка GitRadar
23 апреля 2026 г.
Изученные файлы
README.md, requirements.txt, list_modules.py, examples/basic_analysis.py, examples/batch_analysis.py

FAQ

Что это такое?

Инструмент для статического анализа Python-программ, скомпилированных компилятором Nuitka. Извлекает константы, модули и байт-код без запуска файла.

Для кого подходит?

Для аналитиков вредоносного ПО, специалистов по безопасности, участников CTF, разработчиков, которые аудитят свои скомпилированные приложения.

Источники

  • GitHub исходный код и активность
  • README описание, ссылки, стартовые материалы

Нужна помощь с DimaReverse/nuitka-static-unpacker?

Если проект подходит под ваш сценарий, можем помочь с установкой, интеграцией, доработкой или аккуратным форком под вашу инфраструктуру.