Automatizando Firewall com IDS Snort e SnortSam

Snort é um sistema de detecção de intrusos (IDS), o qual usa seus sensores e um conjunto de regras para monitorar todo o tráfego da rede e gerar alertas de possíveis ameaças à segurança de seus sistemas. Com a ajuda do plugin SnortSam, será possível automatizar bloqueios de endereços IP em seu firewall.

[ Hits: 42.073 ]

Por: Vinicius Raupp Alves em 23/01/2013


Instalação do serviço SnortSam



Execute os comandos:

# wget http://www.snortsam.net/files/snortsam/snortsam-src-2.70.tar.gz
# tar zxvf snortsam-src-2.70.tar.gz
# cd snortsam
# chmod +x makesnortsam.sh
# ./makesnortsam.sh
# cp snortsam /usr/local/bin


Crie um arquivo "snortsam.conf" em /etc e adicione as seguintes linhas de configuração:

defaultkey password
accept localhost
keyinterval 30 minutes
dontblock 192.168.1.1   # rede local
rollbackhosts 50
rollbackthreshold 20 / 30 secs
rollbacksleeptime 1 minute
logfile /var/log/snort/snortsam.log
loglevel 3
daemon
nothreads
# linha importante para gerar os bloqueios via iptables
iptables eth0 LOG
bindip 127.0.0.1

Pra finalizar as configurações, escolha um arquivo de regras dentro da pasta /etc/snort/rules/ e acrescente no final da regra o parâmetro "fwsam: src, 5 minutes", onde src é o IP de origem e 5 minutes é o tempo em que o IP de origem será bloqueado.

Exemplo: Edite o arquivo "icmp-info.rules", encontre e descomente a regra com a descrição "ICMP-Info Echo Reply". Acrescente nesta regra o parâmetro "fwsam: src, 5 minutes" ao final da linha, como abaixo:

alert icmp $EXTERNAL_NET any -> $HOME_NET any (msg:"ICMP-INFO Echo Reply"; icode:0; itype:0; classtype:misc-activity; sid:408; rev:6;fwsam: src, 5 minutes;)

Testes finais

Inicie todos os serviços:

# /usr/local/snort/bin/snort -u snort -i eth0 -c /etc/snort/snort.conf -l /var/log/snort -Dq

Para depurar erros do Snort, inicie o serviço sem o parâmetro "-Dq".

# /usr/local/bin/snortsam

Para depurar erros do SnortSam, inicie o serviço snortsam-debug que se encontra na mesma pasta do pacote "snortsam-src-2.70.tar.gz" descompactado e compilado anteriormente.

Agora peça para alguém de fora de sua rede pingar para seu servidor e acompanhe via BASE os alertas gerados pelo Snort. Também é possível acompanhar os logs pra analisar os bloqueios ou possíveis erros de configuração:

# tail -f /var/log/snort/snortsam.log

Com Snort e SnortSam também é possível trabalhar de forma distribuída, você pode instalar Snort em outro local estratégico de sua rede e configurá-lo para que envie os alertas para o Daemon SnortSam em seu firewall, fazendo com que ele aplique a regra de bloqueio.

* Mas lembre-se, é possível que o Snort gere falsos positivos, então seja cauteloso ao acrescentar o parâmetro fwsam nas regras.

Referências

Snort e BASE no Debian:
Documentação do SnorSam:
Página anterior    

Páginas do artigo
   1. Introdução
   2. Instalação do Snort
   3. Instalação do MySQL e BASE
   4. Instalação do serviço SnortSam
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Dois links de ADSL em um mesmo servidor

Uso eficiente do IPCOP firewall

Firewall invisível com Proxy ARP

PFSense Firewall com Squid e SquidGuard

Metodologia de Proxy Parcial

  
Comentários
[1] Comentário enviado por danniel-lara em 23/01/2013 - 14:39h

Parabéns pelo Artigo , muito bom mesmo

[2] Comentário enviado por msantoro em 25/01/2013 - 17:16h

É possivel fazer isso com o servidor em BRIDGE ?

Abraços e parabens.

[3] Comentário enviado por viniciusraupp em 28/01/2013 - 16:23h


[2] Comentário enviado por msantoro em 25/01/2013 - 17:16h:

É possivel fazer isso com o servidor em BRIDGE ?

Abraços e parabens.


Nunca configurei desta maneira mas acredito que funcione, se for testar deixe aqui o resultado pra nós. Valew

[4] Comentário enviado por phoemur em 11/02/2013 - 15:16h

Cara, quando eu adiciono o fwsam no fim da regra o snort não consegue mais subir pois dá erro.
No meu /var/log/syslog aparece assim:

Feb 11 15:13:35 serv snort[3333]: FATAL ERROR: /etc/snort/rules/server-apache.rules(1) Unknown rule option: 'fwsam'.

Parece que o Snort não consegue entender a opção fwsam pra mandar o alerta p o snortsam.
Vc tem idéia do que possa estar acontecendo?

Uso Slackware 14.
Agradeço em antecipação.

[5] Comentário enviado por viniciusraupp em 11/02/2013 - 15:25h


[4] Comentário enviado por phoemur em 11/02/2013 - 15:16h:

Cara, quando eu adiciono o fwsam no fim da regra o snort não consegue mais subir pois dá erro.
No meu /var/log/syslog aparece assim:

Feb 11 15:13:35 serv snort[3333]: FATAL ERROR: /etc/snort/rules/server-apache.rules(1) Unknown rule option: 'fwsam'.

Parece que o Snort não consegue entender a opção fwsam pra mandar o alerta p o snortsam.
Vc tem idéia do que possa estar acontecendo?

Uso Slackware 14.
Agradeço em antecipação.


Olá, me mande a regra que você esta acrescentando o fwsam.
Se você subir o snort sem nenhuma regra, ele sobe normalmente ?

[6] Comentário enviado por phoemur em 11/02/2013 - 15:43h

Cara, já descobri o erro, o patch do snortsam que usei era de uma versão diferente do snort que estava instalado na minha máquina.
Vou recompilar com a versão correta e ver se funciona.
Obrigado pela atenção.

[7] Comentário enviado por rogi_cps em 07/04/2013 - 10:02h

Preciso de ajuda.... estou tentando compilar o SNORT conforme indicado no artigo, mas tenho recebido o seguinte erro ao fazer make.

plugbase.o: In function `RegisterOutputPlugins':
/usr/local/src/snort-2.9.1.2/src/plugbase.c:1472: undefined reference to `AlertFWsamSetup'
collect2: ld returned 1 exit status
make[3]: ** [snort] Erro 1
make[3]: Saindo do diretório `/usr/local/src/snort-2.9.1.2/src'
make[2]: ** [all-recursive] Erro 1
make[2]: Saindo do diretório `/usr/local/src/snort-2.9.1.2/src'
make[1]: ** [all-recursive] Erro 1
make[1]: Saindo do diretório `/usr/local/src/snort-2.9.1.2'
make: ** [all] Erro 2

Teria alguma idéia do que esta acontecendo?
Distro Debian 6 Squeeze (dentro de VMWARE Worksatation - lab de teste)

Já tentei em CENTOS 6 e Ubuntu 12.10, com o mesmo erro.


[8] Comentário enviado por viniciusraupp em 11/04/2013 - 23:58h


[7] Comentário enviado por rogi_cps em 07/04/2013 - 10:02h:

Preciso de ajuda.... estou tentando compilar o SNORT conforme indicado no artigo, mas tenho recebido o seguinte erro ao fazer make.

plugbase.o: In function `RegisterOutputPlugins':
/usr/local/src/snort-2.9.1.2/src/plugbase.c:1472: undefined reference to `AlertFWsamSetup'
collect2: ld returned 1 exit status
make[3]: ** [snort] Erro 1
make[3]: Saindo do diretório `/usr/local/src/snort-2.9.1.2/src'
make[2]: ** [all-recursive] Erro 1
make[2]: Saindo do diretório `/usr/local/src/snort-2.9.1.2/src'
make[1]: ** [all-recursive] Erro 1
make[1]: Saindo do diretório `/usr/local/src/snort-2.9.1.2'
make: ** [all] Erro 2

Teria alguma idéia do que esta acontecendo?
Distro Debian 6 Squeeze (dentro de VMWARE Worksatation - lab de teste)

Já tentei em CENTOS 6 e Ubuntu 12.10, com o mesmo erro.



Você usou o patch com a mesma versão do source do snort ?

[9] Comentário enviado por jtdest em 20/03/2015 - 10:20h

uma duvida, ja estou com snort-mysql instalado via apt-get no debain, como fazer para adicionar snortsam no snort-mysql ja instaldo
? podera me ajudar .

[10] Comentário enviado por viniciusraupp em 15/04/2015 - 19:29h


[9] Comentário enviado por marxbrito em 20/03/2015 - 10:20h

uma duvida, ja estou com snort-mysql instalado via apt-get no debain, como fazer para adicionar snortsam no snort-mysql ja instaldo
? podera me ajudar .


Buenas, não tem usar o snortsam junto com o pacote snort pré-compilado, foi este motivo que me levou a criar este artigo.

[11] Comentário enviado por jtdest em 12/06/2015 - 20:26h

blz,.. vc conhece o ips gauardian , sabe como usar ele sobre uma bridge, porque meu snort esta olhando uma bridge , mais o guardian nao enxerga a bridge ou o iptables , porque ele chegar aplica regra tanto na forword e na intput mais não tenho efeito algum ... so aplica a regra .. não sei se tem quer adciona algum modulo para iptables entender quer o trafico e em bridge ,
abs..

[12] Comentário enviado por viniciusraupp em 02/07/2015 - 13:36h


[11] Comentário enviado por jtdest em 12/06/2015 - 20:26h

blz,.. vc conhece o ips gauardian , sabe como usar ele sobre uma bridge, porque meu snort esta olhando uma bridge , mais o guardian nao enxerga a bridge ou o iptables , porque ele chegar aplica regra tanto na forword e na intput mais não tenho efeito algum ... so aplica a regra .. não sei se tem quer adciona algum modulo para iptables entender quer o trafico e em bridge ,
abs..


Olá, desculpe mas desconheço o funcionamento do ips guardian.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts