segunda-feira, 14 de dezembro de 2015

Kill-Router :: Brute Force em senhas de Roteadores e Painéis utilizando Python



O KillRouter é um script mega simples que criei durante um experiência onde necessitava de uma ferramenta que me auxiliasse em um brute force de senhas simples em um roteador autenticado via JavaScript. Pedindo ajuda ao Dr. Google e aos universitários, obrigado Gambler, encontrei um método de enviar o request junto com a solicitação de usuário e senha no header para o roteador. É claro que existe o projeto THC Hydra, que inclusive gosto muito, nesse aspecto a ferramenta deixa um pouco a deseja no quesito de performance, podendo até enviar requisições perdidas por aí, e isso me levou a pensar em uma forma de simplificar o processo e executar a operação de uma forma quase 3 vezes mais rápida usando Python.



Esse é o primeiro projeto meu que eu posto aqui no Nanoshots por motivos de não querer misturar as coisas, mas como o projeto ficou legal, eu decidi tomar coragem e publicar meus codes :)


Faça o clone do projeto:
 # git clone https://github.com/msfidelis/Kill-Router-.git  

Agora instale as dependências
Este passo é opcional, só para garantir que você tem todas as bibliotecas do python que o script utiliza.
 # cd Kill-Router-/  
 # chmod +x install-kill-router.sh  
 # ./install-kill-router.sh  


Método de uso:
 [!] Usage: ./kill-router.py -t [TARGET IP] -u [USER TO TEST] -p [PATH TO PASSLIST]  
 [!] Usage: ./kill-router.py -t 192.168.0.1 -u admin -p passlist.txt  





UPDATE - 20-12-2015 Realizando Ataques em SSL e portas específicas

Especificando a porta do alvo: 
 [!] Usage: ./kill-router.py -t [TARGET IP] -p [TARGET PORT] -u [USER TO TEST] -l [PATH TO PASSLIST]  
 [!] Usage: ./kill-router.py -t 192.168.0.1 -p 8080 -u admin -l passlist.txt  


Especificando o protocolo HTTPS:
 [!] Usage: ./kill-router.py -t [TARGET IP] -p [TARGET PORT] -u [USER TO TEST] -l [PATH TO PASSLIST] -m [PROTOCOL]  
 [!] Usage: [!] ./kill-router.py -t 192.168.0.1 -p 8080 -u admin -l passlist.txt -m https  


Git do projeto: https://github.com/msfidelis/Kill-Router-

:)

SOBRE O AUTOR

Matheus Fidelis

http://msfidelis.github.io/

Power Ranger, Piloto de Helicópteros e Astronauta da NASA. Desenvolvedor Web PHP com foco em Backend e POO, Linux SysAdmin DevOps e Entusiasta Python. Criou esse site pra contribuir com a comunidade com coisas que aprende dentro de um setor maluco de TI :)

13 comentários:

  1. então, tive alguns problemas pra instalar. :/ vou listar com minhas sugestões de correção:

    - seu script de instalação exige uma virtualenv ativa, já que o pip exige uma env ativa. precisei criar uma virtualenv na pasta pra poder rodar o instalador.
    - instalar o pip via package manager faz com que sua instalação fique amarrada a uma distro específica (debian e derivados, no caso). uma alternativa válida seria usar o get-pip.py (ou algo análogo a isso: https://gist.github.com/michaelxor/8136225). a resolução desse link também soluciona o problema da env ativa que falei anteriormente, então é só dar uma olhada com calma;
    - o instalador instala um pacote por um (pip install ), incluindo o sys, que é builtin. isso faz com que a instalação falhe, por não achar esse pacote para instalar. recomendo que, na sua instalação local, rode o comando 'pip freeze', que te exibe os pacotes instalados na env, e coloque seu resultado em um requirements.txt, para que, durante a instalação, você só precise rodar o comando 'pip install -r requirements.txt' e ter todas as dependências correta e automaticamente instaladas.

    assim que eu resolver esses problemas, vou dar uma olhada no script em si =)
    abraço!

    ResponderExcluir
    Respostas
    1. Poxa. Muito obrigado pela ajuda amigo, vou dar uma atenção sim, obrigado!!

      Excluir
    2. Fiz um commit novo com o get-pip.py no install, obrigado mesmo pela ajuda, ficou bem melhor!

      Excluir
  2. outra questão: seu script só é compatível com python2, seria bom que esse disclaimer fosse publicado em algum lugar.

    mais tarde, se eu tiver tempo, faço um pull request com minhas sugestões ;D

    abraço!

    ResponderExcluir
  3. Eita menino prodigio viu kkk mandando muito bem mano, obrigado ai pela referencia no post, pode contar comigo ai man :D TMJ

    ResponderExcluir
  4. Pessoal coloquei o sclipt para rodar e dentro da worlist coloquei a senha do meu router e passo direto sem dar nem um print de sucesso tenho o print da tela para vocês se quiser o vídeo de tudo que fiz eu fasso e posto...

    ResponderExcluir
    Respostas
    1. Em todos os routers e paineis que testei estão Ok. Deve ser algum tipo específico de autenticação do seu roteador. Se conseguir reproduzir o erro eu dou um jeito de analisar.

      Excluir
  5. Deu mike aqui. Erros nas linhas 118, 115 e 42.

    ResponderExcluir
    Respostas
    1. Certifique-se de que as dependências estão todas instaladas. Se não estiverem, siga o primeiro passo.

      Excluir
  6. Tem algum passlist, wordlist pra download com senhas mais usadas no Brasil? obrigado!

    ResponderExcluir
  7. O meu também está com erros nas linhas 118, 115 e 42.

    ResponderExcluir
    Respostas
    1. Ele da erro na wordlist que eu tenho.
      Começa a verificar no meio do caminho ele apresenta esse erro.

      Excluir
  8. Pra mim aparace, [X] NO CONNECTION o que pode ser?

    ResponderExcluir

 
Nanoshots | Open Source Security, Linux e Tutoriais © 2015 - Designed by Templateism.com