Dati da un esercizio di emulazione avversaria automatizzata BRAWL
Uno dei problemi impegnativi per i ricercatori di cybersecurity che sviluppano capacità di rilevamento e risposta è trovare un ambiente realistico in cui testare le loro ipotesi e capacità.
Il metodo più economico è testare le capacità su una piccola rete di laboratorio. Ma questo ambiente manca della scala di una rete aziendale reale e del rumore degli ambienti reali che rendono il rilevamento molto più difficile. In molti modi, l'ambiente migliore sarebbe testare su più reti aziendali con un attaccante controllato ma realistico e rumore reale da utenti, amministratori di sistema e software/dispositivi di terze parti. La sfida del test in questo ambiente è che è costoso e in alcuni scenari ad alto rischio.
BRAWL cerca di creare un compromesso creando un sistema per generare automaticamente una rete aziendale all'interno di un ambiente cloud. OpenStack è l'unico ambiente attualmente supportato, ma è progettato in modo da supportare facilmente altri ambienti cloud in futuro. BRAWL costruisce anche una rete di analisi contenente una pipeline di acquisizione ed elaborazione dei dati utilizzando LogStash e Kafka. Come parte della rete di analisi, crea un sistema di archiviazione e ricerca degli eventi utilizzando Elasticsearch e Kibana. BRAWL avvia una "Game Board" di rete aziendale con immagini Windows. Queste immagini hanno Microsoft Sysmon e altri sensori già installati e configurati per inoltrare i log nel framework di acquisizione dati.
BRAWL ha anche il concetto di bot, che possono essere Red, Blue o Gray. I bot Red sono offensivi, i bot Blue sono difensivi e i bot Gray emulano il comportamento legittimo degli utenti per fornire rumore che renda il rilevamento più difficile. Quando un utente vuole testare ipotesi di ricerca, implementa un bot BRAWL. Il bot BRAWL si registra con il Controller BRAWL, che orchestra poi le partite tra i bot BRAWL sulla Game Board.
Nota: A causa di problemi con le dimensioni dei file e le quote di GitHub, stiamo inserendo tutti i file in un file zip invece di lasciarli come testo normale nel repository git. Tutti i dati sono nel file
Questo rilascio consiste in alcuni dati di un prototipo BRAWL. Abbiamo creato una piccola rete aziendale, descritta di seguito. Abbiamo quindi eseguito una singola partita utilizzando il progetto di ricerca MITRE CALDERA come bot rosso.
CALDERA è un progetto di ricerca correlato di MITRE che automatizza l'attività di emulazione degli avversari basandosi sulle informazioni nel modello Adversarial Tactics, Techniques, and Common Knowledge (ATT&CK). Implementa una serie di tattiche e tecniche ATT&CK e utilizza un sistema di pianificazione (https://dl.acm.org/citation.cfm?id=2991111) per automatizzare l'attuazione di tali tecniche e generare un comportamento avversario post-compromissione all'interno di una rete aziendale.
Questi dati sono rilasciati sotto la Creative Commons BY License
La nostra piccola rete aziendale è una rete piatta composta da un Domain Controller (dc.brawlco.com) e 16 workstation. Ogni PC ha il nome dell'utente principale nel nome del PC (ad es. l'utente beane accede tipicamente a beane-pc). Tale utente dispone di privilegi di amministratore locale sul computer.
Tutti i PC eseguono Windows 8.1. Il Domain Controller esegue Windows Server 2012 R2.
Sui PC Windows 8, abbiamo apportato modifiche per abilitare WDigest per mantenere le password in chiaro nella memoria di LSASS utilizzando il seguente comando del registro: reg ADD HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest\ /v UseLogonCredential /t REG_DWORD /d 1 /F
Per questo esercizio, CALDERA è stato l'unico bot BRAWL partecipante. Sebbene concettualmente BRAWL possa essere utilizzato per testare una varietà di comportamenti degli aggressori e rilevamenti, molti degli sforzi di ricerca di MITRE seguono una filosofia di "assunzione di violazione". Pertanto, diamo a CALDERA un punto di partenza come amministratore locale su un computer della rete all'inizio dell'esercizio.
Inoltre, senza un bot grigio che esegua accessi su host diversi, la Game Board BRAWL è sterile dal punto di vista delle credenziali che possono essere rubate e utilizzate dai bot rossi. Per consentire il movimento laterale, il Controller BRAWL utilizza psexec per creare eventi di accesso su host con le credenziali di altri utenti della rete.
CALDERA ha eseguito le seguenti tecniche ATT&CK durante l'esercizio:
Ci sono cinque tipi di dati in questo repository. Ciascuno è contenuto nel proprio file nella cartella data/.
| Tipo di dato | Descrizione |
|---|---|
| game_metadata | Dati che descrivono lo scenario BRAWL |
| sysmon | Dati raccolti da Sysmon in esecuzione su ciascuna delle workstation |
| win_event | Registri eventi di Windows |
| computer_properties | Dati raccolti da script personalizzati che forniscono alcune informazioni sui computer della rete |
| bsf | Azioni dei bot rossi nel BRAWL Shared Format (BSF) |
I bot rossi e i bot blu sono incoraggiati a registrare informazioni sulle loro attività o rilevamenti nel BRAWL Shared Format (BSF). L'obiettivo è rendere più facile confrontare le azioni/detezioni del bot blu con le azioni del bot rosso.
Il formato è attualmente in fase di sviluppo e potrebbe cambiare nei futuri set di dati.
I campi per BSF sono descritti di seguito nella sezione Dettaglio delle fonti dati.
Diverse fonti di eventi in BRAWL gestiscono il tempo in modo diverso. Il tempo è o il momento in cui un evento ha raggiunto il nostro framework di acquisizione dei log, il momento in cui l'evento è stato generato sull'host/endpoint, o il tempo registrato da un bot sulla rete. In generale, questi tempi dovrebbero essere entro pochi millisecondi l'uno dall'altro. Quando possibile, il framework di acquisizione dei log utilizza il tempo dell'evento memorizzato nell'evento invece del tempo in cui l'evento raggiunge i nodi di acquisizione. La tabella seguente dettaglia il metodo utilizzato per ogni tipo di dato.