Installing a SIEM
/ 7 min read
Setting up and configuration of open source SIEM and XDR.
Why we need SIEM?
Primeiro contato
Assim que consegui meu primeiro emprego na área de Cibersegurança, me colocaram para trabalhar como analista de SIEM. A ferramenta já estava configurado e eu operava, acompanhando e classificando os alarmes. Um trabalho muito manual, porém que me ensinou muito.
O SIEM é uma ferramenta que recebe syslog de várias fontes e organiza dentro da sua manager, cada log representa um evento e o conjunto de eventos ou um único pode gerar um alerta na plataforma. A partir desses alarmes é possível detectar e investigar problemas de segurança.
Apesar dos alertas serem muito parecidos em sua maioria, sempre acaba acontecendo novas situações que a investigação deverá ser feita mais a fundo, investigar quem fez um acesso estranho naquele login que apareceu algum alerta e tomar decisões que você não está acostumado.
Escalando privilégio
Quando virei gerente de operações de segurança da informação, tive a liberdade de poder tomar as decisões para mudar alguns rumos e sugerir mudanças mais profundas no funcionamento do SIEM.
Como por exemplo, tinhámos o problema de sempre ultrapassar o 1tb de dados mensais que era o volume contratado de tratamento de dados na nossa subscrição.
Nessa etapa de desvendar tudo que acontece por debaixo daquela interface bonitinha, tive que descobrir de onde vem, como vem e para onde vai aquele volume gigante de informação que processa dentro de um SIEM.
Tive pessoas ao meu redor que me ajudaram muito, porém fiquei com aquela vontade de entender a fundo como funciona os pormenores de um SIEM, por que somente desta forma, será possível imaginar soluções melhores e também entender todo o real potencial que a ferramenta tem para entregar.
Wazuh - SIEM open source
Diante dessa experiência e dessa vontade de ir a fundo no funcionamento de um SIEM. Neste post vou exemplificar a instalação de um SIEM open source chamado Wazuh.
Para também aprender outras áreas enquanto desenvolvemos o nosso SIEM, utilizaremos máquina na nuvem, integração de API com o slack, mudanças nas configurações dos alarmes e instalação do agente nos endpoints.
Vale ressaltar que todos os SIEM trabalham de forma muito parecida, sempre tem um coletor de syslogs e as regras para geração dos alertas. Geralmente o SIEM vem com várias regras pré estipuladas que atendem a inúmeros CVE’s conhecidos, porém o gestor da ferramenta deve fazer o ajuste adequado para melhor atender a sua realidade.
Cloud Hosting our SIEM
A máquina virtual em nuvem para o nosso SIEM, conta com a facilidade de manter o ambiente online 24hrs por quanto tempo desejar, além de que para nós o investimento vai ser bem baixo. O Wazuh também poderia ser instalado em Docker ou localmente.
Na plataforma da Akamai, temos a facilidade de já possuir a imagem do Wazuh dentro das opções de instalação na hora de criar a máquina virtual, por exemplo, escolhi que seria Ubuntu e quando eu fiz o deploy da máquina ele já correu com as linhas de comando para fazer a instalação do Wazuh, como podemos ver no comando htop
.
Finalizando as tarefas de instalação do nosso SIEM, no diretório do root possui um arquivo chamado deployment_secrets.txt
que possui os logins e senhas, utilizando o cat
no arquivo txt para lermos as credenciais e acessar a dashboard.
DNS do nosso SIEM
Tendo em mãos as credenciais, pegaremos o DNS no site do cloud computing que subimos a nossa máquina virtual e depois fazemos o login na dashboard do Wazuh.
Com o DNS em mãos e as credenciais, podemos logar na ferramenta que ela já está funcionando!
Instalando a ferramenta nos endpoints
Agora que a manager já está funcionando e conseguimos acessar a dashboard, vamos fazer a instalação do agente nos endpoints, no caso, vou fazer a instalação na minha máquina e também em uma máquina virtual Linux que eu tenho, para efeito didático.
A instalação do endpoint pelo Wazuh é muito intuitiva, a dashboard vai te perguntar o sistema operacional, a versão e no final vai te dar uma linha de comando para ser utilizada.
Só copiar e colar no terminal que a instalação está completa, podendo ser tanto para Windows como para Linux, o processo é o mesmo.
Endpoints and information
Após este processo, o endpoint já aparecerá na plataforma e um scan será feito, informando todas as vulnerabilidades existentes naquele endpoint.
Quando eu fui instalar a ferramenta no Kali Linux, durante as configurações copiei o endereçamento direto da URL e coloquei o HTTPS junto no nome e isso quebra a instalação. Sendo necessário fazer a alteração utilizando o comando sudo nano /var/ossec/etc/ossec.conf
, informação que consegui neste link here.
Agora temos dois endpoints com o agente instalando e enviando informação para a nossa dashboard, abrindo a área do OpenSearch podemos visualizar e avaliar os logs gerados pelas máquinas. A plataforma disponibiliza formas muito interessante de filtro para encontrar a informação que está buscando.
Vulnerabilities configuration
Por padrão não vem habilitada a aba vulnerabilidades nas máquinas que o agente foi instalado, para isto é necessário ir em configurações para habilitar essa funcionalidade.
Dentro da máquina que você deseja habilitar a aba vulnerabilidades, tu deve ir em configurações e depois edit configuration.
Nesta parte você pode habilitar ou desabilitar tudo que desejar da console, como por exemplo e-mail notification, intervalo de um scan específico etc.
Simplesmente vamos trocar o no por yes nessa parte da configuração, salvar e apertar em restart manager.
Agora a aba na console está habilitada e scanneando a máquina, no meu caso, não aparecerá nenhum alerta, pois não tenho praticamente nada instalado neste meu laboratório, porém se você possui aplicativos instalados que possuam CVEs, irá apontar a vulnerabilidade.
Integration with Slack
Para finalizar o setup do nosso SIEM, vamos integra-lo com o Slack, para enviar os alertas direto para ele. Para isto devemos ir no site do Slack API e criar um novo app. Depois iremos configurar para que receba os webhooks.
Depois de criar o app, vamos conectar a um canal pré-criado para receber esses alertas que no caso criei com o próprio nome do SIEM.
Voltamos a console do Wazuh e abrimos as configurações (igual feito anteriormente) e acrescentamos a integração com o hook do Slack e fim, após isso todos os alertas de segurança irão aparecer no Slack também.
Conclusion
A intenção de fazer a instalação em máquina virtual na nuvem é para conseguir a cada dia dominar mais este assunto, pois é uma economia e uma facilidade muito grande a utilização de IaaS. A utilização da Akamai foi muito fácil e a integração que eles possuem com o Wazuh ajudou e acelerou muito o processo.
Também fizemos a instalação do agente do SIEM em uma máquina física windows e em uma máquina virtual linux. Escolhendo o sistema operacional e a sua versão, o Wazuh gera automaticamente a instalação por linha de comando. Se o ambiente for homogêneo, é possível facilmente fazer uma instalação em massa via GPO ou pelo SCCM se o ambiente for windows.
Para mim a parte de configuração foi a mais interessante e enriquecedora, pois como eu trabalho diariamente com isto, precisava ver melhor as possibilidades que tenho em mãos.
Entender o que e como eu posso pedir para a manager fazer algo para mim, que seja uma configuração que vai facilitar o meu dia a dia ou alguma configuração que estava fazendo o ambiente ser menos seguro. Dominar e entender tudo que a manager está coletando e quais são as suas regras é de uma importância enorme.
No final da implantação, criar um aplicativo Slack e fizemos a integração com o Wazuh. Isto foi muito interessante para demonstrar uma possibilidade de muitas que se tem dentro dessa ferramenta.
Muito obrigado por ter lido até aqui e qualquer dúvida, sinta-se a vontade para entrar em contato comigo! Terei o maior prazer em lhe ajudar se vocÊ desejar subir um SIEM no seu laboratório em casa! A seguir alguns dashboards da ferramenta para amostragem!