Debian Sarge + Snort + MySQL + Acidlab + Apache

Este artigo visa ensinar como montar um sistema de detecção de intrusos utilizando o MySQL para armazenar os alertas e o Apache para exibir as páginas de relatório que o Acidlab produz.

[ Hits: 74.627 ]

Por: Benone Bitencourt em 30/05/2006 | Blog: http://www.benone.com.br


Apresentação dos programas



Vamos começar, pegue um café e mãos a obra! Os programas usados nesse artigo são:

  • Snort: Espécie de sniffer com regras que identificam as mais variadas técnicas de footprint;
  • MySQL: Banco de dados onde o snort armazenará os logs de alertas.
  • Apache: Servidor Web para exibir as páginas de relatório do snort;
  • Acidlab: Programa que gera páginas de relatório a partir dos logs do snort armazenados no MySQL.


Configuração da rede


Servidores, preferencialmente, devem possuir IP estático, então mãos a obra. Edite o arquivo /etc/network/interfaces ajustando para sua rede. Estou usando o ip 192.168.3.150 no servidor.

Configurando a rede:

# vim /etc/network/interfaces

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)

auto eth0
iface eth0 inet static
        address 192.168.3.150
        netmask 255.255.255.0
        network 192.168.3.0
        broadcast 192.168.3.255
        gateway 192.168.3.1

Como estaremos usando o SNORT, é lógico que teremos que utilizar duas placas, minha outra rede é 192.168.10.0/24:

# /etc/network/interfaces - configuration file for ifup(8), ifdown(8)
# The loopback interface

auto lo
iface lo inet loopback

# The first network card - this entry was created during the Debian installation
# (network, broadcast and gateway are optional)

auto eth0
iface eth0 inet static
        address 192.168.3.150
        netmask 255.255.255.0
        network 192.168.3.0
        broadcast 192.168.3.255
        gateway 192.168.3.1

auto eth1
iface eth1 inet static
        address 192.168.10.150
        netmask 255.255.255.0
        network 192.168.10.0
        broadcast 192.168.10.255


Reinicie sua rede:

# /etc/init.d/networking restart

Edite o arquivo /etc/resolv.conf e adicione seus DNSs:

search instrutor.com.br
nameserver 192.168.3.1
nameserver 200.199.252.68

Edite o arquivo /etc/hosts e adicione seus hosts:

127.0.0.1       localhost.localdomain      localhost   benone
192.168.3.150    benone.instrutor.com.br   benone
192.168.10.150   interna. instrutor.com.br interna

Configurado o hostname:

# echo benone.instrutor.com.br > /etc/hostname
# hostname -F /etc/hostname


Restaurando as placas:

# ifdown eth0 eth1 && ifup eth0 eth1

    Próxima página

Páginas do artigo
   1. Apresentação dos programas
   2. Preparando o sistema para as configurações
   3. Criando base de dados no MYSQL para o SNORT
   4. Configuração do Apache
   5. Configuração do SNORT
   6. Configuração do ACIDLAB no APACHE
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Instalando o PFSense em uma máquina virtual

Vault: SSH com OneTimePassword

Técnicas forenses para identificação da invasão e do invasor em sistemas Unix/Linux através do SSH (parte 2)

Como saber se houve uma invasão

Convergência entre segurança física e lógica

  
Comentários
[1] Comentário enviado por leoberbert em 30/05/2006 - 14:13h

Excelente artigo... Bem completo e eficaz... testado e aprovado!!!

CONGRATULATIONS!!!

[2] Comentário enviado por dcyrillo em 19/07/2006 - 10:59h

Olá!
Fiz tudo certinho, artigo excelente!
Estou achando estranho ele nao está logando no banco de dados, aonde eu posso verificar o log para encontrar aonde está o erro?

[3] Comentário enviado por B3n0ne em 16/08/2006 - 13:04h

faz assim:
vai no /etc/my.cnf e habilite os log do mysql neste arquivo...
Hum como habilita falhou agora googla aí...hehehehe


[4] Comentário enviado por fontebon em 07/01/2007 - 04:17h

Muito Bom ....parabens...funcionou legal
Uma pergunta tem alguma ferramenta para traduzir para portugues o acidlab
Outra coisa verifiquei que ususrio snort nao esta dando update na tabela do banco ceja abaixo:
Protocol: 17 (%22.222222) finds: 6 reversed: 0(%0.000000)
find_sucess: 5 find_fail: 1 percent_success: (%83.333333) new_flows: 1
database: mysql_error: Access denied for user: 'snort@localhost' to database 'snort'
SQL=UPDATE sensor SET last_cid = 0 WHERE sid = 2
database: Closing connection to database ""
Snort exiting

Outra coisa tem alguma ferramenta para testar tentiva de invasao

[5] Comentário enviado por duraes em 01/03/2007 - 17:20h

Aew!

Artigo porreta! Parabéns!

Ao colera fontebon:

Sugiro instalar o phpmyadmin ( vou via console do mysql mesmo ) liberar esse privilégio para o usuário snort.

abraços,

Capita

[6] Comentário enviado por b3n0ne em 05/04/2007 - 14:25h

Valeu os elogios...
Não costumo publicar tutoriais, mas já que vocês gostaram vou arranjar tempo para escrever mais alguns, mas gosto de fazer o mais completo possível, aí se o bonito for newbie não tem problema AhauhaUHAUhauahuah brincadeiras a parte a comunidade do site do vivaolinux já me ajudou bastante vou devolvendo aos poucos...

[7] Comentário enviado por epgielow em 18/10/2007 - 14:50h

se liga ai que o usuario snort no arquiv snort.conf na parte de data base esta com um espaco no final.. isso tava dando problema!

falow!

[8] Comentário enviado por celsopimentel em 06/11/2007 - 17:49h

Parabéns, me ajudou e muito. Pois estou estudando o framework OSSIM, que possui o snort no pacote. Tchê, já fiz treinamento com você na sis....
Outra, quando tiver um tempo da uma olhada no www.ossim.net, achei muito interessante.
Abraço!

[9] Comentário enviado por durama em 08/06/2008 - 19:17h

Muito bom, vou testar!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts