
Uma aplicação web que auxilia defensores de rede, analistas e pesquisadores no processo de mapear comportamentos adversários para o framework MITRE ATT&CK®.

Este trabalho está licenciado sob uma Licença Creative Commons Atribuição 4.0 Internacional.
Este projeto faz uso do MITRE ATT&CK® - Termos de Uso do ATT&CK.
Isto é Firefox - mas funciona também em dispositivos móveis!

Uma aplicação web que auxilia defensores de rede, analistas e pesquisadores no processo de mapeamento de comportamentos adversários para o MITRE ATT&CK® Framework.
O Decider é uma ferramenta para ajudar analistas a mapear o comportamento adversário para o MITRE ATT&CK Framework. O Decider facilita a criação de mapeamentos ATT&CK de forma correta, guiando os usuários pelo processo de mapeamento. Ele faz isso fazendo uma série de perguntas orientadas sobre a atividade adversária para ajudá-los a chegar à tática, técnica ou sub técnica correta. O Decider possui uma funcionalidade poderosa de pesquisa e filtragem que permite aos usuários focar nas partes do ATT&CK que são relevantes para sua análise. O Decider também possui uma funcionalidade de carrinho que permite aos usuários exportar resultados para formatos comumente usados, como tabelas e mapas de calor do ATT&CK Navigator.
Nota: O MD pode ser visualizado diretamente no GitHub, enquanto o HTML deve ser baixado para visualização local. O MD parecerá um pouco estranho - pois contém diretivas Pandoc usadas na geração do HTML.
O Decider, em última análise, tenta facilitar o mapeamento para o ATT&CK.
Ele oferece:
O Decider não pretende substituir o site do ATT&CK - mas sim atuar como uma ferramenta complementar que leva você até lá no final. Apenas informações que auxiliam no mapeamento são incluídas.
(você está aqui)[Matrix > Tática] > Técnica > Sub técnica

Expressões booleanas, correspondência de prefixo e stemming incluídos.

Melhor opção para 99% das pessoas
git clone https://github.com/cisagov/decider.git
cd decider
cp .env.docker .env
# edite .env - defina DB_ADMIN_PASS, DB_KIOSK_PASS, CART_ENC_KEY, APP_ADMIN_PASS
# nenhuma senha padrão é fornecida :)
cp -r default_config/. config/
sudo docker compose up
Em seguida, acesse o link após a inicialização (padrão: http://localhost:8001/).

Alterando config/? Basta:
sudo docker compose stop
sudo docker compose start
No entanto, alterar variáveis no .env requer
sudo docker compose up
que recriará os contêineres com ambientes modificados
WEB_HTTPS_ON='' -> http://WEB_IP:WEB_PORT/WEB_HTTPS_ON='qualquercoisa' -> https://WEB_IP:WEB_PORT/pip install -r requirements-pre.txt
pip install -r requirements.txt
pip install -r requirements-dev.txt
pre-commit install
Leia os guias do Ubuntu e CentOS e recrie as ações de acordo com sua plataforma.
open() em Python usa a codificação de texto padrão do sistema
utf-8 no macOS e Linuxwindows-1252 no Windows
encoding='utf-8' como argumento em cada open() pode permitir a implantação no Windows(Pelo menos usuários M1) Certifique-se de (1) instalar o Postgres antes de (2, 3) instalar os requisitos pip
brew install postgresqlpip install -r requirements-pre.txtpip install -r requirements.txta partir de 24 de abril de 2023
Versões exatas requeridas não especificadas.
docker compose deve funcionar, enquanto docker-compose está desatualizado.O Decider ainda não foi testado contra muitos usuários simultâneos (isso mudará em breve).
Mas é extremamente leve - consome aproximadamente 250MB de RAM total para ambos os contêineres (docker stats).
Ele atinge pico durante o processo de construção, onde as fontes são carregadas na RAM, chegando a cerca de 375MB.
Os JSONs em default_config/build_sources/enterprise-attack são obtidos de https://github.com/mitre-attack/attack-stix-data/tree/master/enterprise-attack
© 2023 The MITRE Corporation. Este trabalho é reproduzido e distribuído com permissão da The MITRE Corporation.
# (na raiz do repositório)
# puxe o conteúdo v13
git pull
# remova contêineres (dados do banco estão seguros)
sudo docker compose down
# reconstrua imagens (os arquivos v13 são copiados)
sudo docker compose up --build
# adicione a versão
sudo docker exec decider-web python -m app.utils.db.actions.add_version --config DefaultConfig --version v13.0
# (raiz de instalação, mesma que raiz do repositório, contém a pasta app/)
cd /opt/decider/1.0.0
# use o usuário decider app, com o venv app, para o script 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