
Laboratorio di emulazione di attacchi a più fasi basato su Docker che dimostra lo sfruttamento di CVE-2017-5638 e CVE-2021-41773, movimento laterale e rilevamento tramite Suricata IDS attraverso una rete realistica di 10 container.
Un laboratorio di emulazione di attacco basato su Docker con 7 host progettato per dimostrare una kill chain multi-stadio, movimento laterale e rilevamento IDS multipunto.
Questo laboratorio simula un ambiente di rete realistico in cui un attaccante progredisce dalla ricognizione iniziale a un punto d'appoggio (foothold) e infine a un bersaglio di alto valore attraverso il pivoting. Include due istanze indipendenti di Suricata IDS che agiscono come sidecar per gli host critici, fornendo una "visione del difensore" dell'intero ciclo di vita dell'attacco.
172.28.0.0/24.web-struts) tramite iniezione OGNL nell'intestazione Content-Type.web-struts, l'attaccante lancia un secondo exploit contro un bersaglio interno.web-vuln) per ottenere accesso root.Il laboratorio è composto da 10 container in totale:
web-struts (172.28.0.11): Apache Struts 2.3.28 (Vulnerabile a S2-045).web-vuln (172.28.0.10): Apache httpd 2.4.49 (Vulnerabile a path traversal/RCE).db-mysql (172.28.0.12): Database di supporto.ssh-server (172.28.0.13): Host bersaglio legacy per punto d'appoggio.ftp-server, smb-server, dns-server: Servizi infrastrutturali per realismo.ids-suricata-struts: Monitora il namespace di rete di web-struts.ids-suricata-web: Monitora il namespace di rete di web-vuln.Esegui lo script di setup per costruire e avviare l'ambiente:
./scripts/setup.sh
Questo inizializzerà la rete, scaricherà/creerà le immagini e avvierà tutti i 10 container.
Il laboratorio fornisce uno script dispatcher per attivare diverse fasi dell'attacco.
./scripts/attack.sh full
./scripts/attack.sh recon./scripts/attack.sh struts-foothold./scripts/attack.sh struts-pivot./scripts/attack.sh directPuoi passare un comando personalizzato da eseguire sul bersaglio finale:
./scripts/attack.sh full "whoami; cat /etc/os-release"
Gli avvisi vengono scritti in file eve.json individuali per ogni istanza IDS:
./alerts/web-struts/eve.json./alerts/web-vuln/eve.jsonPuoi seguire entrambi i feed in tempo reale usando:
./scripts/tail-alerts.sh
Per arrestare e rimuovere tutti i componenti del laboratorio:
./scripts/teardown.sh