
Модульный фреймворк сканирования/анализа файлов
MultiScanner — это фреймворк для анализа файлов, который помогает пользователю оценивать набор файлов путем автоматического запуска набора инструментов и агрегирования результатов. Инструментами могут быть собственные скрипты на Python, веб-API, программное обеспечение, работающее на другой машине, и т. д. Инструменты интегрируются путем создания модулей, работающих в рамках MultiScanner.
Модули разработаны таким образом, чтобы их можно было быстро написать и легко включить в фреймворк. В настоящее время написанные и поддерживаемые модули связаны с анализом вредоносного ПО, но рамки фреймворка не ограничиваются этой областью. Список модулей можно посмотреть в modules/. Описания и параметры конфигурации доступны на странице Аналитические модули.
MultiScanner также поддерживает распределенный рабочий процесс для хранения образцов, анализа и просмотра отчетов. Эта функциональность включает веб-интерфейс, REST API, распределенную файловую систему (GlusterFS), распределенное хранение/поиск отчетов (Elasticsearch) и распределенное управление задачами (Celery / RabbitMQ). Подробнее см. Архитектура.
MultiScanner можно использовать как интерфейс командной строки, Python API или распределенную систему с веб-интерфейсом. Подробнее об установке и см. в документации.
Установите Python (2.7 или 3.4+), если еще не сделали этого.
Затем выполните следующие команды (заменив <file> на фактический файл, который вы хотите просканировать):
$ git clone https://github.com/mitre/multiscanner.git
$ cd multiscanner
$ sudo -HE ./install.sh
$ multiscanner init
Это создаст для вас конфигурацию по умолчанию. Проверьте config.ini, чтобы увидеть, какие модули включены. Дополнительную информацию см. в разделе Конфигурация.
Теперь вы можете просканировать файл (заменив <file> на фактический файл):
$ multiscanner <file>
Выполните следующую команду, чтобы получить список всех параметров командной строки MultiScanner:
$ multiscanner --help
Примечание: Если вы используете не дистрибутив Linux на основе RedHat или Debian, вместо запуска скрипта install.sh установите pip (если еще не сделали этого) и выполните:
$ pip install -r requirements.txt
import multiscanner
multiscanner.config_init(filepath)
output = multiscanner.multiscan(file_list)
results = multiscanner.parse_reports(output, python=True)
Установите последние версии Docker и Docker Compose, если еще не сделали этого.
$ git clone https://github.com/mitre/multiscanner.git
$ cd multiscanner
$ docker-compose up
Возможно, придется подождать, пока все службы запустятся, после чего вы сможете использовать веб-интерфейс, перейдя в браузере по адресу http://localhost:8000.
Примечание: это не следует использовать в производственной среде; это лишь ознакомление с тем, как выглядит полноценная установка. Подробнее см. здесь.
Дополнительную информацию см. в полной документации на ReadTheDocs.