
Testes unitários para equipes azuis auxiliarem na construção de detecções para alguns métodos comuns de pós-exploração no macOS.
Testes unitários para equipes azul (blue teams) para auxiliar na criação de detecções para alguns métodos comuns de pós-exploração no macOS. Incluí alguns exemplos de pós-exploração usando tanto o histórico da linha de comando quanto chamadas de API. Os exemplos de pós-exploração aqui incluídos não são abrangentes. Em vez disso, são apenas alguns exemplos comuns que considerei úteis para realizar testes unitários. Pretendo continuar adicionando mais testes unitários a este projeto ao longo do tempo.
Todos esses testes são executados localmente e retornam os resultados para stdout (ou seja, o Swift-Attack não se conecta a um servidor).
git clone https://github.com/cedowens/Swift-Attack && cd Swift-Attack
Certifique-se de que você tenha o swift e as ferramentas de desenvolvedor instalados (pode instalar pela Mac App Store)
Compile o calc.c para o teste de injeção dylib:
gcc -dynamiclib -o calc.dylib calc.c
swiftc -o Swift-Attack swift-attack.swift
./Swift-Attack -h

Nota: Outras dependências de TTP estão abaixo:
Você pode executar o Swift-Attack com uma única opção ou várias opções
./Swift-Attack [option1] [option2]...
Também incluí um arquivo macro.txt simples (não ofuscado) para testar relações pai-filho em torno de execuções de macros do Office no macOS. Não o ofusquei, pois o foco está na visibilidade/detecção da relação pai-filho. Se quiser testar com uma macro ofuscada, tenho um repositório em github.com/cedowens/MacC2 que contém uma macro ofuscada.
Incluí apenas dois testes de persistência (Launch Agent e Login Item). Confira o repositório Persistent JXA de Leo Pitt https://github.com/D00MFist/PersistentJXA para uma lista mais abrangente de exemplos de persistência.