Objetivo
Monitorear cambios en archivos críticos y ejecutar una respuesta activa (por ejemplo, aislar/quitar permiso o matar proceso sospechoso).
Prerrequisitos
- Wazuh Manager y al menos un agente Linux.
Pasos
- Habilitar FIM en el agente (Linux):
- Editar
/var/ossec/etc/ossec.conf
del agente:
xmlCopiarEditar<syscheck>
<frequency>3600</frequency>
<directories real_time="yes" report_changes="yes">/etc,/usr/bin</directories>
<ignore>/etc/mtab</ignore>
</syscheck>
- Reiniciar agente:
bashCopiarEditarsudo systemctl restart wazuh-agent
- Crear regla para cambios en
/etc/passwd
:
- En el manager
local_rules.xml
:
xmlCopiarEditar<group name="fim,">
<rule id="100100" level="10">
<if_group>syscheck</if_group>
<field name="file">/etc/passwd</field>
<description>Cambio crítico en /etc/passwd</description>
<mitre>
<id>T1098</id>
</mitre>
</rule>
</group>
- Reiniciar manager:
bashCopiarEditarsudo systemctl restart wazuh-manager
- Habilitar Respuesta Activa (Active Response):
- En
ossec.conf
del manager:
xmlCopiarEditar<command>
<name>kill-proc</name>
<executable>kill.sh</executable>
<timeout_allowed>yes</timeout_allowed>
</command>
<active-response>
<command>kill-proc</command>
<location>local</location>
<rules_id>100100</rules_id>
</active-response>
- Crear script
kill.sh
en/var/ossec/active-response/bin/
(ejemplo simple que mata proceso por nombre o registra evento). - Dar permisos y reiniciar.
- Probar
- Editar
/etc/passwd
en el agente (cambio controlado) y verificar alerta + ejecución dekill.sh
.
Buenas prácticas
- Mantener listas de exclusión (
<ignore>
) para evitar ruido. - Loggear acciones de respuesta en
/var/ossec/logs/active-responses.log
. - Empezar en dry-run (script que solo registra) antes de bloquear.
Deja una respuesta