Security Hacks: Linux & BSD
Neste artigo abordaremos alguns "Security Hacks" para sistemas Linux e *BSD, ou seja, implementações simples que irão ajudar você a melhorar a segurança de seus servidores. Vamos conhecer algumas dicas matadoras e softwares que farão a diferença nesta empreitada.
Parte 7: Linux & FreeBSD: Criando regras para seu Snort
Neste capítulo iremos verificar algumas dicas para criar algumas
regras novas para seu Snort.
Digamos que você tenha algum tráfego exclusivo que gostaria que seu Snort capturasse como um alerta, por exemplo, determinada conexão para fora de sua rede ou para dentro que o Snort por padrão não iria assumir tal tráfego como alerta.
Vamos ver um exemplo simples de como gerar tal regra. Supondo que você já tenha o Snort rodando e configurado para utilizar as regras que estão guardadas em /etc/snort/rules, vamos começar uma análise simples sobre o padrão das regras.
Aqui está a forma geral das regras:
action proto src_ip src_port direction dst_ip dst_port (options)
Vamos criar um exemplo prático. Digamos que você gostaria de coletar pacotes que chegam em seu servidor SSH porque você ficou sabendo de um suposto exploit para sua versão do daemon, poderíamos criar uma regra similar a esta:
Digamos que você tenha algum tráfego exclusivo que gostaria que seu Snort capturasse como um alerta, por exemplo, determinada conexão para fora de sua rede ou para dentro que o Snort por padrão não iria assumir tal tráfego como alerta.
Vamos ver um exemplo simples de como gerar tal regra. Supondo que você já tenha o Snort rodando e configurado para utilizar as regras que estão guardadas em /etc/snort/rules, vamos começar uma análise simples sobre o padrão das regras.
Aqui está a forma geral das regras:
action proto src_ip src_port direction dst_ip dst_port (options)
Vamos criar um exemplo prático. Digamos que você gostaria de coletar pacotes que chegam em seu servidor SSH porque você ficou sabendo de um suposto exploit para sua versão do daemon, poderíamos criar uma regra similar a esta:
/* Nosso ip fictício seria 192.168.1.1 */
activate tcp any any -> 192.168.1.1 22 (content:"/bin/bash"; activates:1; \
msg:"Possível exploração de Buffer Overflow em SSH";)
dynamic tcp any any -> 192.168.1.1 22 (activated_by:1; count:100)
activate tcp any any -> 192.168.1.1 22 (content:"/bin/bash"; activates:1; \
msg:"Possível exploração de Buffer Overflow em SSH";)
dynamic tcp any any -> 192.168.1.1 22 (activated_by:1; count:100)
Outra coisa muito interessante que devemos analisar sobre explorações overflow é a seguinte, sempre que vai haver uma exploração desse tipo remotamente, a primeira coisa que o exploit faz e enviar requisições com NOPs (0x90), então seria inteligente colocar um trigger para esse tipo de chamada:
alert tcp any any -> any any (msg:"Possível Exploit"; content:"|90|";)
Assim qualquer tráfego contendo NOPs seria identificado e possíveis tentativas de overflow seriam detectadas.
Esse capítulo foi só para o pessoal pegar gosto pela coisa, na internet tem muita documentação sobre como criar regras para Snort e não vou me ater a reinventar a roda. Portanto pesquisas se fazem necessárias.
muito bom... até o proximo