Sistemas de detecção e prevenção de intrusão

Por: André Paula
Tempo de leitura: 7 min

Usar de sistemas de detecção/prevenção de intrusão é uma boa prática em qualquer empresa: servem servem para prevenir ciberataques, monitorizar o tráfego na rede, emitir alertas de actividades potencialmente suspeitas; estes “sinais” são geralmente enviados para um sistema de gestão de eventos, o SIEM (Gerenciamento e Correlação de Eventos de Segurança). A maioria dos SIEM inclui um IDS (Sistema de Detecção de Intrusão), o que evita instalar e configurar diferentes soluções: a primeira configuração é de extrema importância devido aos falsos positivos e ter uma solução única pode ser uma mais-valia. Claro que vai depender de caso para caso e, por isso, a escolha que fizer deve adaptar-se às necessidades de cada um.

Como escolher a melhor solução?
Os dois tipos de IDS mais comuns são o HIDS (host-based intrusion detection system) e o NIDS (network intrusion detection system). O HIDS monitoriza apenas os pacotes que entram e saem de cada dispositivo, compara ficheiros para identificar alguma alteração (ou eliminação) e envia um alerta nesse sentido; contudo, requer um agente instalado em cada dispositivo.

Já o NIDS examina o trafego que está a passar na rede, o que ajuda a identificar possíveis ataques ou comportamentos “anormais”. Usar ambos permite ter uma solução mais completa de análise, detecção e prevenção, mas os requisitos de hardware para uma solução HIDS são menores e mais fáceis de configurar – há várias soluções de código aberto para este efeito, com as suas vantagens e desvantagens.

Configurar um sistema assim, em casa, não fará muito sentido para a realidade de grande parte dos utilizadores. Todavia, se tem servidores, vários computadores e serviços a comunicar com o exterior, talvez seja interessante pensar numa solução de detecção de intrusão e gestão de eventos.

Suricata e Zeek
Estas são duas soluções muito usadas, se procura um NIDS. O Suricata é uma alternativa mais completa ao já conhecido Snort, porque recolhe também dados da camada aplicacional; monitoriza actividade nos protocolos TCP e UDP, IP, ICMP e TLS; examina o tráfego em tempo real de aplicações de rede como SMB, FTP e HTTP; tem integração com outras ferramentas como o Squil e o Snorby; e usa a arquitetura de aceleração do hardware, por recorrer a diferentes processadores, podendo até funcionar, parcialmente, na placa gráfica.

O Zeek, além de ser um sistema de prevenção de intrusão, é um analisador de tráfego que dá uma maior facilidade de triagem dos metadados recolhidos e na produção e divisão de logs de maior qualidade. Como o Suricata é muito mais eficiente na monitorização do tráfego de ameaças conhecidas e na produção de alertas, quando estas são detectadas, pode haver uma vantagem se usar ambos.

Security Onion e Wazuh
O Security Onion é, basicamente, uma distribuição Linux com base em Ubuntu que traz várias ferramentas instaladas: Wazuh como HIDS, ELK (Elastic search, Logstash e Kibana), Suricata, Zeek, Stenographer, Cyberchef e Networkminer, entre outras. Se procura uma solução completa, esta é uma opção a levar em conta; o reverso da medalha, está no facto de requerer mais recursos de hardware.

O Wazuh é um HIDS que tem como base o OSSEC (open source host-based intrusion detection system) e oferece uma maior facilidade de instalação /configuração, devido à boa documentação que traz.

Kismet
Se a prevenção é importante para uma rede com fios, mais é numa wireless. Para esse efeito, uma solução muito interessante é o Kismet. Esta solução monitoriza redes sem fios, incluindo Wi-Fi e Bluetooth: se tiver ratos e teclados baseados em RF, ou uma casa inteligente com sensores Zigbee, estes serão detectados. Para capturar os pacotes de uma rede Wi-Fi, é necessário colocar o sistema em ‘Monitor mode’ ou ‘rfmon’, o que permite passar os dados para o sistema operativo. O Kismet pode ser instalado num hardware dedicado como um Raspberry Pi ou Hak 5 Wi-Fi, ficando acessível através da interface gráfica Web, na porta 2501. Como não é o programa mais intuitivo do mercado e obriga a configurar bem para ter os resultados desejados, a nossa sugestão é que veja a documentação no site oficial, que explica como fazer tudo.

Ossec
O Ossec é um HIDS bastante conhecido e usado em ambientes empresariais, por já estar no mercado desde 2008 e pela confiança que tem dado a quem usa a ferramenta. Identifica possíveis alterações suspeitas em ficheiros de sistema, detecta rootkits e malwares, entre outras ameaças. A arquitetura é de cliente-servidor e, por isso, pode ser executado com ou sem um agente; também consegue recolher logs de um syslog, por exemplo.

Em comparação com o Wazuh, a instalação e a configuração não são tão simples e a versão open source mais básica tem algumas limitações, como não ter a stack do ELK que o Wazuh já inclui. Isto facilita na centralização e visualização dos logs, mas a instalação acaba por ser mais leve, além de permitir integrar gradualmente outras ferramentas de defesa.

Conclusão
Existem outras soluções e muito mais detalhes, não só sobre cada uma das ferramentas, mas também sobre o funcionamento dos vários IDS. Mais que a escolha da ferramenta, é a sua configuração que interessa, porque leva tempo a limpar os falsos positivos que vão surgindo. Em casa uso o Wazuh e o objectivo seguinte é instalar o Suricata e o Zeek, centralizando os logs no Wazuh.

Para usar um NIDS é recomendado ter, pelo menos, duas placas de rede – por isso, em geral, é mais simples começar com um HIDS. Já testei o Security Onion 2, mas obriga a ter mais recursos de hardware, apesar de a instalação ser fácil.

Para uma análise de tráfego simples e pontual, pode usar o programa TCPDump, que analisa o tráfego e o envia para um ficheiro; depois, utilize o Zeek para o ler e dividir a informação em ficheiros mais simples.

Seguir:
Estar sempre actualizado com as novidades tecnológicas é para mim importante, em especial com tudo o que esteja relacionado com open source, linux e software livre, por isso tenho um podcast e escrevo sobre estes temas.
Exit mobile version