IDS com Debian 4, Snort 2.8.3.1 e BASE 1.4.1

Esse Guia de Instalação destina-se aos iniciantes no mundo do Snort e que tenham alguma experiência com Linux, pelo menos para instalação do Sistema Operacional e comandos básicos. O objetivo após a conclusão desse guia é termos um IDS (Intrusion Detection System) básico rodando com interface WEB (no nosso caso o BASE). Não vamos entrar em detalhes de customização do Snort.

[ Hits: 56.404 ]

Por: Perfil removido em 09/01/2009


Configuração do Snort para logar no MySQL



Abra o snort.conf:

# vi /etc/snort/snort.conf

Procure a linha abaixo, descomente-a e coloque os parâmetros apropriados:

output database: log, mysql, user=snort password=Senha dbname=snort host=localhost

Inicie o Snort em verbose mode sem colocar a interface em modo promiscuo (substitua o X pelo número correto dependendo da sua interface de rede):

# snort -ve -p -u snort -g snort -c /etc/snort/snort.conf -i ethX

Caso tenha mais de uma interface retire o "-p" do comando:

# snort -ve -u snort -g snort -c /etc/snort/snort.conf -i ethX

Abra outro shell e faça uma varredura no servidor com o nmap:

# nmap -A -T4 IP_DO_SERVIDOR

Deverão aparecer várias mensagens no terminal rodando o Snort. Após o término do escaneamento pressione CTRL C para parar o Snort.

Abra o MySQL e verifique a contagem dos eventos:

# mysql -u root -p
mysql> use snort
mysql> select count(*) from event;
+----------+
| count(*) |
+----------+
|        7 | 
+----------+
1 row in set (0.00 sec)
mysql> exit

Página anterior     Próxima página

Páginas do artigo
   1. Instalação do Debian
   2. Download e instalação dos pacotes necessários
   3. Instalação do Snort
   4. Configuração do MySQL
   5. Configuração do Snort para logar no MySQL
   6. Instalação do BASE
   7. Colocando o Snort para rodar na inicialização
Outros artigos deste autor

Criando um servidor de impressão para residências e pequenas empresas com Linux

Configurando o monitor no SuSE 10.1

Como garantir compatibilidade entre Kylix e Delphi

Estratégias de backup e ferramentas livres

Linux: For Human Beings?

Leitura recomendada

PFSense com Snort

Segurança em Software de Código Aberto

Instalação do Freeradius com suporte a EAP-TLS e PEAP-TTLS MSCHAPv2 no Ubuntu

Sistemas e volumes criptografados e escondidos utilizando o TrueCrypt

Snort - The Open Source Network Intrusion Detection System

  
Comentários
[1] Comentário enviado por agimenez em 02/02/2009 - 14:58h

Olá,

Quando cheguei nesta parte:

snort -ve -p -u snort -g snort - c /etc/snort/snort.conf -i ethX

deu comando não encontrado...

[2] Comentário enviado por removido em 03/02/2009 - 07:57h

Bom dia!
Você precisa trocar o paramêtro "-i" pela interface que deseja monitar. Ex: eth0, eth1, eth2...
Isso vai depender da sua instalação. Tente um "ifconfig" para verificar a interface correta.

[3] Comentário enviado por cpluz238 em 08/03/2009 - 14:00h

Ola, Muito bom seu tutorial, me ajudou muito, mas tive um problema no final quando fui abrir o base pelo Browser, conseguir configurar somente onde coloco as informações do bando. depois disso não passa para a outra tela. ja reviso o tutorial mas não vejo o erro lembrando que quando testo pela linha de comando tudo funciona perfeitamente.

[4] Comentário enviado por pedro_k em 06/05/2009 - 00:26h

Bom dia ,
instalei configurei o snort e o base conforme o tutorial ,mas ao acessar o base no browser não e apresentado nenhuma informação de relatorio ,mesmo estando executando o snort.

[5] Comentário enviado por removido em 06/05/2009 - 10:25h

Oi pedro,
Não está sendo apresentado os gráficos (relatório) ou os alertas (tela inicial)?

[6] Comentário enviado por hudson.ebert em 26/05/2009 - 09:13h

Otimo tutorial

[7] Comentário enviado por hudson.ebert em 28/05/2009 - 00:20h

Quando abro o browser para configurar a base só chego a fazer o no step 1 e gera o seguinte erro: ERROR: The php session does not contain the array key adodbpath. This is typically caused by not having allowed cookies. Exiting.
Pode ser no php ?

[8] Comentário enviado por removido em 28/05/2009 - 09:05h

Oi Hudson,
Verifique o path do 'adodb'. Se você seguiu os passos deve ser esse:
"/usr/share/php/adodb"
Outra sugestão olhando a mensagem de erro, verifique se seu browser esta permitindo cookies.

[9] Comentário enviado por moonspell em 05/06/2009 - 16:04h

Amigo,

o script de inicialização não funcionou na minha máquina...a mensagem "Inicializando Snort... " ocorre, mas, verificando através do "ps aus | grep snort", vejo q ele não tá rodando!
A parte abaixo está realmente correta?

/usr/local/bin/snort -Dq -p -u snort -g snort \

sds

[10] Comentário enviado por removido em 05/06/2009 - 16:06h

Olá, ficou faltando o final do comando "-c /etc/snort/snort.conf -i eth0"

[11] Comentário enviado por carlosdias98 em 08/06/2009 - 23:05h

Amigo pelo jeito todos deram certo, acho que é incompentencia minha, mas NÃO estou conseguindo registrar no site para obter as regras!!!

O link não funciona: ://www.snort.org/pub-bin/register.cgi

E dentro do site também não encontrei nada..somente buy subscriber kkk

Poderia me dar uma luz ?

:)

Obrigado

Aguardo

[12] Comentário enviado por removido em 09/06/2009 - 09:23h

Oi carlosdias98, o site do Snort mudou completamente. Agora para fazer o registro use o https://www.snort.org/signup. Depois de fazer o registro e logon no site, baixe as regras no https://www.snort.org/snort-rules/#rules.

[13] Comentário enviado por henrique_1502 em 26/06/2009 - 10:13h

Estou com o seguinte problema na "instalação".

**********************************************
ERROR: unable to find mysql headers (mysql.h)
checked in the following places
yes
yes/include
yes/include/mysql
yes/mysql
yes/mysql/include
**********************************************

estou usando os seguintes parametros.

./configure --prefix=/etc/snort --with-libdnet --with-openssl --enable-flexresp2 --with-mysql=/usr/local/mysql/ --with-mysql-libraries --with-mysql-includes --enable-dynamicplugin

Se alguém poder ajudar, agradeço.







[14] Comentário enviado por removido em 26/06/2009 - 10:30h

O 'mysql.h' não esta sendo encontrado. Verifique se ele foi instalado. Outra opção, tente compilar com os parâmetros sugeridos no artigo só para ver se funciona.

[15] Comentário enviado por henrique_1502 em 26/06/2009 - 11:29h

Seguinte ao executar "snort -ve -p -u snort -g snort -c /etc/snort/snort.conf -i eth0" com a compilação do tutorial.



ERROR: If this build of snort was obtained as a binary distribution (e.g., rpm,
or Windows), then check for alternate builds that contains the necessary
'mysql' support.

If this build of snort was compiled by you, then re-run the
the ./configure script using the '--with-mysql' switch.
For non-standard installations of a database, the '--with-mysql=DIR'
syntax may need to be used to specify the base directory of the DB install.

See the database documentation for cursory details (doc/README.database).
and the URL to the most recent database plugin documentation.
Fatal Error, Quitting..

[16] Comentário enviado por removido em 26/06/2009 - 11:35h

Se você compilou com o '--with-mysql' é porque está faltando a 'libmysqlclient15-dev'.

[17] Comentário enviado por henrique_1502 em 26/06/2009 - 11:54h

Pior que não... o 'libmysqlclient15-dev'. foi instalado.
:(

[18] Comentário enviado por henrique_1502 em 26/06/2009 - 13:46h

FIz tudo de novo, pelo tutorial...

agora os erros são esse na execução.


Tagged Packet Limit: 256
/etc/snort/snort.conf(186) unknown dynamic preprocessor "flow"
/etc/snort/snort.conf(214) unknown dynamic preprocessor "frag2"
/etc/snort/snort.conf(275) unknown dynamic preprocessor "stream4"
/etc/snort/snort.conf(293) unknown dynamic preprocessor "stream4_reassemble"
/etc/snort/snort.conf(360) unknown dynamic preprocessor "telnet_decode"
/etc/snort/snort.conf(500) unknown dynamic preprocessor "xlink2state"
ERROR: Misconfigured dynamic preprocessor(s)
Fatal Error, Quitting..


Initializing rule chains...
ERROR: /etc/snort/rules/exploit.rules(8): Stream5 must be enabled to use the 'to_server' option.

[19] Comentário enviado por removido em 26/06/2009 - 14:06h

Tem certeza que você esta usando as versões descritas no artigo (Debian e Snort)? Outra coisa, você compilou o snort com o dynamicplugin?

[20] Comentário enviado por gaviolante em 17/09/2009 - 12:16h

Cara ja fiz de tudo, porem não estou conseguindo que o base seja incrementado, o seja o Snort roda numa boa, mais na base faço toda a instalação e ele simplismente ignora o que está incrementado no banco!

[21] Comentário enviado por xerminador em 25/11/2009 - 15:48h

Loula me tira uma duvida por favor!!!!

FIz tudo certinho so que quando vo roudar o script que inicia o snort da esse seguinte erro:

uild 1>
Preprocessor Object: SF_SMTP Version 1.1 <Build 8>
Preprocessor Object: SF_DCERPC2 Version 1.0 <Build 2>
Preprocessor Object: SF_SSH Version 1.1 <Build 2>
Preprocessor Object: SF_DCERPC Version 1.1 <Build 5>
Preprocessor Object: SF_FTPTELNET Version 1.2 <Build 12>
Preprocessor Object: SF_SSLPP Version 1.1 <Build 3>
Not Using PCAP_FRAMES

E na inicialização do SRV ele fica nessa tela....

Ate excutando o comando manualmente que esta no script não sai deste "Not Using PCAP_FRAMES"??????

[22] Comentário enviado por pauloric9 em 30/11/2009 - 17:20h

Ao chega no CP cp /usr/local/src/snort-2.8.3.1/etc/*.conf* . E cp /usr/local/src/snort-2.8.3.1/etc/*.map .
ELE DÁ O SEGUINTE ERRO : -
cp: impossível fazer stat em `/usr/local/src/snort-2.8.3.1/etc/*.conf*': Arquivo ou diretório inexistente
TEM IDEIA DO QUE SEJA?

[23] Comentário enviado por fagl22 em 31/03/2010 - 15:12h

Olá Loula!!!

Montei o SNORT todo certinho e esta funcionando pelo TCPDUMP estou capturando o trafego correto, só que no BASE as informações que aparecem lá é da minha ETH0 (Interface de saida de internet) ao invés de aparecer da ETH1 que ja esta configurada como PROMISC no vim /etc/network/interface conforme estou colando abaixo.

# The secundary network interface
allow-hotplug eth1
iface eth1 inet manual
up ifconfig $IFACE 0.0.0.0 up
up ip link set $IFACE promisc on
# down ip link set $IFACE promisc off
# down ifconfig $IFACE down

Gostaria de saber de voce como eu faço para mudar a interface certa, pois o BASE só esta lendo o IP da minha interface ETH0 ou invés da ETH1 dele. Configurei tudo atraves do putty da minha maquina direto pro servidor. Espero que voce consiga me ajudar.

Atenciosamente;
Fábio Lucena

[24] Comentário enviado por removido em 31/03/2010 - 16:08h

Oi Fábio,
Você configurou a inicialização do Snort para "escutar" a eth1?

[25] Comentário enviado por fagl22 em 02/04/2010 - 22:07h

Oi Loula!!!

Em qual arquivo eu configuro? É no /snort-2.8.5.2/rpm/snort.sysconfig? Foi o unico que eu fui la configurar depois de procurar muito na net. Caso esteja eu errado me informe em qual arquivo eu faço a configuração da eth.

Meu ifconfig esta assim:

xxxx:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:l6:7c:f9:b5:3c
inet addr:XXX.XXX.XXX.XXX Bcast:XXX.XXX.XXX.XXX Mask:XXX.XXX.XXX.XXX
inet6 addr: fe80::c16:7aff:fefc:95ec/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:607 errors:0 dropped:0 overruns:0 frame:0
TX packets:371 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:48644 (47.5 KiB) TX bytes:78635 (76.7 KiB)
Interrupt:32 Base address:0x6000

eth1 Link encap:Ethernet HWaddr 8e:fc:ef:ca:ed:o4
inet6 addr: fe80::80f5:e7ff:fe2a:e308/64 Scope:Link
UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
RX packets:387 errors:0 dropped:0 overruns:0 frame:0
TX packets:6 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:46649 (45.5 KiB) TX bytes:468 (468.0 B)
Interrupt:36 Base address:0x8100

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:560 (560.0 B) TX bytes:560 (560.0 B)

Fico no aguardo de uma resposta sua o mais breve possível.

Arenciosamente;
Fabio Lucena

[26] Comentário enviado por removido em 19/05/2010 - 11:59h

Por favor, alguém pode me ajudar. Eu instalei tudo direitinho, mas os gráficos gerados estão sem os nomes nos eixos e nas linhas, oq pode ser?

[27] Comentário enviado por removido em 19/05/2010 - 14:45h

Faz tempo que não testo esse procedimento, mas provavelmente é problema nós módulos PEAR para o PHP. Verifique se você está instalando as versões corretas.

[28] Comentário enviado por removido em 19/05/2010 - 23:47h

Verifiquei os módulos pear estão todos na versão mais recente, mas olha oq está aocntecendo: http://img337.imageshack.us/i/basegraphdisplaypng.png/

[29] Comentário enviado por removido em 20/05/2010 - 08:45h

Esse é o problema, você deve instalar as versões conforme o artigo. As versões mais atuais não funcionam!

[30] Comentário enviado por removido em 28/05/2010 - 12:41h

Era isso mesmo loula, muito obrigado. Mas não entendo porque as versões mais atuais não funcionam, elas deveriam funcionar e melhor né?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts