Siguiendo con las entradas de la implementación de un SIRP (https://red-orbita.com/?p=8726) Ahora vamos a integrar Lynis con Wazuh dado que por desgracia aun no tenemos open-scap en FreeBSD
Primero debemos instalar lynis
pkg install lynis
Configuramos en ossec script que ejecutaremos
<wodle name="command">
<disabled>no</disabled>
<tag>Audit</tag>
<command>/bin/sh /var/ossec/wodles/command/check-audit.sh</command>
<interval>1d</interval>
<ignore_output>no</ignore_output>
<run_on_start>yes</run_on_start>
<timeout>1800</timeout>
</wodle>
Creamos la carpeta
mkdir -p /var/ossec/wodles/command/
Probablemente esto se podría realizar mejor mediante decoders, para en futuras versiones intentaré realizar un decoder. Dentro del script tenemos el siguiente comando:
cat /var/ossec/bin/check-audit.sh
lynis --pentest --no-colors | sed -n '/Results ]-/,/Suggestions/p' | grep -v "Results ]-" | sed 's/\!/Lynis:/g' | grep Lynis
Reiniciamos el servicio
/var/ossec/bin/ossec-control restart
Ahora nos vamos a wazuh y agregamos las reglas en /var/ossec/etc/rules/local_rules.xml
<group name="lynis,">
<rule id="100080" level="7">
<match>Lynis</match>
<description>Lynis Results</description>
<group>process_monitor,pci_dss_10.6.1, pci_dss_2.2,</group>
</rule>
</group>
Reiniciamos el servicio de wazuh manager
/etc/init.d/wazuh-manager restart
Nos vamos a Kibana y comprobamos que haya generado las alertas
Ahora nos vamos al servidor donde se encuentra elastalert y generamos la siguiente regla
es_host: localhost
es_port: 9200
name: Security audit with Lynis
type: any
index: wazuh-alerts-3.x-*
num_events: 60
timeframe:
hours: 1
realert:
minutes: 0
filter:
- term:
rule.id: "100080"
alert: hivealerter
hive_connection:
hive_host: http://ip_thehive
hive_port: 9000
hive_apikey: <Paste API key for elastalert user here>
hive_alert_config:
title: '{rule[name]}'
type: 'external'
source: 'elastalert'
description: '{match[full_log]}'
severity: 2
tags: ['{rule[name]}', '{match[agent][name]}', 'Lynis', '{match[rule][groups]}', '{match[_id]}']
tlp: 3
status: 'New'
follow: True
hive_observable_data_mapping:
- ip: "{match[src_ip]}"
Reiniciamos el servicio
systemctl status elastalert
Ahora nos vamos a Thehive y comprobamos que nos haya generado una alerta
:wq!
Buen dia una pregunta lo que usualmente muestra lynis en cuanto a parámetros a corregir de hardening los mostrará también desde la interfaz web de Wazuh?