
Веб-приложение, которое помогает защитникам сетей, аналитикам и исследователям в процессе сопоставления поведения злоумышленников с фреймворком MITRE ATT&CK®.

Эта работа лицензирована по лицензии Creative Commons Attribution 4.0 International.
Этот проект использует MITRE ATT&CK® — ATT&CK Terms of Use.
Это Firefox — но работает и на мобильных!

Веб-приложение, которое помогает сетевым защитникам, аналитикам и исследователям в процессе сопоставления поведения злоумышленников с фреймворком MITRE ATT&CK®.
Decider — это инструмент для помощи аналитикам в сопоставлении поведения злоумышленников с фреймворком MITRE ATT&CK. Decider упрощает создание правильных сопоставлений ATT&CK, проводя пользователей через процесс сопоставления. Он делает это, задавая серию наводящих вопросов об активности злоумышленника, чтобы помочь прийти к правильной тактике, технике или субтехнике. Decider имеет мощный функционал поиска и фильтрации, позволяющий пользователям сосредоточиться на тех частях ATT&CK, которые релевантны их анализу. Также есть функционал корзины, позволяющий экспортировать результаты в распространённые форматы, такие как таблицы и тепловые карты ATT&CK Navigator.
Примечание: MD можно просматривать прямо на GitHub, а HTML нужно скачать для локального просмотра. MD будет выглядеть немного странно, так как содержит директивы Pandoc, используемые при генерации HTML.
Decider в конечном счёте стремится упростить сопоставление с ATT&CK.
Он предлагает:
Decider не пытается заменить сайт ATT&CK — скорее, он выступает как дополнительный инструмент, который в итоге приводит вас туда. Включена только информация, помогающая сопоставлению.
(вы здесь)[Матрица > Тактика] > Техника > Субтехника

Поддерживаются булевы выражения, поиск по префиксу и стемминг.

Лучший вариант для 99% людей
git clone https://github.com/cisagov/decider.git
cd decider
cp .env.docker .env
# отредактируйте .env - задайте DB_ADMIN_PASS, DB_KIOSK_PASS, CART_ENC_KEY, APP_ADMIN_PASS
# пароли по умолчанию не предоставляются :)
cp -r default_config/. config/
sudo docker compose up
Затем перейдите по ссылке после запуска (по умолчанию: http://localhost:8001/).

Меняете config/? Просто:
sudo docker compose stop
sudo docker compose start
Однако изменение переменных в .env требует:
sudo docker compose up
это пересоздаст контейнеры с изменённым окружением.
WEB_HTTPS_ON='' -> http://WEB_IP:WEB_PORT/WEB_HTTPS_ON='anything' -> https://WEB_IP:WEB_PORT/Руководство по установке на Ubuntu
Руководство по установке на CentOS
pip install -r requirements-pre.txt
pip install -r requirements.txt
pip install -r requirements-dev.txt
pre-commit install
Прочтите руководства для Ubuntu и CentOS и воспроизведите действия в соответствии с вашей платформой.
open() в Python использует системную кодировку текста по умолчанию.
utf-8 на macOS и Linuxwindows-1252 на Windows
encoding='utf-8' в качестве аргумента в каждом open() возможно позволит развернуть на Windows(По крайней мере пользователи M1) Убедитесь, что (1) установили Postgres перед (2, 3) установкой pip зависимостей.
brew install postgresqlpip install -r requirements-pre.txtpip install -r requirements.txtпо состоянию на 24 апреля 2023 г.
Точные требуемые версии не указаны.
docker compose должен работать, тогда как docker-compose устарел.Decider ещё не тестировался при большом количестве одновременных пользователей (это скоро изменится).
Но он чрезвычайно лёгкий — потребляет около 250 МБ ОЗУ в сумме для обоих контейнеров (docker stats).
Пик нагрузки приходится на процесс сборки, когда источники загружаются в ОЗУ, достигая примерно 375 МБ.
JSON-файлы в default_config/build_sources/enterprise-attack взяты из https://github.com/mitre-attack/attack-stix-data/tree/master/enterprise-attack
© 2023 The MITRE Corporation. Эта работа воспроизведена и распространена с разрешения The MITRE Corporation.
# (в корне репозитория)
# pull контент v13
git pull
# удалить контейнеры (данные БД в безопасности)
sudo docker compose down
# пересобрать образы (копирование файлов v13)
sudo docker compose up --build
# добавить версию
sudo docker exec decider-web python -m app.utils.db.actions.add_version --config DefaultConfig --version v13.0
# (корень установки, он же корень репозитория, содержит папку app/)
cd /opt/decider/1.0.0
# используйте пользователя decider, с app venv, для скрипта add_version
sudo -u decider -g decider /opt/decider/python3.8.10/bin/python3.8 -m app.utils.db.actions.add_version --config DefaultConfig --version v13.0