> 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/de/reconnaissance/subdomains.md).

# Subdomains

Techniken zur Subdomain-Enumeration zum Auffinden öffentlicher DNS-Einträge, Certificate-Transparency-Einträge, indexierter Hosts und offener Infrastruktur.

Die Aufzählung von Subdomains erweitert die Angriffsfläche des Ziels, indem öffentliche Hosts, DNS-Einträge, virtuelle Hosts, Certificate-Transparency-Einträge und indexierte Infrastruktur entdeckt werden.

{% hint style="info" %}
Es gibt verschiedene Techniken, um die mit einer Website verbundenen Subdomains zu entdecken. Diese Techniken können mithilfe von Online-Tools oder direkt über die Konsole durchgeführt werden und variieren je nach Ziel und verfügbaren Ressourcen. Hier sind mehrere Tools, die Sie für diese Aufgabe verwenden können, mit detaillierten Beispielbefehlen.
{% endhint %}

## Gobuster:

> Gobuster ist ein sehr beliebtes Tool, um Subdomains schnell zu entdecken, indem DNS-Abfragen gegen eine Website ausgeführt werden. Es verwendet eine Wortliste, um verschiedene Kombinationen von Subdomains zu testen. Hier ist ein Beispiel für die Verwendung in der Befehlszeile:

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

* **-u**: Gibt die URL der Ziel-Website an.
* **-w**: Legt den Pfad der Wortliste fest, die zum Testen von Subdomains verwendet werden soll.
* **-t**: Legt die Anzahl der Threads fest (in diesem Fall 100), was die Suchgeschwindigkeit erhöht.
* /| grep -v "403": HTTP-403-Antworten ignorieren.

<figure><img src="https://2955439919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-35ae065696aabc65359688f6e6e94e5871227cc4%2Fimage%20(1081).png?alt=media" alt=""><figcaption></figcaption></figure>

## Wfuzz:

> Wfuzz ist ein weiteres Fuzzing-Tool, mit dem Sie verschiedene Subdomains testen können, indem Sie HTTP-Antworten ausnutzen. Um nach Subdomains zu suchen, verwenden Sie den folgenden Befehl:

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

* **-c**: aktiviert den Farbmodus für eine bessere Lesbarkeit der Ergebnisse.
* **-t 20**: legt die Anzahl gleichzeitiger Threads fest (hier 20), um den Prozess zu beschleunigen.
* **-H "Host: FUZZ.website.com"**: ersetzt "FUZZ" durch jeden Wert in der Liste, um mögliche Subdomains zu testen.
* **--hc=404**: HTTP-404-Antworten ignorieren.

<figure><img src="https://2955439919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-eebcd6339da3c4d77f53017f997f2b0fe5c2dc27%2Fimage%20(1082).png?alt=media" alt=""><figcaption></figcaption></figure>

## **Sublist3r**

> Sublist3r ist ein Python-Tool, das entwickelt wurde, um Website-Subdomains mithilfe von OSINT aufzuzählen. Es verwendet viele Suchmaschinen wie Google, Yahoo, Bing, Baidu und Ask sowie andere Quellen wie Netcraft, Virustotal, ThreatCrowd, DNSdumpster und ReverseDNS1.

* **Sublist3r**: Tool zum Aufzählen von Subdomains, zum Beispiel:/ `sublist3r -d website.com`

<figure><img src="https://2955439919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-74b9ebd3455982b3108fdf563b52aa41f2a0495a%2Fimage%20(622).png?alt=media" alt="" width="518"><figcaption></figcaption></figure>

## Google-Dorks:

> Google-Dorks sind spezielle Abfragen, mit denen Sie Google verwenden können, um bestimmte Informationen zu finden. Um die Subdomains einer Website zu entdecken, können Sie die folgende Abfrage verwenden:

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

Dieser Befehl zeigt alle indexierten Subdomains von **website.com** unter Verwendung des Google-Index an. Diese Technik ist besonders nützlich, um schnell eine Liste öffentlich zugänglicher Subdomains zu erhalten.

<figure><img src="https://2955439919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-66a3006559b5e06f03ac149bd65ce1b759901838%2F%7BAA38A940-2299-4F46-B65F-FC7056F8DA2A%7D.png?alt=media" alt=""><figcaption></figcaption></figure>

## DNSDumpster:

> [DNSDumpster ](https://dnsdumpster.com/)ist ein kostenloses Online-Tool, das verwendet wird, um Informationen über das Domain Name System (DNS) einer Website zu sammeln. Es ist besonders nützlich beim Penetration Testing (Pentesting), um Informationen über die Netzwerk-Infrastruktur einer Organisation zu erhalten. Mit DNSDumpster können Sie Details zu den öffentlichen DNS-Einträgen einer Domain abrufen und wichtige Infrastrukturkomponenten entdecken, wie zum Beispiel:

* Die Server.
* Subdomains.
* Die zugehörigen IP-Adressen.
* Andere Netzwerkdienste.

<figure><img src="https://2955439919-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fl4EVJpcOrsgjSGsLI7p2%2Fuploads%2Fgit-blob-b585c9b58fb1efc68c6c0ad43a8b11c0ce534d9f%2F%7BDBF2DD2D-392C-4C3E-AAD8-6F31141AFD5F%7D.png?alt=media" alt=""><figcaption></figcaption></figure>

## Passive Domänenaufzählung

Verwenden Sie zunächst passive Quellen, um Kandidaten-Subdomains zu sammeln, ohne die Zielinfrastruktur direkt zu berühren. Ersetzen Sie `target.com` durch die autorisierte Domain.

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

### Certificate Transparency

Abfrage `crt.sh` und die rohe JSON-Ausgabe prüfen:

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

Einzigartige Hostnamen aus den Certificate-Transparency-Ergebnissen extrahieren:

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

### Project Sonar

Sammeln Sie Subdomains, zugehörige TLDs und Reverse-DNS-Ergebnisse aus öffentlichen Datensätzen im Stil von 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
```

Reverse-DNS-Lookup für eine IP oder einen CIDR-Bereich:

```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
```

### Sammlung aus mehreren Quellen

Ausführen `theHarvester` gegen mehrere konfigurierte Quellen:

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

### Subdomains in IPs auflösen

Bestätigte Subdomains in eine eindeutige IP-Liste umwandeln:

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

### IPs mit Shodan anreichern

Verwenden Sie Shodan, um die exponierten Dienste für jede aufgelöste IP-Adresse zu überprüfen:

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

## Zusätzliche OSINT-Ressourcen

Phonebook und andere öffentliche OSINT-Ressourcen sind zentralisiert in [People and Breach Research](/de/hacking-tools/osint/people-and-breach-research.md). Ressourcen zu Website-Infrastruktur, Shodan und archivierten URLs sind zentralisiert in [Websites und Infrastruktur](/de/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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
