Domain/Subdomain takeover

Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

Usa Trickest per costruire e automatizzare flussi di lavoro alimentati dagli strumenti comunitari più avanzati al mondo. Accedi oggi:

Domain takeover

Se scopri un dominio (domain.tld) che viene utilizzato da qualche servizio all'interno dell'ambito ma la società ha perso 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 GET parametro o nell'intestazione Referer, questa è sicuramente una vulnerabilità.

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:

Subdomain Takeover Generation via 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...

Ad esempio, se *.testing.com è wildcard a 1.1.1.1. Allora, not-existent.testing.com punterà a 1.1.1.1.

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.

Puoi trovare un esempio di questa vulnerabilità nel write-up CTF: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

Exploiting a subdomain takeover

Il takeover del 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 o Doppelganger domains 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

SSL Certificates

I certificati SSL, se generati dagli attaccanti tramite servizi come Let's Encrypt, aggiungono legittimità a questi domini falsi, rendendo gli attacchi di phishing più convincenti.

La trasparenza del browser si estende anche alla sicurezza dei cookie, governata da politiche come la Same-origin policy. I cookie, spesso utilizzati per gestire sessioni e memorizzare token di accesso, possono essere sfruttati attraverso il takeover del sottodominio. Gli attaccanti possono raccogliere cookie di sessione semplicemente indirizzando gli utenti a un sottodominio compromesso, mettendo in pericolo i dati e la privacy degli utenti.

Emails and Subdomain Takeover

Un altro aspetto del takeover del 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.

Higher Order Risks

Ulteriori rischi includono il takeover dei 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.

CNAME Record Vulnerability

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.

Mitigation Strategies

Le strategie di mitigazione includono:

  1. Rimuovere 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 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, hanno riconosciuto questo problema e implementato meccanismi di verifica del dominio.

References

Usa Trickest per costruire e automatizzare flussi di lavoro alimentati dagli strumenti comunitari più avanzati al mondo. Accedi oggi:

Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks

Last updated