Статья DFIRTrack - Анализ и форензика систем

Vander

Vander

CodebyTeam
Gold Team
16.01.2016
1 454
4 301
Приветствую гостей и участников портала Codeby.net.

В этой статье, я хочу описать и подробно рассказать о работе инструмента для форензики систем – DFIRTrack.

1548186773219.png


DFIRTrack (приложение для цифровой криминалистики и отслеживания инцидентов) - это веб-приложение с открытым исходным кодом, основанное на Django и использующее базу данных PostgreSQL.
В отличие от других инструментов реагирования на инциденты, которые в основном основаны на конкретных случаях и поддерживают работу CERT, SOC в повседневной работе.

DFIRTrack - ориентирован на обработку одного крупного инцидента, с большим количеством уязвимых систем. Он предназначен для использования в качестве инструмента для специальных групп реагирования на инциденты.
В отличие от прикладных программ, DFIRTrack работает системно. Он отслеживает состояние различных систем и связанных с ними задач, постоянно информируя аналитика о состоянии и количестве изменениях в системах, в любой момент на этапе расследования, вплоть до этапа исправления процесса реагирования на инциденты.

Особенности:
Одним из направлений является быстрый и надежный импорт и экспорт систем и связанной с ними информации. Цель импорта систем - обеспечить быструю и безошибочную процедуру. Кроме того, цель экспорта систем и их статуса состоит в том, чтобы иметь несколько экземпляров документации.
  • Importer
1. Creator (быстрое создание нескольких связанных экземпляров через веб-интерфейс) для систем и задач.
2. CSV (простой и общий импорт на основе CSV (либо имя хоста и IP, либо имя хоста и теги в сочетании с веб-формой) должен соответствовать возможностям экспорта многих инструментов).
3. Разница для записей (одна запись на систему (отчет)).
  • Exporter
1. Разница для системных отчетов (для использования в структуре MkDocs).
2. Электронные таблицы (CSV и XLS).
3. LaTeX (планируется).

Зависимости:
  • django (2.0);
  • django_q;
  • djangorestframework;
  • gunicorn;
  • postgresql;
  • psycopg2-binary;
  • python3-pip;
  • PyYAML;
  • requests;
  • virtualenv;
  • xlwt.
Установка:

Мне больше всего импонирует использование данного инструмента с помощью Docker.

Для успешного выполнения установки, у вас должен быть установлен и настроен пакет Docker, на вашей рабочей ОС.

В этом проекте предусмотрена экспериментальная среда Docker Compose для локального использования.

Как docker может управлять отдельно взятым контейнером, так docker-compose помогает управлять не просто одним, а всеми контейнерами, которые составляют распределенное приложение. Причём, не только контейнерами, но и сетями, подключёнными папками и всеми связанными с этим настройками.

Установим её:

Код:
pip install docker-compose
1548187025978.png


Еще, необходимо установить пакет python-backports.ssl-match-machine:

Код:
apt install python-backports.ssl-match-machine
1548187052313.png


Скопируем каталог проекта, со страницы разработчика на Github:

Код:
git clone https://github.com/stuhli/dfirtrack
1548187090701.png


Запустите следующую команду в корневом каталоге проекта, чтобы запустить среду:

Код:
docker-compose up
1548187137442.png


После успешной установки среды, проверим список контейнеров:

Код:
docker images
1548187168227.png


Как видно, добавилось два контейнера. Теперь, можно запускать окружение:

Код:
docker-compose up
1548187197364.png


Запустим скрипт, для генерации пароля пользователю admin:

Код:
docker/setup_admin.sh
1548187220642.png


Обращаемся к DFIRTrack по адресу:

Код:
localhost:8000
И вводим учетные данные:

1548187253861.png


После успешного входа в панель управления, мы добавляем систему для последующего анализа:

1548187263637.png


В итоге добавленная система отобразится в списке:

1548187273886.png


Выбираем тэги, для формирования задания сканирования:

1548187285740.png


В моем случае, это выглядит так:

1548187303327.png


И запускаем процесс сканирования выбранной системы, и настроенным заданием:

1548187315523.png


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

Спасибо за внимание, на этом можно закончить эту публикацию.

Специально для Codeby.net.
 
Мы в соцсетях: