Domain/Subdomain takeover
Last updated
Last updated
Impara e pratica AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Impara e pratica GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Usa Trickest per costruire e automatizzare flussi di lavoro alimentati dagli strumenti comunitari più avanzati al mondo. Accedi oggi:
Se scopri un dominio (domain.tld) che è 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 il parametro GET o nell'intestazione Referer, questa è sicuramente una vulnerabilità.
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:
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
Il takeover di un 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
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 di sottodomini. 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.
Un altro aspetto del takeover di sottodomini coinvolge i servizi email. Gli attaccanti possono manipolare i record MX per ricevere o inviare email da un sottodominio legittimo, aumentando l'efficacia degli attacchi di phishing.
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.
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.
Le strategie di mitigazione includono:
Rimuovere i record DNS vulnerabili - Questo è efficace se il sottodominio non è più necessario.
Rivendicare il nome di dominio - Registrare la risorsa con il rispettivo fornitore di cloud o riacquistare un dominio scaduto.
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.
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)