
BinGoo! Uma ferramenta de Dorking do Bing e Google baseada em Linux e bash.
__ ,--="=--, __
/ ." .-. "./
/ ,/ _ : : _ /\ \ | /o\ :: /o\ |_/
-'| :="~ _ ~"=: | \ () / .-"-. \ | / .-"-. .---{ }--| /,.-'-.,\ |--{ }---. ) (_)_)_) \_/-===-`_/ ((() (
( ____ _ ____ _ )
) | __ )() __ / | ___ ___ | | (
( | _ | | ' | | _ / _ \ / _ | | )
) | |) | | | | | || | () | () || (
( |/||| ||_|_/ ___/() )
) (
'-----v1--------------By-Hood3dRob1n----'
Bem-vindo ao arquivo README do BinGoo!
Isso deve dar uma visão geral do que a ferramenta é sobre e como usá-la. Este é o resultado de um projeto meu para criar uma solução melhor para coletar links em massa para pesquisa e eu o ajustei para se alinhar às minhas necessidades de hacking. Também decidi que faria tudo em bash para dificultar as coisas para mim, bem, porque é assim que eu sou :p
BinGoo é minha versão de uma ferramenta de dorking completa escrita em bash puro. Ela aproveita as páginas principais de pesquisa do Google E do Bing para raspar uma grande quantidade de links com base nos termos de pesquisa fornecidos. Você pode optar por pesquisar um único dork por vez ou pode criar listas com um dork por linha e realizar varreduras em massa. Depois de terminar isso, ou talvez você tenha links coletados por outros meios, pode passar para as ferramentas de Análise para testar sinais comuns de vulnerabilidades. Os resultados são organizados em seus próprios arquivos com base nas descobertas. Se quiser ir mais longe, pode executá-los através das ferramentas SQL ou LFI, que são algumas criações caseiras semi funcionais que fiz em bash, ou pode usar as ferramentas wrapper SQLMAP e FIMAP que escrevi, que funcionam muito melhor e com maior precisão e resultados. Também incluí alguns recursos interessantes para facilitar a vida, como Geo dorking baseado em tipo de domínio ou códigos de país de domínio ou verificador de hospedagem compartilhada que usa uma pesquisa Bing pré-configurada e uma lista de dorks para encontrar possíveis vulnerabilidades em outros sites no mesmo servidor. Também incluí um localizador simples de página de administrador que funciona com base em uma lista fornecida e códigos de resposta do servidor para confirmação de existência. Juntos, acho que tudo funciona como um belo pacote!
- LYNX e CURL necessários para a funcionalidade principal
- Instalação LYNX/CURL: apt-get install lynx; apt-get install curl
- NMAP, FIMAP e SQLMAP necessários para plugins e funcionalidades de teste (digger, wrappers fimap e sqlmap). Instale com SVN de onde você quiser armazená-los:
- Instalação FIMAP: svn checkout http://fimap.googlecode.com/svn/trunk/ fimap
- cd fimap/; chmod +x fimap.py; ./fimap.py --help
- Instalação SQLMAP: svn checkout https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap
- cd sqlmap/; chmod +x sqlmap.py; ./sqlmap.py --help
- Instalação NMAP: svn co https://svn.nmap.org/nmap nmap
- cd nmap/; ./configure; make; sudo make install; nmap --help
NOTA: A instância do FIMAP precisa ser a versão SVN, pois contém recursos usados que não estão incluídos na versão padrão (ou na que vem com o BackTrack por padrão, --bmin, --bmax, -D + opções....) então exclua sua cópia antiga ou apenas instale lado a lado, como preferir...
Você pode inserir todas as informações de caminho no arquivo BinGoo nas linhas 14-21 na seção de configuração para ajustar conforme necessário.
Simplesmente escolha o mecanismo de busca que deseja usar no menu principal e siga as instruções. Você pode executar um único dork com base na sua entrada do usuário e ser tão personalizado quanto quiser, OU pode apontar para um arquivo de dork. Incluí alguns com o pacote padrão que podem ser encontrados no diretório dorks/ dentro da pasta BinGoo/. Você pode apontar para qualquer lugar, apenas certifique-se de que haja um dork por linha para não bagunçar as coisas. Depois que todas as informações forem fornecidas, a ferramenta fará sua mágica e gerará arquivos de links de saída contendo todos os resultados. Você obterá um arquivo chamado b-links.txt para pesquisas Bing e g-links.txt para pesquisas Google.
NOTA: O dorker do Google não contorna mais as restrições do Google, mas se você escanear e depois analisar ou escanear com Google, depois escanear com Bing, depois Analisar, você manterá os bloqueios ao mínimo e não deve notar problemas. Se você não obtiver resultados do Google, provavelmente é devido a um bloqueio temporário de IP, apenas use Bing até que ele atualize e desapareça (observe o primeiro conselho para evitar essa situação).
Esta é minha maneira de permitir que os usuários definam o tipo de domínio para suas pesquisas. Configurei uma lista pré-construída de dorks que uso para esta opção (dorks/site.lst) que você pode modificar se quiser. Ela executa uma varredura de lista contra o TIPO DE SITE ou CÓDIGO DE PAÍS fornecido pelo usuário e gera os resultados de links em um arquivo que incluirá o código Geo ou Tipo de Site fornecido para facilitar o rastreamento.
Opções para Bing Geo Dorker incluem:
AC AD AE AF AG AI AL AM AO AQ AR AS AT AU AW AX AZ BA BB BD BE BF BG BH BI BJ BM BN BO BR BS BT BW BY BZ
CA CC CD CF CG CH CI CK CL CM CN CO CR CU CV CX CY CZ DE DJ DK DM DO DZ EC EE EG ER ES ET EU FI FJ FK FM FO FR
GA GD GE GF GG GH GI GL GM GN GP GQ GR GS GT GU GW GY HK HM HN HR HT HU ID IE IL IM IN IO IQ IR IS IT JE JM JO JP
KE KG KH KI KM KN KP KR KW KY KZ LA LB LC LI LK LR LS LT LU LV LY MA MC MD ME MG MH MK ML MM MN MO MP MQ MR MS MT MU MV MW MX MY MZ
NA NC NE NF NG NI NL NO NP NR NU NZ OM PA PE PF PG PH PK PL PM PN PR PS PT PW PY QA RE RO RS RU RW
SA SB SC SD SE SG SH SI SK SL SM SN SO SR SS ST SV SY SZ TC TD TF TG TH TJ TK TL TM TN TO TR TT TV TW TZ
UA UG UK US UY UZ VA VC VE VG VI VN VU WF WS YE ZA ZM ZW
BIZ COM INFO NET ORG AERO ASIA CAT COOP EDU GOV INT JOBS MIL MOBI MUSEUM TEL TRAVEL XXX
Este módulo executará uma varredura de lista usando dorks/sharedhosting.lst contra um IP ou nome de site fornecido pelo usuário para ver se há outros sites no mesmo servidor que possam ter possíveis vulnerabilidades. Você pode reduzir ou expandir o arquivo de dork usado conforme desejar.
Este é outro script que escrevi separadamente e decidi incorporar ao mix, pois acho útil o tempo todo, então imaginei que outros também o achariam. Ele está na pasta plugins e é chamado pelo script principal através das opções de menu. Ele usa algumas ferramentas internas e alguns sites online para coletar informações sobre um site alvo. Ele executará uma verificação no Ranking Alexa, verificação de hospedagem compartilhada SameIP, verificação de hospedagem compartilhada Bing, verificação de subdomínio, informações whois e uma varredura nmap rápida. Juntos, isso pode fornecer uma riqueza de informações com quase nenhum alvo direto (você pode comentar a varredura nmap se quiser diminuir um pouco).
Esta opção leva você a uma nova seção de menu onde você pode realizar atividades pós-dorking. Aqui está uma visão geral rápida das opções disponíveis neste menu:
Analisar arquivo de links do Bing: esta opção analisará APENAS o arquivo b-links.txt gerado por uma pesquisa Bing no menu principal
Analisar arquivo de links do Google: esta opção analisará APENAS o arquivo g-links.txt gerado por uma pesquisa Google no menu principal
Analisar AMBOS arquivos de links do Google e Bing: esta opção combina os dois arquivos em um único arquivo e depois executa a verificação de análise no novo arquivo.
Analisar meu arquivo de links: Esta é uma opção que permite apontar a ferramenta para seu próprio arquivo de links. Pode ser qualquer arquivo que você quiser, desde que tenha um link por linha
NOTA: as opções de análise acima executam uma verificação de injeção e regex nas páginas para verificar sinais comuns de vulnerabilidades de injeção e classificam de acordo. Você pode verificar o código fonte para regex se quiser adicionar ou remover algo das listas usadas. Os resultados positivos são filtrados na pasta results/ e classificados com base em como ou o que foi encontrado. O regex positivo é claramente rotulado como LFI ou SQL e no terminal inclui até a linha onde foi encontrado, o que é útil para determinar o que é lixo e o que é real. O arquivo Possibles.results está cheio de páginas onde a página injetada retornou uma perda de 85% de texto E teve uma redução no número de linhas da tabela (uma indicação decente de que a injeção causou alteração, também indicando uma possível vulnerabilidade), não é muito preciso, mas é melhor marcar e revisar manualmente do que omitir completamente. Se você tiver um método melhor, por favor compartilhe comigo para que eu possa melhorar esta função :) Pequeno problema quando vulnerabilidades consecutivas são identificadas, fazendo com que o próximo terceiro site seja marcado como vulnerável quando não é, testes de validação adicionais eliminarão esses, mas este é seu aviso de que não é 100% perfeito.
Este é meu localizador de admin caseiro. Ele usa uma pequena lista de palavras (plugins/admin.lst) e julga a resposta do servidor e relata de acordo. Você pode adicionar à lista o quanto quiser. O código fonte foi codificado para otimizar e emular multithreading para lidar com listas maiores, se/quando necessário. A lista padrão funciona muito bem.
Isso leva você a outro submenu onde pode optar por executar meu script validador caseiro ou pode executar meu wrapper FIMAP para confirmar vulnerabilidades LFI. Meu testador não funciona 100% e está em andamento, mas incluído caso alguém queira me ajudar a fazê-lo funcionar um pouco melhor, apenas para mostrar que pode ser feito em bash :) O wrapper FIMAP funciona muito bem! Ele permite que você escolha se deseja executar a varredura contra um único site, o arquivo results/LFI.results padrão gerado após uma execução de análise bem-sucedida, ou pode apontá-lo para seu próprio arquivo de links para testar. Isso significa que você pode processar um de cada vez ou em lote!
Muito semelhante à seção de ferramentas LFI. Criei um contador de colunas caseiro para vulnerabilidades verbosas. Funciona razoavelmente bem, mas ainda está em desenvolvimento. Como backup, criei um script wrapper SQLMAP para permitir que você os passe para validação pelo SQLMAP com certeza. Como no wrapper LFI, você pode optar por executar contra um único site, o arquivo results/SQLi.results padrão da fase de análise, ou um arquivo personalizado de sua escolha com um link por linha para testar em lote.
A opção curl --ssl não é reconhecida na instalação padrão do curl do BackTrack. Basta removê-la da função curl_magic() dentro do script principal bingoo (linha 474 e 475) e você ficará bem.
Se você não estiver usando a versão SVN do FIMAP, precisará remover os argumentos "--bmin=4 --bmax=9 -D --dot-trunc-also-unix" de todas as três (3) ocorrências dentro do script LFI localizado no diretório plugins/ (linha 77, linha 96 e linha 109). Eventualmente, isso será incluído em versões atualizadas do FIMAP e, portanto, em instalações padrão, mas até lá precisamos trabalhar com SVN para melhores resultados. Lide com isso :p
Ocasionalmente, a formatação do SQLMAP fica bagunçada no terminal. Os resultados e o fluxo do processo devem ocorrer normalmente, então não se preocupe com isso. Se precisar ver os resultados mais claramente, basta abrir a pasta sqlmap/output/ e visualizar o arquivo de log para ver os detalhes completos da varredura SQLMAP. Deixe-o executar, pois se você não obtiver uma saída limpa, podem ficar alguns processos rodando em segundo plano. Você pode tentar matá-los com algum comando como este: ps aux | grep bingoo | cut -d' ' -f6 | while read line; do kill -9 $line; done; Se não funcionar, você saberá porque ainda há fluxo na tela do terminal, mas isso deve matar todas as instâncias do bingoo se estiverem rodando em segundo plano. Você também pode repetir para "curl" se alguns threads escaparem mesmo após o primeiro tiro usando "bingoo" :)
Você pode pressionar CTRL+C a qualquer momento para abortar uma sessão ativa e a maioria dos processos ativos será morta e todo o trabalho em andamento será despejado no arquivo crash.results para que você não perca tudo completamente. Este projeto é um trabalho constante em andamento, portanto, mudanças e atualizações podem ocorrer com o tempo. Novamente, se você tiver perguntas, sugestões ou melhorias e contribuições, pode me enviar um e-mail para [email protected]
Que fique também registrado que não assumo de forma alguma qualquer responsabilidade por qualquer coisa que você fizer com esta ferramenta. Use por sua conta e risco. Seja seguro e até a próxima, divirta-se!
Saudações, H.R.
#EOF