
Framework com scripts para simular mais de 50 técnicas MITRE ATT&CK para testar capacidades de detecção da equipe azul. Inclui scripts Python e um binário compilado para injeção de processos, simulação de beacon e emulação de movimento lateral.
A RTA fornece uma estrutura de scripts projetada para permitir que equipes azuis testem suas capacidades de detecção contra técnicas maliciosas, modelada após o MITRE ATT&CK.
A RTA é composta por scripts Python que geram evidências de mais de 50 diferentes táticas do ATT&CK, além de um aplicativo binário compilado que realiza atividades como timestomping de arquivos, injeções de processo e simulação de beacon conforme necessário.
Quando possível, a RTA tenta realizar a atividade maliciosa real descrita. Em outros casos, as RTAs emularão toda ou partes da atividade. Por exemplo, alguns movimentos laterais por padrão terão como alvo o host local (embora com parâmetros normalmente permitam testes em vários hosts). Em outros casos, executáveis como cmd.exe ou python.exe serão renomeados para parecer que um binário do Windows está realizando atividades não padronizadas.
Algumas das RTAs exigem ferramentas de terceiros para serem executadas corretamente. Você pode executar muitas RTAs sem ferramentas adicionais, mas para usar o conjunto completo, algumas exigirão downloads adicionais.
A tabela a seguir fornece informações sobre dependências:
| Dependência | RTAs | origem |
|---|---|---|
| Sysinternals Suite | user_dir_escalation.py, sip_provider.py, system_restore_proc.py, trust_provider.py | Microsoft |
| MsXsl | msxsl_network.py | Microsoft |
O Windows Defender ou outros produtos antivírus podem bloquear ou interferir nas RTAs durante a execução. Considere como você configura os produtos de segurança no host de teste antes de executar as RTAs com base nos objetivos dos seus testes.
Modificando common.py, você pode personalizar como os scripts RTA funcionarão no seu ambiente. Você pode até escrever uma função totalmente nova para uso em uma ou mais novas RTAs.
Para executar a RTA powershell_args.py, execute:
python powershell_args.py
Para executar um diretório inteiro de RTAs, a maneira mais fácil é usar o script-runner fornecido, "run_rta.py". Este script-runner é capaz de executar todos os scripts no subdiretório "red_ttp" e o fará por padrão:
Todos os sistemas operacionais:
python run_rta.py
Alternativamente, você pode usar um loop:
Windows:
for %f in (*.py) do python %f
Linux/Mac:
for i in (*.py); do python $i; done
Nenhuma das regras requer argumentos, mas algumas podem opcionalmente aceitar argumentos para personalização adicional da técnica.
Para ajudar com problemas comuns, consulte as seguintes perguntas frequentes:
Isso pode ocorrer se o Python 3.x estiver instalado em vez do 2.7. Observe que os pré-requisitos especificam 2.7, embora estejamos considerando uma abordagem de longo prazo usando 3.x.
Para resolver erros sobre uma dependência ausente, certifique-se de ter seguido as instruções para baixar utilitários de terceiros, como o conjunto Sysinternals, e de ter extraído esses executáveis para o subdiretório "bin".
Seu ambiente pode ter firewalls baseados em host que estão impedindo a movimentação lateral. Isso é uma excelente coisa que você não deve desabilitar em produção! Em vez disso, observe se você consegue detectar a tentativa falhada.
Quando o Windows Defender ou outros produtos antivírus detectam atividade maliciosa, às vezes bloqueiam arquivos resultando neste erro. Consulte seus logs de antivírus para ver se essa é a razão do erro.
A Endgame continuará lançando scripts nas próximas semanas e meses que correspondem a várias técnicas do MITRE ATT&CK. Se você já escreveu um script, aceitamos pull requests e teremos prazer em revisar e mesclar as adições! Contribuir para este repositório é uma ótima maneira de estender a RTA para toda a comunidade.