MAN IN THE MIDDLE
Aprenda o que é e como realizar o ataque
Introdução
Ano após ano cresce o número de ataques cibernéticos na Rede. Toda semana surgem notícias de que alguém fez ataque à instituição tal e ainda é muito maior o número desses ataques realizados contra o cidadão comum. Grande parte dos ataques ocorre devido ao booomtecnológico que estamos vivenciando. Mais dispositivos conectados à Internet, mais pessoas que não sabem como usá-la de forma segura, pelo menos de forma minimalista.
Os investimentos em segurança da informação por parte das empresas começam a ganhar força. Porém, as empresas não conseguem acompanhar a evolução de seus inimigos, os crackers, que sempre estão a quilômetros de distância a frente.
De acordo com a Pesquisa Global de Segurança da Informação de 2014 realizada com quase 10 mil executivos de cerca de 115 países, as empresas têm aumentado o investimento em SI, porém, elas não sabem ou têm dificuldade em identificar e priorizar quais os dados devem ser mais protegidos, tornando-as, assim, alvos fáceis dos criminosos virtuais.
Existem diversas formas de ataque às informações que trafegam na Internet e a cada tempo surgem novas maneiras de burlar a segurança da informação. Pretendo aqui apresentar um das mais usuais técnicas de ataques, o MITM (Man In The Middle). Miriam von Zuben, analista de
segurança do Cert.br, o aumento de ciberataques é uma tendência mundial, e isso é bem
compreensível, uma vez que a internet das coisas vem ganhado cada vez mais usabilidade.Miriam ainda salienta que “esse meio atrai o interesse de quem deseja obter alguma vantagem financeira através do uso da rede”. Os cibercriminosos não querem saber qual a sua senha na conta do
Facebook, querem saber de sua conta bancária. Eles não são crianças que querem aprontar uma com você para chateá-lo. O buraco é muito mais profundo.
Esta obra não pretende incentivar os ciberataques por parte de quem o ler. Seu intuito é apenas repassar informação do venha a ser o MITM, como é realizado e como podemos nos defender, uma vez que, se esta prática for realizada contra alguma instituição ou até mesmo contra usuários comuns da grande Rede o atacante pode responder judicialmente se for descoberto e podendo, assim, passar bons anos de sua vida vendo o Sol nascer quadrado. Cabe ao leitor ou leitora pesquisar sobre as consequências ilegais dos ataques cibernéticos.
Cap. 1 – O que é o MITM
O MITM ou Man In The Middle (Homem No Meio) é uma técnica usada para roubar ou capturar os dados que trafegam numa determinada rede (ou até mesmo da Internet) onde o atacante se interpõe entre um dispositivo emissor de dados e seu respectivo receptor podendo ter acesso a esses dados que vão e voltam. Para melhor entendimento analise a figura abaixo:
Fig. 01 – Representação do MITM
Depois de ter ganhado o acesso ao roteador o atacante passa a “escutar” todo o tráfego da rede. Isso pode acontecer devido ao roteador estar corrompido, por falhas na instalação e configuração do mesmo e até por firmware e protocolos de segurança desatualizados (aliás, isso é um dos principais motivos de ataques). O MITM é um tipo de ataque relativamente fácil de se realizar.
Cap. 2 - Ferramentas e ambiente usadao no ataque
Para realizar a simulação de um ataque MITM, utilizei-me de: → Sistema Operacional: Kali Linux 1.1.0a-amd64.
Sistema Operacional desenvolvido especificamente para realização de testes em segurança de redes que contém mais de 300 ferrmentas open source gratuitas voltadas para invasão de redes. Você pode baixar a imagem em https://www.kali.org /.
O Kali Linux pode ser usado tanto como live cd quanto instalado permanentemente no seu computador. Caso queira usá-lo por meio de uma máquina virtual será necessário ter uma placa de rede externa.
→ Ambiente de simulação de ataque: minha própria rede interna. Você pode fazer esse teste para verificar o quão frágil e vulnerável pode está sua rede e não para sair por aí achando que pode roubar e invadir qualquer sistema, pode não dar certo, uma vez que os sistemas possuem detector de intrusos e você pode se dar muito mal.
Cap. 3 - Realizando o ataque
Para ficar mais didático apresentarei as telas que representam cada passo que foi dado para a experiência. Sugiro que o leitor ou leitora pesquise cada comando mais a fundo se quiser se
aprofundar, cada comando tem de opções variadas. Cada tela informa os comando usados. Segue abaixo o passo a passo.
Fig. 02 – Comando route
O comando route serve para nos apresentar quais as rotas que os pacotes da rede irão tomar. Na Fig. 02, o comando route nos apresenta a rota default que no caso é o meu roteador.
Fig. 03 – Comando NMap
O comando nmap (Network Map) na Fig. 03 serve para varrer uma determinada faixa de IP's e mostrar os hosts ativos, sua saída terá a tela a seguir, fig. 04. Mas o nmap não se limita a
apresentar apenas os hosts ativos, dentre suas funções destacam-se: → varreduras de IP's ativos numa rede;
→ varreduras de portas e seus respectivos serviços“levantados”; → verificar sistema operacional do alvo e sua versão.
É claro que existem inúmeras funções e opções fornecidas pelo nmap. Existem no mercado vários livros que tratam do assunto, daí se percebe o quão poderoso é o Nmap.
Vale a pena o leitor ou leitora gastar um pouco do seu tempo para pesquisar sobre a ferramenta.
Fig. 04 – saída do comando nmap
Na varredura realizada foram encontrados 5 hosts up, isto é, 5 dispositivos que estão conectados na minha redes. Ofusquei os endereços MAC por motivos de segurança.
Podemos ver também as portas e serviços utilizados pelo gateway: portas 22 (ssh), 53 (DNS), 80 (http) e 443 (http seguro).
Fig. 05 – redirecionamento de pacotes
O comando na tela está habilitando o redirecionamento dos pacotes que trafegam em sua rede.
Fig. 06 – redirecionamento de porta
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080
Na fig. 06, o firewall está redirecionando todos os pacotes que passam pela porta 80, que é a porta default, para a porta 8080.
Fig. 07 – Comando sslstrip
O comando sslstrip, fará o papel do “ouvinte”, ou seja, é ele que estará verificando os pacotes trafegados na rede, uma vez que o firewall estará redirecionando todo o trafego para a porta 8080.
O comando ettercap é o responsável pelo ataque em si. O wlan0 é minha interface de rede. Para saber qual é a sua abra outro terminal e digite ifconfig. Os // // está dizendo queserão
verificados todos os endereços da faixa de IP's. Para verificar apenas um IP em específicos deixe assim: ettercap -T -q -i (sua interface) -M arp:remote /ip-do-gateway/ip-da-vitma/ .
Fig. 09 – sslstrip em execução
Fig. 10 – comando urlsnarf
O comando urlsnarf é usado para verificar quais os sites que estão acessando na rede. Na figura abaixo vemos os sites acessados em tempo real. Para um melhor aproveitamento dos dados trafegados você pode usar programas que fazem leituras mais precisas, assim tambem como usar expressões regulares (coisa muito poderosa no Linux), para filtrar as informações que voccê deseja.
Fig. 13 – driftnet capturando imagens acessadas
Para quem quer se aprofundar mais, existem outros comando que podemos usar e ampliar nossa forma de ataque, veja abaixo alguns:
→ msgsnarf -i (interface)
Verifica as mensagens trafegadas. → mailsnarf -i (interface)
Verifica e-mails trafegados. → dsniff -i (interface)
Atua como “sniffador”.
Cap.5 – Como se defender
Existem diversas formas de se prevenir desse tipo de ataque, segue abaixo algumas: → usar SSL/TLS em suas conexões;
→ análise de tráfego e de logs;
→ atualização de firmware do roteador; → criptografia.
Conclusão
A cada dia novas formas de ataques virtuais surgem. Devemos não apenas sermos usuários de tecnologia, mas é preciso conhecer seus funcionamentos para podermos entender suas fraquezas e, assim, evitar sermos vítimas de bandidos virtuais.
Uma breve pesquisada na Internet nos mostrará que nossos dados trafegando na rede são muito vulneráveis. Entender e encontrar soluções para esses problemas deve ser uma atividade constante não apenas de empresas mas de todos os usuários da Internet.
Comandos utilizados
route
nmap “ip-do-gateway”/24
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -p tcp --destination-port 80 -j REDIRECT --to-port 8080 sslstrip -a -l 8080
ettercap -T -q -i (interface) -M arp:remote // // urlsnarf -i (interface)
driftnet -i (interface)