hacktricks/pentesting-web/domain-subdomain-takeover.md

127 lines
10 KiB
Markdown
Raw Normal View History

2022-06-06 22:28:05 +00:00
# Domain/Subdomain takeover
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Support HackTricks</summary>
2023-12-31 01:25:17 +00:00
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
2022-06-06 22:28:05 +00:00
2023-01-01 16:19:07 +00:00
\
Use [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_term=trickest&utm_content=domain-subdomain-takeover) to easily build and **automate workflows** powered by the world's **most advanced** community tools.\
Get Access Today:
2022-06-06 22:28:05 +00:00
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}
2022-04-28 16:01:33 +00:00
2022-06-06 22:28:05 +00:00
## Domain takeover
Se scopri un dominio (domain.tld) che è **utilizzato da qualche servizio all'interno dell'ambito** ma la **società** ha p**e**rduto la **proprietà** di esso, puoi provare a **registrarlo** (se abbastanza economico) e far sapere alla società. Se questo dominio sta ricevendo alcune **informazioni sensibili** come un cookie di sessione tramite il parametro **GET** o nell'intestazione **Referer**, questa è sicuramente una **vulnerabilità**.
2022-06-06 22:28:05 +00:00
### Subdomain takeover
Un sottodominio della società punta a un **servizio di terze parti con un nome non registrato**. Se puoi **creare** un **account** in questo **servizio di terze parti** e **registrare** il **nome** in uso, puoi eseguire il takeover del sottodominio.
Ci sono diversi strumenti con dizionari per controllare possibili takeover:
* [https://github.com/EdOverflow/can-i-take-over-xyz](https://github.com/EdOverflow/can-i-take-over-xyz)
* [https://github.com/blacklanternsecurity/bbot](https://github.com/blacklanternsecurity/bbot)
2022-08-12 14:25:49 +00:00
* [https://github.com/punk-security/dnsReaper](https://github.com/punk-security/dnsReaper)
* [https://github.com/haccer/subjack](https://github.com/haccer/subjack)
* [https://github.com/anshumanbh/tko-sub](https://github.com/anshumanbh/tko-subs)
* [https://github.com/ArifulProtik/sub-domain-takeover](https://github.com/ArifulProtik/sub-domain-takeover)
* [https://github.com/SaadAhmedx/Subdomain-Takeover](https://github.com/SaadAhmedx/Subdomain-Takeover)
* [https://github.com/Ice3man543/SubOver](https://github.com/Ice3man543/SubOver)
* [https://github.com/m4ll0k/takeover](https://github.com/m4ll0k/takeover)
* [https://github.com/antichown/subdomain-takeover](https://github.com/antichown/subdomain-takeover)
2023-01-13 10:30:46 +00:00
* [https://github.com/musana/mx-takeover](https://github.com/musana/mx-takeover)
* [https://github.com/PentestPad/subzy](https://github.com/PentestPad/subzy)
#### Scanning for Hijackable Subdomains with [BBOT](https://github.com/blacklanternsecurity/bbot):
I controlli per il takeover dei sottodomini sono inclusi nell'enumerazione predefinita dei sottodomini di BBOT. Le firme sono estratte direttamente da [https://github.com/EdOverflow/can-i-take-over-xyz](https://github.com/EdOverflow/can-i-take-over-xyz).
```bash
bbot -t evilcorp.com -f subdomain-enum
```
### Generazione di takeover di sottodomini tramite DNS Wildcard
Quando viene utilizzato un wildcard DNS in un dominio, qualsiasi sottodominio richiesto di quel dominio che non ha un indirizzo diverso esplicitamente sarà **risolto alle stesse informazioni**. Questo potrebbe essere un indirizzo IP A, un CNAME...
2023-01-02 14:30:12 +00:00
Ad esempio, se `*.testing.com` è wildcard a `1.1.1.1`. Allora, `not-existent.testing.com` punterà a `1.1.1.1`.
2023-01-02 14:30:12 +00:00
Tuttavia, se invece di puntare a un indirizzo IP, l'amministratore di sistema lo punta a un **servizio di terze parti tramite CNAME**, come un **sottodominio github** per esempio (`sohomdatta1.github.io`). Un attaccante potrebbe **creare la propria pagina di terze parti** (in Github in questo caso) e dire che `something.testing.com` punta lì. Perché, il **CNAME wildcard** consentirà all'attaccante di **generare sottodomini arbitrari per il dominio della vittima che puntano alle sue pagine**.
2023-01-02 14:30:12 +00:00
Puoi trovare un esempio di questa vulnerabilità nel report CTF: [https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api](https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api)
2023-01-02 14:30:12 +00:00
## Sfruttare un takeover di sottodominio
Il takeover di sottodominio è essenzialmente uno spoofing DNS per un dominio specifico su Internet, consentendo agli attaccanti di impostare record A per un dominio, portando i browser a visualizzare contenuti dal server dell'attaccante. Questa **trasparenza** nei browser rende i domini vulnerabili al phishing. Gli attaccanti possono impiegare [_typosquatting_](https://en.wikipedia.org/wiki/Typosquatting) o [_Doppelganger domains_](https://en.wikipedia.org/wiki/Doppelg%C3%A4nger) per questo scopo. Sono particolarmente vulnerabili i domini in cui l'URL in un'email di phishing appare legittimo, ingannando gli utenti e eludendo i filtri antispam a causa della fiducia intrinseca del dominio.
Controlla questo [post per ulteriori dettagli](https://0xpatrik.com/subdomain-takeover/)
2024-02-10 13:03:23 +00:00
### **Certificati SSL**
I certificati SSL, se generati dagli attaccanti tramite servizi come [_Let's Encrypt_](https://letsencrypt.org/), aggiungono legittimità a questi domini falsi, rendendo gli attacchi di phishing più convincenti.
### **Sicurezza dei Cookie e Trasparenza del Browser**
La trasparenza del browser si estende anche alla sicurezza dei cookie, governata da politiche come la [Same-origin policy](https://en.wikipedia.org/wiki/Same-origin_policy). I cookie, spesso utilizzati per gestire sessioni e memorizzare token di accesso, possono essere sfruttati tramite takeover di sottodominio. Gli attaccanti possono **raccogliere cookie di sessione** semplicemente indirizzando gli utenti a un sottodominio compromesso, mettendo a rischio i dati e la privacy degli utenti.
### **Email e Takeover di Sottodominio**
Un altro aspetto del takeover di sottodominio coinvolge i servizi email. Gli attaccanti possono manipolare **record MX** per ricevere o inviare email da un sottodominio legittimo, aumentando l'efficacia degli attacchi di phishing.
### **Rischi di Ordine Superiore**
Ulteriori rischi includono il **takeover di record NS**. Se un attaccante ottiene il controllo su un record NS di un dominio, può potenzialmente indirizzare una parte del traffico a un server sotto il proprio controllo. Questo rischio è amplificato se l'attaccante imposta un alto **TTL (Time to Live)** per i record DNS, prolungando la durata dell'attacco.
### Vulnerabilità del Record CNAME
Gli attaccanti potrebbero sfruttare record CNAME non reclamati che puntano a servizi esterni che non sono più utilizzati o sono stati dismessi. Questo consente loro di creare una pagina sotto il dominio fidato, facilitando ulteriormente il phishing o la distribuzione di malware.
2024-02-05 20:00:40 +00:00
### **Strategie di Mitigazione**
2024-02-10 13:03:23 +00:00
Le strategie di mitigazione includono:
1. **Rimuovere i record DNS vulnerabili** - Questo è efficace se il sottodominio non è più necessario.
2. **Reclamare il nome di dominio** - Registrare la risorsa con il rispettivo fornitore di cloud o riacquistare un dominio scaduto.
3. **Monitoraggio regolare per vulnerabilità** - Strumenti come [aquatone](https://github.com/michenriksen/aquatone) possono aiutare a identificare domini suscettibili. Le organizzazioni dovrebbero anche rivedere i loro processi di gestione dell'infrastruttura, assicurandosi che la creazione di record DNS sia l'ultimo passo nella creazione delle risorse e il primo passo nella distruzione delle risorse.
Per i fornitori di cloud, verificare la proprietà del dominio è cruciale per prevenire takeover di sottodomini. Alcuni, come [GitLab](https://about.gitlab.com/2018/02/05/gitlab-pages-custom-domain-validation/), hanno riconosciuto questo problema e implementato meccanismi di verifica del dominio.
2024-02-10 13:03:23 +00:00
## Riferimenti
2024-02-04 16:10:29 +00:00
* [https://0xpatrik.com/subdomain-takeover/](https://0xpatrik.com/subdomain-takeover/)
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
2022-06-06 22:28:05 +00:00
2023-01-01 16:19:07 +00:00
\
Usa [**Trickest**](https://trickest.com/?utm_source=hacktricks&utm_medium=text&utm_campaign=ppc&utm_term=trickest&utm_content=domain-subdomain-takeover) per costruire e **automatizzare flussi di lavoro** alimentati dagli **strumenti comunitari più avanzati** del mondo.\
Accedi oggi:
2022-04-28 16:01:33 +00:00
{% embed url="https://trickest.com/?utm_source=hacktricks&utm_medium=banner&utm_campaign=ppc&utm_content=domain-subdomain-takeover" %}
2022-04-28 16:01:33 +00:00
{% hint style="success" %}
Impara e pratica Hacking AWS:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Impara e pratica Hacking GCP: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<summary>Supporta HackTricks</summary>
2023-12-31 01:25:17 +00:00
* Controlla i [**piani di abbonamento**](https://github.com/sponsors/carlospolop)!
* **Unisciti al** 💬 [**gruppo Discord**](https://discord.gg/hRep4RUj7f) o al [**gruppo telegram**](https://t.me/peass) o **seguici** su **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Condividi trucchi di hacking inviando PR ai** [**HackTricks**](https://github.com/carlospolop/hacktricks) e [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repos di github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}