Wazuh – Pro-active response
Una parte molto importante del lavoro svolto da Wazuh è quello di reagire immediatamente all’attivazione di un alert, un livello di alert o un gruppo di regole; questa reazione viene chiamata active response.
Le active response possono essere:
- stateful: le risposte stateful sono configurate per avere effetto lungo un certo periodo di tempo, dopo il quale viene ripristinato lo stato precedente;
- stateless: sono azioni one-time che modificano in maniera permanente l’ambiente
Ad ogni reazione è associato un comando che può essere eseguito sull’agent dove l’evento si è verificato (local), su un altro agent (defined-agent), sul manager (server) o su tutti gli agent (all).
Per definire una active response all’interno del file di configurazione del Manager (/var/ossec/etc/ossec.conf):
- si definisce il comando che deve essere eseguito
- si definisce l’ active response
Un esempio di comando è il seguente
<command> <name>firewalld-drop</name> <executable>firewalld-drop.sh</executable> <expect>srcip</expect> <timeout_allowed>yes</timeout_allowed> </command>
Un esempio di definizione di active response è il seguente:
<active-response> <command>firewalld-drop</command> <location>local</location> <level>7</level> <timeout>600</timeout> </active-response>
Tale active-response viene attivato quando un alert raggiunge la soglia 7; in tale caso viene inviato un segnale all’agent (location=local) che ha attivato l’alert per eseguire il comando firewalld-drop; il blocco dell’indirizzo IP che ha generato l’alert viene bloccato per 600sec.
Wazuh ha alcuni script preconfigurati di script; per linux
Script name | Description |
---|---|
disable-account.sh | Disables an account by setting passwd-l |
firewall-drop.sh | Adds an IP to the iptables deny list |
firewalld-drop.sh | Adds an IP to the firewalld drop list |
host-deny.sh | Adds an IP to the /etc/hosts.deny file |
ip-customblock.sh | Custom OSSEC block, easily modifiable for custom response |
ipfw_mac.sh | Firewall-drop response script created for the Mac OS |
ipfw.sh | Firewall-drop response script created for ipfw |
npf.sh | Firewall-drop response script created for npf |
ossec-slack.sh | Posts modifications on Slack |
ossec-tweeter.sh | Posts modifications on Twitter |
pf.sh | Firewall-drop response script created for pf |
restart-ossec.sh | Automatically restarts Wazuh when ossec.conf has been changed |
route-null.sh | Adds an IP to null route |
Per Windows
Script name | Description |
---|---|
netsh.cmd | Blocks an ip using netsh |
restart-ossec.cmd | Restarts ossec agent |
route-null.cmd | Adds an IP to null route |
E’ possibile creare degli script personalizzati per le active response, seguendo le regole indicate in questa pagina.
Vedremo nel prossimo post come sia possibile reagire a certi eventi; ad esempio, come bloccare il tentativo di accesso RDP brute force che abbiamo visto precedentemente.