
Script Bash para reconhecimento passivo que consulta RIRs e servidores de rota BGP para descobrir blocos de rede, ASNs e faixas CIDR da organização alvo durante a coleta de inteligência em testes de penetração.
Um script Bash em Linux para descobrir os netblocks, ou faixas (em notação CIDR) pertencentes à organização alvo durante a fase de coleta de inteligência de um teste de penetração. Esta informação é mantida pelos cinco Registros Regionais da Internet (RIRs):
ARIN (América do Norte)
RIPE (Europa/Ásia/Oriente Médio)
APNIC (Ásia/Pacífico)
LACNIC (América Latina)
AfriNIC (África)
Além de netblocks e endereços IP, os Números de Sistema Autônomo (ASNs) também são de interesse. ASNs são usados como parte do Protocolo de Rota de Fronteira (BGP) para identificar exclusivamente cada rede na Internet. Organizações alvo podem ter seus próprios ASNs devido ao tamanho de sua rede ou como resultado de caminhos de serviço redundantes de provedores de serviço peered. Esses ASNs revelarão netblocks adicionais pertencentes à organização.
ipcalc (para consultas RIPE, APNIC, LACNIC, AfriNIC)
Uma nota sobre o LACNIC antes de mergulhar no uso. O LACNIC permite apenas consultas de faixa de rede, ASN, Org Handle ou PoC Handle. Isso não nos ajuda a localizar esses valores com base no nome da organização. No entanto, eles publicam uma lista de todas as faixas atribuídas em um servidor FTP publicamente acessível, juntamente com seus limites de rate-limiting. Portanto, há um arquivo de dados acompanhante, que o script verifica, usado para realizar consultas LACNIC localmente. O script inclui uma opção de atualização -r, que pode ser usada para atualizar esses dados em um intervalo de sua escolha. O tempo de execução aproximado é pouco menos de 28 horas.
O script sem opções especificadas consultará o ARIN e um pool de servidores de rota BGP. O servidor de rota é selecionado aleatoriamente em tempo de execução. A opção -h lista a ajuda:

As opções podem ser usadas em qualquer combinação, todas ou nenhuma. Infelizmente, nenhum dos
outros RIRs menciona a notação CIDR real da faixa, então ipcalc é usado para realizar
essa função. Se não estiver instalado no seu sistema, o script o instalará para você.
Nos prompts, insira o nome da organização, o domínio de e-mail e se os códigos de país são usados como parte do e-mail. Se respondido S para códigos de país, você será perguntado se eles precedem o nome de domínio ou são anexados ao TLD. Um diretório será criado para os arquivos de saída em /tmp/. Se o diretório for encontrado existente, você será perguntado se deseja sobrescrever. Se respondido N, um timestamp será anexado ao nome do diretório.

O script consulta cada RIR, bem como um servidor de rota BGP, perguntando ao longo do caminho se os registros foram localizados. Após a conclusão, três arquivos serão gerados: um CSV baseado em Org Handle, um CSV baseado em PoC Handle e um arquivo delimitado por linha de todas as faixas localizadas em notação CIDR.

Cancelar o script a qualquer momento removerá quaisquer arquivos de trabalho temporários e o diretório criado para os arquivos de saída resultantes.

Deve-se notar que, devido à semelhança em alguns nomes de organizações, você pode obter resultados não relacionados ao alvo. Os arquivos CSV fornecerão os handles associados e URLs para validação adicional quando necessário. Também é possível que funcionários da organização alvo tenham usado seu endereço de e-mail corporativo para registrar seus próprios domínios. Estes também serão encontrados nos resultados.
docker build -t hardcidr .
Construindo a imagem hardcidr
docker run -v $(pwd):/tmp -it hardcidr
Executando o container. A saída será salva no diretório atual
Para mais informações, confira o post no blog do site TrustedSec: Enumeração de Roteamento Inter-Domínio Elegante