> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/es/reconnaissance/subdomains.md).

# Subdominios

La enumeración de subdominios amplía la superficie de ataque del objetivo al descubrir hosts públicos, registros DNS, hosts virtuales, entradas de transparencia de certificados e infraestructura indexada.

{% hint style="info" %}
Existen varias técnicas para descubrir los subdominios asociados a un sitio web. Estas técnicas pueden realizarse usando herramientas en línea o directamente desde la consola, y varían según los objetivos y los recursos disponibles. Aquí hay varias herramientas que puedes usar para esta tarea, con comandos de ejemplo detallados.
{% endhint %}

## Gobuster:

> Gobuster es una herramienta muy popular para descubrir rápidamente subdominios realizando consultas DNS sobre un sitio web. Utiliza una lista de palabras para probar distintas combinaciones de subdominios. Aquí tienes un ejemplo de su uso en la línea de comandos:

```bash
gobuster vhost -u https://website.com --append-domain -w /usr/share/SecLists/Discovery/DNS/subdomains-top1million-110000.txt -t 100
```

* **-u**: Especifica la URL del sitio web objetivo.
* **-w**: Establece la ruta del archivo de palabras que se usará para probar subdominios.
* **-t**: Establece el número de hilos (en este caso, 100), lo que aumenta la velocidad de búsqueda.
* /| grep -v "403": omite las respuestas HTTP 403.

<figure><img src="/files/e723283f45dbca440fe3da4a979684d75d9b66b2" alt=""><figcaption></figcaption></figure>

## Wfuzz:

> Wfuzz es otra herramienta de fuzzing que te permite probar distintos subdominios explotando las respuestas HTTP. Para buscar subdominios, usa el siguiente comando:

```bash
wfuzz -c -t 100 -w /usr/share/SecLists/Discovery/DNS/subdomains-top1million-5000.txt -H "Host: FUZZ.website.com" https://website.com
```

* **-c**: activa el modo de color para una mejor legibilidad de los resultados.
* **-t 20**: establece el número de hilos simultáneos (aquí, 20) para acelerar el proceso.
* **-H "Host: FUZZ.website.com"**: reemplaza "FUZZ" por cada valor de la lista para probar posibles subdominios.
* **--hc=404**: omite las respuestas HTTP 404.

<figure><img src="/files/cacc55531212871f327af53b54cc6c1a4d0b1a65" alt=""><figcaption></figcaption></figure>

## **Sublist3r**

> Sublist3r es una herramienta de Python diseñada para enumerar subdominios de sitios web usando OSINT. Utiliza muchos motores de búsqueda como Google, Yahoo, Bing, Baidu y Ask, además de otras fuentes como Netcraft, Virustotal, ThreatCrowd, DNSdumpster y ReverseDNS1.

* **Sublist3r**: Herramienta para enumerar subdominios, por ejemplo:/ `sublist3r -d website.com`

<figure><img src="/files/dbb65203d31720d85c5b89ade4b9d88ea7dfbf3b" alt="" width="518"><figcaption></figcaption></figure>

## Dorks de Google:

> Los Dorks de Google son consultas especiales que te permiten usar Google para encontrar información específica. Para descubrir los subdominios de un sitio web, puedes usar la siguiente consulta:

```makefile
site:*.website.com
```

Este comando mostrará todos los subdominios indexados de **website.com** usando el índice de Google. Esta técnica es especialmente útil para obtener rápidamente una lista de subdominios accesibles públicamente.

<figure><img src="/files/37d55226aae6b41e4134cff375e25d3f7923ccd2" alt=""><figcaption></figcaption></figure>

## DNSDumpster:

> [DNSDumpster ](https://dnsdumpster.com/)es una herramienta gratuita en línea utilizada para recopilar información sobre el Sistema de Nombres de Dominio (DNS) de un sitio web. Es especialmente útil en pruebas de penetración (pentesting) para obtener información sobre la infraestructura de red de una organización. Usando DNSDumpster, puedes acceder a detalles de los registros DNS públicos de un dominio y descubrir componentes clave de la infraestructura, como:

* Los servidores.
* Los subdominios.
* Las direcciones IP asociadas.
* Otros servicios de red.

<figure><img src="/files/dbedc45f62f39a6e2eeaa56c348969c16d60add3" alt=""><figcaption></figcaption></figure>

## Enumeración pasiva de dominios

Usa primero fuentes pasivas para recopilar subdominios candidatos sin tocar directamente la infraestructura del objetivo. Reemplaza `target.com` por el dominio autorizado.

```bash
export TARGET="target.com"
```

### Transparencia de Certificados

Consulta `crt.sh` y revisa la salida JSON sin procesar:

```bash
curl -s "https://crt.sh/?q=${TARGET}&output=json" | jq .
```

Extrae nombres de host únicos de los resultados de transparencia de certificados:

```bash
curl -s "https://crt.sh/?q=${TARGET}&output=json" \
  | jq -r '.[] | .name_value, .common_name' \
  | sed 's/\*\.//g' \
  | sort -u
```

### Project Sonar

Recopila subdominios, TLD relacionados y resultados de DNS inverso desde conjuntos de datos públicos al estilo de Project Sonar:

```bash
curl -s "https://sonar.omnisint.io/subdomains/${TARGET}" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/tlds/${TARGET}" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/all/${TARGET}" | jq -r '.[]' | sort -u
```

Búsqueda DNS inversa para una IP o un rango CIDR:

```bash
curl -s "https://sonar.omnisint.io/reverse/192.0.2.10" | jq -r '.[]' | sort -u
curl -s "https://sonar.omnisint.io/reverse/192.0.2.0/24" | jq -r '.[]' | sort -u
```

### Recopilación de múltiples fuentes

Ejecuta `theHarvester` contra múltiples fuentes configuradas:

```bash
while read -r source; do
  theHarvester -d "${TARGET}" -b "$source" -f "${source}-${TARGET}"
done < sources.txt
```

### Resolver subdominios a IPs

Convierte los subdominios confirmados en una lista única de IPs:

```bash
while read -r subdomain; do
  host "$subdomain" | awk '/has address/ {print $4}'
done < subdomains.txt | sort -u > ip-addresses.txt
```

### Enriquecer IPs con Shodan

Usa Shodan para revisar los servicios expuestos para cada dirección IP resuelta:

```bash
while read -r ip; do
  shodan host "$ip"
done < ip-addresses.txt
```

## Recursos adicionales de OSINT

Phonebook y otros recursos públicos de OSINT están centralizados en [Investigación de personas y filtraciones](/es/hacking-tools/osint/people-and-breach-research.md). Los recursos de infraestructura web, Shodan y URL archivadas están centralizados en [Sitios web e infraestructura](/es/hacking-tools/osint/websites-and-infrastructure.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/es/reconnaissance/subdomains.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
