Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
subparse — Модульная платформа для сбора и корреляции артефактов анализа вредоносного ПО | Kitploit
Инструменты/GitHubGitHub/jstrosch/subparse
Статический анализДинамический анализ (песочница)ФорензикаСбор информацииАнализ вредоносных программРазведка угроз
GitHubjstrosch/subparse

subparse

Модульная платформа для сбора и корреляции артефактов анализа вредоносного ПО

Репозиторий
56122 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
Сайт

subparse

Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge Generic badge

Subparse — это модульная среда, разработанная Джошем Строчейном, Аароном Бейкером и Одином Бернштейном. Среда предназначена для разбора и индексации вредоносных файлов, а также для представления информации, полученной в ходе разбора, в виде поискового веб-просмотрщика. Среда является модульной: она использует ядро разбора, модули разбора и различные обогатители, которые добавляют дополнительную информацию к индексам вредоносных программ. Основными входными значениями для среды являются директории с вредоносными файлами, которые ядро разбора (или указанный пользователем модуль разбора) анализирует, после чего добавляет информацию от любых указанных пользователем модулей обогащения, а затем индексирует полученные данные в индексе Elasticsearch. Собранную информацию можно искать и просматривать через веб-просмотрщик, который также позволяет фильтровать по любому значению, полученному из любого файла. В настоящее время доступно 3 модуля разбора (по умолчанию: PEParser, OLEParser и ELFParser) и 2 модуля обогащения (ABUSEEnricher и CAPEEnricher).

 

Начало работы

Требования к программному обеспечению

Для начала работы с Subparse необходимо установить и настроить несколько обязательных/рекомендуемых программ.

Программное обеспечение

Дополнительные требования

После установки необходимого/рекомендуемого программного обеспечения на вашу систему необходимо выполнить ещё несколько шагов для установки Subparse.

Требования Python
Python требует установки некоторых дополнительных пакетов, от которых зависит Subparse. Чтобы завершить настройку Python, перейдите в каталог установки Subparse и откройте папку *parser*. Команды, которые потребуются для установки зависимостей Python:
root@kitploit:~
sudo get apt install build-essential
pip3 install -r ./requirements.txt
Требования Docker
Поскольку Subparse использует Docker для бэкенда и веб-интерфейса, перед использованием программы необходимо настроить контейнеры Docker. Для этого перейдите в корневой каталог установки Subparse и выполните следующую команду для запуска экземпляров Docker:
root@kitploit:~
docker-compose up

Примечание: Это может занять некоторое время, так как потребуется загрузить образы и настроить контейнеры, необходимые для Subparse.

 

Шаги по установке

  • Шаги по установке

Использование

Параметры командной строки

Параметры командной строки, доступные для subparse/parser/subparse.py:

Просмотр результатов

Чтобы просмотреть результаты работы модулей разбора Subparse, перейдите по адресу localhost:8080. Если у вас возникли проблемы с просмотром сайта, убедитесь, что контейнер запущен в Docker и что на порту 8080 не работает другой процесс, который может помешать доступности сайта.

 

Общая собранная информация

Перед выполнением любого модуля разбора собирается общая информация об образце независимо от типа файла. Эта информация включает:

  • MD5-хэш образца
  • SHA256-хэш образца
  • Имя образца
  • Размер образца
  • Расширение образца
  • Производное расширение образца

Модули разбора

Модули разбора выполняются ТОЛЬКО для образцов, соответствующих типу файла. Например, для PE-файлов по умолчанию будет запущен PEParser, так как тип файла соответствует тем, которые может обрабатывать PEParser.

Модули по умолчанию

ELFParser
Это модуль разбора по умолчанию, который будет запущен для ELF-файлов. Собираемая информация:
  • Общая информация
  • Заголовки программ
  • Заголовки секций
  • Примечания
  • Архитектурно-зависимые данные
  • Информация о версиях
  • Информация об исключениях Arm Unwind
  • Данные перемещения
  • Динамические теги
OLEParser
Это модуль разбора по умолчанию, который будет запущен для файлов форматов OLE и RTF. Для получения данных используется пакет OLETools. Собираемая информация:
  • Метаданные
  • MRaptor
  • RTF
  • Временные метки
  • Индикаторы
  • VBA / макросы VBA
  • OLE-объекты
PEParser
Это модуль разбора по умолчанию, который будет запущен для PE-файлов, соответствующих типам файлов: PE32 и MS-DOS. Собираемая информация:
  • Код секции и количество секций
  • Точка входа
  • Базовый образ
  • Подпись
  • Импорты
  • Экспорты

 

Модули обогащения

Эти модули являются необязательными и выполняются ТОЛЬКО при указании флага -e | --enrichers в командной строке.

Модули по умолчанию

ABUSEEnricher
Этот обогатитель использует API [Abuse.ch](https://abuse.ch/) и [Malware Bazaar](https://bazaar.abuse.ch) для сбора дополнительной информации об образцах, анализируемых Subparse. Затем информация агрегируется и сохраняется в базе данных Elastic.
CAPEEnricher
Этот обогатитель используется для взаимодействия с экземпляром песочницы CAPEv2 с целью сбора дополнительной информации об образцах путём динамического анализа. Затем информация агрегируется и сохраняется в базе данных Elastic с использованием сервиса обмена сообщениями Kafka для фоновой обработки.
STRINGEnricher
Этот обогатитель является интеллектуальным обогатителем строк, который анализирует образец на наличие потенциально интересных строк. Категории строк, которые ищет этот обогатитель, включают: аудио, изображения, исполняемые файлы, вызовы кода, сжатые файлы, документы Office, IP-адреса, IP-адрес + порт, URL веб-сайтов, аргументы командной строки.
YARAEnricher
Этот обогатитель использует предварительно скомпилированный yara-файл, расположенный по адресу: parser/src/enrichers/yara_rules. Этот предварительно скомпилированный файл включает правила из VirusTotal и YaraRulesProject.

 

Разработка собственных модулей разбора и обогащения

Веб-просмотрщик Subparse построен с использованием Bootstrap для CSS, что позволяет использовать любые встроенные CSS-стили Bootstrap при разработке собственных Vue.js-файлов для модулей разбора/обогащения. Мы также предоставили пример для каждого типа, чтобы помочь начать разработку, и реализовали несколько собственных виджетов для упрощения процесса разработки и стандартизации отображения информации. Все Vue.js-файлы используются для динамического отображения информации из пользовательского модуля разбора/обогащения и служат шаблонами для данных.

Примечание: Необходимо строго соблюдать соглашения об именовании как классов, так и файлов — это первое, что следует проверить, если у вас возникли проблемы с запуском пользовательского модуля разбора/обогащения. Имя вашего модуля разбора/обогащения должно совпадать во всех файлах и именах классов.

  • Разработка на Python
  • Разработка на Vue
  • Вспомогательные модули Vue


Логирование

Объект logger — это singleton-реализация стандартного логгера Python. Подробное описание использования см. в официальной документации. Для Subparse мы рекомендуем использовать только следующие уровни логирования для вывода:

  • debug
  • warning
  • error
  • critical
  • exception
  • log
  • info


БЛАГОДАРНОСТИ

  • Данное исследование и все соавторы были поддержаны грантом NSA H98230-20-1-0326.
Скачать инструмент
Статус
Ссылка
DockerТребуетсяРуководство по установке
Python3.8.1ТребуетсяРуководство по установке
PyenvРекомендуетсяРуководство по установке
АргументАльтернативаОбязательныйОписание
-h--helpНетПоказывает справку
-d SAMPLES_DIR--directory SAMPLES_DIRДаКаталог образцов для разбора
-e ENRICHER_MODULES--enrichers ENRICHER_MODULESНетМодули обогащения для дополнительного разбора
-r--resetНетСбросить/удалить все данные в настроенном кластере Elasticsearch
-v--verboseНетПоказывать подробный вывод командной строки
-s--service-modeНетВключает сервисный режим, позволяющий добавлять образцы в SAMPLES_DIR во время обработки