SÉRIE SIEM WAZUH
Na última edição da série SIEM, discutimos EFK (Elasticsearch, Fluentd e Kibana), que incluiu uma visão geral da pilha de tecnologia antes de mergulhar em uma prática prática. Como lembrete, esta série de blogs não tem a intenção de substituir o treinamento de cursos, mas sim de apresentar ao público o que está envolvido com SIEM e explicar como funciona em um nível básico. Além disso, eu também queria ajudar os usuários a criar ambientes de sandbox fáceis onde possam praticar enquanto aprendem.
O que é Wazuh?
Wazuh é uma plataforma SIEM (Gerenciamento de Informações e Eventos de Segurança) e XDR (Detecção e Resposta Estendida) completa e de código aberto. Foi criada como um fork do Ossec em 2015 e tinha a intenção de modernizar e estender as capacidades deste último. Seu objetivo é se tornar uma solução unificada de monitoramento de segurança.
Ele tentou abordar algumas das complexidades que testemunhamos no ELK e facilitar a criação do seu próprio sistema de monitoramento.
Componentes Principais do Wazuh
Wazuh é uma poderosa plataforma de segurança de código aberto que integra detecção de ameaças, monitoramento de integridade, resposta a incidentes e gerenciamento de conformidade. Sua arquitetura é modular, composta por vários componentes-chave:
- Agente Wazuh: Instalado em endpoints (servidores, VMs, contêineres), o agente coleta dados de segurança, como logs, alterações de integridade de arquivos e inventário do sistema. O Wazuh também suporta monitoramento sem agente via Syslog, SSH ou APIs para dispositivos como firewalls e roteadores.
- Servidor Wazuh: A unidade central de processamento da plataforma. Ele recebe dados de agentes ou fontes externas, decodifica, aplica regras e gera alertas. Também gerencia configurações de agentes e orquestra a comunicação em toda a plataforma.
- Motor de Análise: Um subsistema dentro do Servidor Wazuh que aplica regras de detecção, correlaciona eventos e identifica ameaças. Enriquecendo eventos com metadados como IDs de regras e níveis de severidade.
- Indexador Wazuh: Construído sobre OpenSearch, este componente armazena e indexa alertas e eventos. Ele permite busca rápida, filtragem e análises em grandes conjuntos de dados. O Filebeat é usado para encaminhar dados de forma segura do servidor para o indexador.
- Painel Wazuh: Uma interface baseada na web para visualizar alertas, gerenciar agentes e interagir com a plataforma. Ele se comunica com o Servidor Wazuh via uma API RESTful e suporta monitoramento em tempo real, caça a ameaças e relatórios de conformidade.
O Wazuh pode ser implantado como uma arquitetura de nó único ou multi-nó, dependendo das necessidades de escalabilidade e desempenho.
Como o Wazuh Funciona: Uma Visão Geral Passo a Passo
O processo pode ser resumido nos seguintes passos:
- O Wazuh coleta dados de endpoints usando agentes. Isso inclui logs, atividade do sistema e alterações de arquivos. Para sistemas sem agentes, os dados podem ser coletados via Syslog, SSH ou APIs.
- O servidor recebe e decodifica os dados, preparando-os para análise.
- O motor de análise aplica regras para detectar ameaças ou violações de políticas. Alertas são gerados e enriquecidos com detalhes relevantes.
- Alertas e eventos são enviados para o indexador, onde são armazenados e tornados pesquisáveis.
- O painel permite que os usuários visualizem alertas, monitorem sistemas e gerenciem configurações através de uma interface web.
Como cobrimos anteriormente nesta série, mensagens brutas de syslog não são ideais para construir painéis ou acionar alertas. Para torná-las úteis, precisamos dividi-las em dados estruturados e legíveis. Em termos simples, criar pares chave-valor claros é essencial—especialmente ao trabalhar com ferramentas de visualização como Kibana ou o Painel Wazuh.
Análise e Mais Análise
Logstash e Fluentd são motores de processamento de logs de propósito geral e são projetados para flexibilidade. No entanto, muitas vezes a flexibilidade requer complexidade. Durante nosso exemplo de análise grok, ficou evidente que essa é uma habilidade adquirida e requer tempo e esforço para ganhar expertise.
O Wazuh escolheu um caminho ligeiramente diferente e usa duas etapas para processar os logs. A primeira etapa utiliza decodificadores, enquanto a segunda usa as regras. O Wazuh tenta facilitar a análise de logs para fins de segurança, aproveitando decodificadores e regulamentos com analisadores de segurança integrados.
Em resumo, é assim que podemos comparar o que vimos com Logstash/Fluentd aos Decodificadores e Regras do Wazuh:
Aspecto | Logstash/Fluentd | Decodificadores e Regras do Wazuh |
Propósito | Processamento genérico de logs | Análise de eventos de segurança |
Capacidade pronta para uso | Pipeline vazio | Mais de 3.000 regras de segurança prontas |
Contexto de segurança | Implementação manual | Inteligência de ameaças integrada |
Extração de campos | Padrões grok genéricos | Decodificadores cientes de segurança |
Correlação | Configuração manual | Correlação automática de eventos |
Mapeamento de conformidade | Desenvolvimento personalizado | Pré-mapeado para frameworks |
Detecção de ameaças | Construir do zero | Detecção imediata de ameaças |
Tempo para valor de segurança | Semanas/mês | Horas/dias |
Tutorial de Sandbox
Assim como em nossos posts anteriores nesta série SIEM, estamos focados em aprendizado prático. Neste exercício, trabalharemos com uma máquina virtual Ubuntu para instalar o Wazuh diretamente no sistema operacional—sem Docker desta vez. Para nossa configuração de laboratório de teste, o Wazuh oferece um script de instalação conveniente que torna o processo rápido e direto.
Por favor, use este link para a seção do tutorial:
https://documentation.wazuh.com/current/quickstart.html
Instalação de Nó Único do Wazuh
1. Execute o script abaixo:
curl -sO https://packages.wazuh.com/4.12/wazuh-install.sh && sudo bash ./wazuh-install.sh -acurl -sO https://packages.wazuh.com/4.12/wazuh-install.sh
2. Quando o script terminar, anote a senha do administrador.
3. Neste ponto, você deve ser capaz de abrir um navegador e navegar até o endereço IP ou nome DNS da sua VM Wazuh. Se tudo estiver configurado corretamente, o painel Wazuh será carregado, dando acesso ao seu ambiente SIEM.
Para referência, aqui está o que eu usei: https://wazuh02
4. Faça login usando o nome de usuário admin e a senha que apareceu no seu terminal após completar o script de instalação. Uma vez logado, o Wazuh apresentará um painel rico cheio de opções para explorar.
Configurando Decodificadores e Regras para Integração Syslog Ootbi
Criamos um repositório no GitHub com decodificadores e regras simples adaptados para o encaminhamento de syslog de Object First’s Ootbi (Out-of-the-Box Immutability). Você pode baixá-los usando:
https://github.com/object1st/wazuh-examples.git
Ainda não tem Ootbi? Sem problemas. Vamos simular mensagens syslog para demonstrar como o Wazuh as processa.
Colocação de Arquivos
Em vez de modificar o local_decoder.xml e local_rules.xml padrão, recomendamos criar arquivos separados para melhor organização, especialmente se você planeja gerenciar vários tipos de eventos.
Copie os seguintes arquivos:
1. Da pasta de decodificadores:
- honeypot_application_decoders.xml
- ootbi_working_decoders.xml arquivos
Coloque-os em: /var/ossec/etc/decoders/
2. Da pasta de regras:
- honeypot_application_rules.xml
- ootbi_final_rules.xml arquivos
Coloque-os em: /var/ossec/etc/rules/
Configurando o Wazuh para Receber Mensagens Syslog
1. Certifique-se de que o Wazuh está ouvindo conexões syslog de entrada, adicionando a seguinte seção a
/var/ossec/etc/ossec.conf file under </ossec_config>
<remote>
<connection>syslog</connection>
<port>514</port>
<protocol>udp</protocol>
<allowed-ips>192.168.0.0/24</allowed-ips>
<allowed-ips>127.0.0.1</allowed-ips>
</remote>
2. Atualize allowed-ips para corresponder à sua sub-rede.
3. Reinicie o serviço do gerenciador Wazuh:
systemctl restart wazuh-manager
4. Verifique se a porta está ouvindo:
Ss -tunlp
Enviando Mensagens Syslog de Teste
Você pode enviar mensagens de teste para o Wazuh usando netcat:
echo '<14>Aug 26 19:00:00 ootbisiem OOTBI [ootbi_event@61062 Node="ootbisiem" Source="Disks" EventId="1039"] The RAID array "md0" is missing.' | nc -q0 localhost 514
echo ‘<12>1 0001-01-01T00:00:00.000000+00:00 ootbi-node1 OOTBI - - [ootbi_event@61062 Node="ootbi-node1" NodeId="A410B7E9-FF68-4ADF-B570-A964C6F45D98" DateTime="01/01/0001 00:00:00 UTC" Source="S3" EventId="6207" ProductVersion="1.7.67.10970" EDataVersion="1"] '{}' smart entity is in '{}' unconfirmed state’ | nc -q0 localhost 514
Visualizando Eventos no Painel do Wazuh
No painel do Wazuh, abra o menu no canto superior esquerdo e clique em “Explorar” e depois em “Descobrir.”
Agora você deve ver as mensagens syslog que enviou.
Importando o Painel Ootbi
1. Vá para Gerenciamento de Painéis no menu do canto superior esquerdo.
2. Em “Objetos Salvos,” clique em “Importar.”
3. Carregue o arquivo export.ndjson do seu desktop.
4. Após a importação, clique em “Explorar” e depois em “Painéis.”
5. Em seguida, clique no “Painel Ootbi.” Você verá os eventos que enviou anteriormente exibidos.
Testando o Recurso Honeypot
Como o Wazuh está funcionando como um SIEM, esta é uma ótima oportunidade para testar o novo recurso Honeypot do Ootbi.
1. Para começar, direcione seu encaminhamento syslog do Ootbi para a instalação do Wazuh.
2. Em seguida, envie uma mensagem de teste para confirmar a recepção.
3. Se o seu Honeypot estiver rodando em um IP estático (o meu, por exemplo, é 192.168.0.44), escaneie-o usando o Zenmap.
5. Você deve ver eventos acendendo no painel Ootbi e entradas correspondentes no seu painel SIEM do Wazuh.
6. Agora vamos verificar nosso SIEM:
Considerações Finais sobre a Configuração e Integração do Wazuh
Este blog serviu como uma introdução prática ao Wazuh, uma plataforma SIEM e XDR de código aberto projetada para simplificar o monitoramento de segurança e a detecção de ameaças. Exploramos sua arquitetura modular—cobrindo agentes, o servidor, motor de análise, indexador e painel—e passamos por uma instalação de nó único no Ubuntu usando o script de configuração simplificado do Wazuh. A partir daí, demonstramos como configurar decodificadores e regras para integração syslog, simular eventos e visualizá-los no painel do Wazuh.
Também mostramos como importar um painel personalizado e testar o recurso Honeypot do Ootbi, dando aos leitores uma visão prática de como o Wazuh pode ser usado em cenários do mundo real. Se você é novo em ferramentas SIEM ou está procurando uma alternativa mais focada em segurança para processadores de log tradicionais, o Wazuh oferece uma solução poderosa e acessível. Para uma exploração mais aprofundada, recomendo fortemente verificar a documentação oficial do Wazuh.