Introdução
Arpwatch é uma ferramenta que monitora a atividade em uma rede ethernet, mantendo atualizada uma tabela com endereços ethernet (MAC) e seus respectivos endereços IP. Essa ferramenta tem a capacidade de reportar via email certas mudanças.
O Arpwatch é uma ferramenta importante na monitoração da rede contra ataques de Arp Poisoning ou Arp Spoofing usados para realizar ataques mais sofisticados como Man-in-the-Middle(MITM).
Instalação
Tomando-se como base a distribuição Fedora, para a instalação do arpwatch basta executar o comando abaixo:
[root@testes rodrigo]# yum install arpwatch
OBS: Será necessário a instalação da libpcap. Aconselho fazer as atualizações necessárias em Sistema > Administação > Adicionar/remover programas e localizar o pacote e o libpcap já estará instalado.
Configuração
O arquivo de configuração está localizado em /etc/sysconfig/arpwatch. Sua base de dados é armazenada em /var/arpwatch. Neste diretório estão os arquivos arp.dat, que é a base de dados propriamente dita e o ethercodes.dat, que possui o bloco de endereços MAC atribuídos aos fabricantes.
DICA: Você deve criar dentro de /var/arpwatch os arquivos: arp.dat e ethercodes.dat nesta criação pode ser usado o “touch” para criar um arquivo em branco ou dar privilégios a pasta arpwatch de criação do arquivo e criá-los via cursor do mouse ou teclado.
Abaixo vemos a configuração padrão do arpwatch:
# -u : defines with what user id arpwatch should run
# 1. -e : the where to send the reports
# 2. -s : the -address
OPTIONS="-u pcap -e root -s 'root (Arpwatch)'"
Vamos configurá-lo para que envie as mensagens para o nosso e-mail, altere a linha de forma que semelhante como a linha abaixo:
OPTIONS="-u pcap ou nome_do_usuário_com_privilégios_de_acesso_ao_arpwatch -e usuario@dominio.com.br -s 'root (Arpwatch Servidor De Teste Rede 192.168.0.0/24)'"
OBS: Para que esta configurar a edição acima recomendo do editor “vi”:
Algumas opções possíveis são:
-d: Utilizada para debugging. Essa opção inibe o envio de relatórios via email. Eles são enviados para a saída de erro padrão (stderr);
-f: Informa qual o arquivo da base de dados deve ser usado. O valor padrão é arp.dat;
-i: Usada para sobrescrever a interface padrão;
-n: Especifica redes locais adicionais. É útil se na mesma rede física, estiver rodando mais de um endereçamento de rede;
-u: define qual usuário executará o arpwatch. Rodá-lo com um usuário diferente de root é extremamente recomendado para melhorar a segurança;
-e: Envia mensagens de e-mail para o endereço especificado. O padrão é para o usuário root. Se apenas o caractere '-' for definido, o envio de alertas via e-mail será suspenso, no entanto, o logging via syslog continuará ativo (Útil quando for executado pela primeira vez na rede, evita o recebimento de muitas mensagens);
-s: Envia mensagens de email com endereço de retorno, ao contrário do valor padrão do root.
OBS: Antes de ser rodado pela primeira vez é necessário que o arquivo da base de dados exista (em branco) e que o usuário especificado em -u seja o dono do diretório /var/arpwatch.
Vamos colocá-lo para iniciar no boot:
[root@teste sysconfig]# /sbin/chkconfig --level 2345 arpwatch on
OBS: lembre-se de acessar a pasta /etc/sysconfig com privilégios root e depois dar o comando acima.
Iniciando o arpwatch:
[root@teste sysconfig]# /etc/init.d/arpwatch start
OBS: lembre-se de acessar a pasta /etc/sysconfig com privilégios root e depois dar o comando acima.
Através do comandos abaixo, confirma-se que o arpwatch já está sendo executado:
[root@teste log]# tail -f messages
OBS: lembre-se de acessar a pasta /var/log com privilégios root e depois dar o comando acima, pois dentro do diretório log esta a arquivo “messages”.
Jan 4 10:41:04 vpn01 arpwatch: new station 192.168.0.222 0:10:c6:b9:69:2b
Jan 4 10:41:14 vpn01 arpwatch: new station 192.168.0.176 0:d:f4:3:2:d8
Jan 4 10:41:20 vpn01 arpwatch: new station 192.168.0.224 0:11:25:8a:87:9b
Exemplo de alerta
Ex1:
Subject: new station
hostname:
ip address: 192.168.0.185
ethernet address: 0:d:f4:3:3:1e
ethernet vendor: Watertek Co.
timestamp: Friday, January 4, 2008 10:40:44 -0300
Ex2:
Subject: new station
hostname:
ip address: 192.168.0.245
ethernet address: 0:30:a:5b:73:24
ethernet vendor: AZTECH SYSTEMS LTD.
timestamp: Friday, January 4, 2008 10:40:56 -0300
Entendendo as mensagens
new activity
Esse par de endereço MAC e endereço IP já foi utilizado a seis meses ou mais.
new station
Esse endereço ethernet (MAC) nunca foi visto antes.
flip flop
O endereço ethernet foi foi alterado do primeiro mais recente para o segundo mas recente.
changed ethernet address
O Host mudou para um novo endereço ethernet (MAC)
Testando
A forma de testarmos é rodarmos um ataque de arp spoofing em nossa própria rede. Para o teste, foi utilizado o aplicativo ettercap.
Os seguintes hosts foram utilizados:
Endereço IP Endereço MAC Descrição
192.168.0.224 00:11:25:8A:87:9B Host do Atacante
192.168.0.3 00:10:C6:B9:68:F5 Gateway da rede, host a ser realizado o spoof
Após o inicio do ataque, foram recebidos os seguintes alertas:
MSG1: Arpwatch detecta a mudança do PAR MAC/IP
Subject: changed ethernet address
hostname:
ip address: 192.168.0.3
ethernet address: 0:11:25:8a:87:9b
ethernet vendor: IBM Corporation
old ethernet address: 0:10:c6:b9:68:f5
old ethernet vendor: USI
timestamp: Friday, January 4, 2008 11:16:06 -0300
previous timestamp: Friday, January 4, 2008 11:16:06 -0300
delta: 0 seconds
MSG2:Arpwatch detecta que o par está oscilando, característica do ataque de arp spoofing. Ele recebe pacotes ARP do com o MAC correto e em seguida, vários outros como MAC errado.
Subject: flip flop
hostname:
ip address: 192.168.0.3
ethernet address: 0:10:c6:b9:68:f5
ethernet vendor: USI
old ethernet address: 0:11:25:8a:87:9b
old ethernet vendor: IBM Corporation
timestamp: Friday, January 4, 2008 11:16:22 -0300
previous timestamp: Friday, January 4, 2008 11:16:21 -0300
delta: 1 second
MSG3: Arpwatch detecta que o par está oscilando, característica do ataque de arp spoofing. Ele recebe pacotes ARP do com o MAC correto e em seguida, vários outros como MAC errado.
Subject:flip flop
name:
ip address: 192.168.0.3
ethernet address: 0:11:25:8a:87:9b
ethernet vendor: IBM Corporation
old ethernet address: 0:10:c6:b9:68:f5
old ethernet vendor: USI
timestamp: Friday, January 4, 2008 11:16:31 -0300
previous timestamp: Friday, January 4, 2008 11:16:22 -0300
delta: 9 seconds
Este material foi adaptado de acordo com as dificuldades a qual tive na realização de uns teste, na curiosidade de descobrir o real funcionamento desta ferramento citada em uma aula da minha pós em redes, espero ter ajuda alguém, vale salientar que um pouco de conhecimento em Linux ajuda muito.
0 comentários:
Postar um comentário