Funcionamento do SNORT
Objetivo
Como sempre vemos em artigos, o pessoal sempre explica como instalar o snort,
configurar, consultar relatorios / logs, mas ainda nao vi um paper (em portugues) explicando
como o snort funciona ( como ele pega os pacotes na redes, trabalha estes e toma alguma
acao.). Tentarei nesse artigo explicar esse funcionamento, para que pessoas instalem o snort e
saibam como ele funciona. =)
O que é o Snort?
– Libcap
– Pre – Processadores
– Mecanismos de detecção (Assinaturas)
– Plugins de Saida
1 - ) Libcap ou Libpcap
O que é Broadcast ?
Sempre que uma conexao é iniciada, para localizar o host, o pacote enviado faz um
broadcast, isto é, ele envia a mensagem para todos os hosts da rede, até que o verdadeiro (o
host de destino) responda e pegue o pacote.
Na figura abaixo tem uma ilustracao que da para se ter uma nocao de como funciona.
Pronto , nossa maquina ( Sensor IDS) agora tenha uma copia do pacote que passou
pela rede. E agora, o que acontece?
Assim que o Snort captura uma copia do pacote circulado na Rede, ele manda o
pacote para os pre – processadores.
## Retirado do snort.conf
# This preprocessor performs IP defragmentation. This plugin will also detect
# arguments loads the default configuration of the preprocessor, which is a
preprocessor frag2
preprocessor stream4: detect_scans, disable_evasion_alerts
preprocessor stream4_reassemble
#Outros
#preprocessor arpspoof
#preprocessor telnet_decode
#preprocessor http_decode: 80 unicode iis_alt_unicode double_encode
A Figura abaixo mostra o fluxo do pacote apos a captura, passagem pelos pre
processadores e encaminhamento para o sistema de detecção.
Aqui podemos considerar a parte fundamental do Snort, pois aqui que as coisas irao
realmente acontecer, e dizer se é um ataque intrusivo ou um simples fluxo de rede.
Apos o encaminhamento do pacote pelos pre processadores para o sistema de
detecção, o snort compara o pacote (ja remontado e “legivel” para a comparacao com as
assinaturas) com a base de assinaturas de ataques e defini o que fazer com o pacote.
Para simplificar, mais uma figura ilustrando isso:
Ataque:
http://www.spooker.com.br/XXXX/..system32/cmd32.exe?/c%20dir%20C:\
Com isso, da pra ter uma nocao de como é importante manter a base de assinaturas
sempre atualizadas, pois de nada adianta se nao tivermos uma base atualizada.
Finalmente, apos tudo isso, se o pacote é interpretado como positivo, os plugins de
saida entram em acao.
Os plugins de saida sao ferramentas que podem ser utilizadas para gerar alertas, logs
ou para tomar algumas medidas em imediato.
A figura abaixo exemplifica a continuacao das imagens e finalizacao do tratamento
do pacote capturado.
Conclusão
Com base nisso, e agora sabendo como funciona o snort (um IDS no geral), so
digitar:
#./configure
#make
#make install
Links / Bibliografia
http://www.snort.org
Snort 2 – Sistema de detecção de Instrusos
http://www.spooker.com.br/snort-conisli/
http://pigmeet.databras.com.br/
Autor