Enumeração em Larga Escala de Subdomínios a partir do ASN
Utilizando Sistemas Autônomos e Port Scan para realizar enumeração de subdomínios em larga escala.
Table of Contents
- Introdução
- TL;DR
- O que é um ASN?
- Metodologia
- Tendo acesso ao ASN do alvo
- Pegando todos possíveis endereços IPv4 dos CIDR do AS
- Realizando scan de portas com masscan
- Transformando número em nome
- O que fazer agora?
- Cuidado!
Introdução
Olá, hoje iremos falar sobre uma das diversas técnica existentes de enumeração de subdomínios que foi utilizada por membros da KATRINASEC em testes de larga escala em programas de Bug Bounty com o objetivo de aumentar a quantidade de superfícies de ataque e explorar tecnologias específicas.
TL;DR
Enumeração de subdomínios é um dos principais métodos na etapa de reconhecimento em pentest, atividades de red team, bug bounty e etc. Existem diversas técnicas e ferramentas para se fazer uma boa enumeração e ter resultados agradáveis.
Utilizaremos o programa de Bug Bounty da AT&T como exemplo para demonstração prática da metodologia completa.
O que é um ASN?
Um sistema autônomo (AS) pode ser considerado uma rede ou um grupo de redes que compõem a Internet. Cada AS tem sua própria política de roteamento, controla conjuntos específicos de endereços (CIDR) e tem seu próprio número de identificação, o que chamamos de ASN.

Atualmente, muitas organizações tem o seu próprio AS enquanto outras acabam utilizando AS de terceiros para hospedarem seus serviços. Nessa metodologia de enumeração focaremos em analisar organizações com AS próprio.
Metodologia
ASN
└─► RADB Whois ──► ranges.txt (CIDRs)
└─► Masscan ──► masscan.gnmap (IPs com portas abertas)
└─► awk ──► hosts (lista de IPs)
└─► dnsx (PTR lookup) ──► subs-hosts.txt (hostnames)
└─► [Próximas etapas de recon]
Tendo acesso ao ASN do alvo
Existem diferentes formas de descobrir o ASN do seu alvo, nos utilizamos o website da Hurricane Electric Internet Services e fizemos uma pesquisa sobre o domínio alvo, no nosso caso att.com.
https://bgp.he.net/dns/{dominio-alvo}#_ipinfo

Pegando todos possíveis endereços IPv4 dos CIDR do AS
Com o valor do ASN do nosso alvo agora podemos iniciar a enumeração. Primeiro vamos pegar todos os possíveis blocos de rede que fazem parte do AS e separar em um arquivo de texto:

Comando
whois -h whois.radb.net -- '-i origin AS-NUMBER' | \\
grep -Eo '([0-9.]+){4}/[0-9]+' > ranges.txt
Realizando scan de portas com masscan
Com o CIDR poderemos iniciar um scan de possíveis portas utilizadas pelos protocolos http e https em todos os possíveis endereços IPv4:

Utilizaremos o comando awk para pegar os apenas os endereços:

Comandos:
masscan -iL ranges.txt -p80,443,8080,8000,8443,8081 --rate=10000 -oG masscan.gnmap
awk '/Host: / {print $4}' masscan.gnmap > hosts
Transformando número em nome
Agora que temos os hosts “vivos” e funcionais, podemos trabalhar com eles em duas perspectivas: números (IPv4) e nomes (DNS). Existem diferentes maneiras de fazer um ip-reverse para obter o nome do endereço, escolhemos mostrar utilizando a ferramenta dnsx:

Comando:
cat hosts | dnsx -resp-only -ptr > rDNS-hosts.txt
O que fazer agora?
Reconhecimento é apenas uma etapa do processo. Não adianta ter o recurso se ele não for utilizado da maneira correta. Os próximos passos podem ser:
- Tentar identificar tecnologias específicas
- Tentar identificar hosts com vulnerabilidades conhecidas
- Realizar probing, content discovery e etc...
Cuidado!
Os testes acima foram realizados em um ambiente que permitia esse tipo de atividade. Tenha autorização antes de realizar qualquer tipo de atividade desse gênero!
Keep learning and hacking like a hurricane.
Sua infraestrutura está realmente protegida?
Não espere um ataque real para descobrir suas falhas. Agende um Diagnóstico com a KATRINASEC.
Solicitar Contato Agora