Domain/Subdomain takeover

Reading time: 5 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks

Domain takeover

Wenn Sie eine Domain (domain.tld) entdecken, die von einem Dienst innerhalb des Umfangs verwendet wird, aber das Unternehmen hat die Eigentümerschaft daran verloren, können Sie versuchen, sie zu registrieren (wenn sie günstig genug ist) und das Unternehmen darüber informieren. Wenn diese Domain einige sensible Informationen wie ein Sitzungscookie über einen GET-Parameter oder im Referer-Header erhält, ist dies mit Sicherheit eine Schwachstelle.

Subdomain takeover

Eine Subdomain des Unternehmens zeigt auf einen nicht registrierten Drittanbieterdienst. Wenn Sie ein Konto in diesem Drittanbieterdienst erstellen und den Namen, der verwendet wird, registrieren können, können Sie den Subdomain Takeover durchführen.

Es gibt mehrere Tools mit Wörterbüchern, um mögliche Übernahmen zu überprüfen:

Subdomain Takeover Generation via DNS Wildcard

Wenn ein DNS-Wildcard in einer Domain verwendet wird, wird jede angeforderte Subdomain dieser Domain, die keine andere Adresse explizit hat, auf die gleichen Informationen aufgelöst. Dies könnte eine A-IP-Adresse, ein CNAME...

Zum Beispiel, wenn *.testing.com auf 1.1.1.1 wildcarded ist. Dann wird not-existent.testing.com auf 1.1.1.1 zeigen.

Wenn der Sysadmin jedoch anstelle einer IP-Adresse auf einen Drittanbieterdienst über CNAME zeigt, wie zum Beispiel eine Github-Subdomain (sohomdatta1.github.io). Ein Angreifer könnte seine eigene Drittanbieter-Seite (in diesem Fall auf GitHub) erstellen und sagen, dass something.testing.com dort hinzeigt. Da das CNAME-Wildcard zustimmt, wird der Angreifer in der Lage sein, willkürliche Subdomains für die Domain des Opfers zu generieren, die auf seine Seiten zeigen.

Ein Beispiel für diese Schwachstelle finden Sie im CTF-Bericht: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api

Exploiting a subdomain takeover

Der Subdomain Takeover ist im Wesentlichen DNS-Spoofing für eine bestimmte Domain im Internet, das es Angreifern ermöglicht, A-Records für eine Domain festzulegen, wodurch Browser Inhalte vom Server des Angreifers anzeigen. Diese Transparenz in Browsern macht Domains anfällig für Phishing. Angreifer können Typosquatting oder Doppelgänger-Domains zu diesem Zweck verwenden. Besonders anfällig sind Domains, bei denen die URL in einer Phishing-E-Mail legitim erscheint, Benutzer täuscht und Spam-Filter aufgrund des inhärenten Vertrauens der Domain umgeht.

Überprüfen Sie diesen Beitrag für weitere Details

SSL Certificates

SSL-Zertifikate, die von Angreifern über Dienste wie Let's Encrypt generiert werden, erhöhen die Legitimität dieser gefälschten Domains und machen Phishing-Angriffe überzeugender.

Die Transparenz von Browsern erstreckt sich auch auf die Sicherheit von Cookies, die durch Richtlinien wie die Same-origin policy geregelt wird. Cookies, die häufig zur Verwaltung von Sitzungen und zur Speicherung von Anmeldetoken verwendet werden, können durch Subdomain Takeover ausgenutzt werden. Angreifer können Sitzungscookies sammeln, indem sie Benutzer einfach zu einer kompromittierten Subdomain leiten, was die Benutzerdaten und die Privatsphäre gefährdet.

Emails and Subdomain Takeover

Ein weiterer Aspekt des Subdomain Takeover betrifft E-Mail-Dienste. Angreifer können MX-Records manipulieren, um E-Mails von einer legitimen Subdomain zu empfangen oder zu senden, was die Effektivität von Phishing-Angriffen erhöht.

Higher Order Risks

Weitere Risiken umfassen NS-Record-Übernahmen. Wenn ein Angreifer die Kontrolle über einen NS-Record einer Domain erlangt, kann er potenziell einen Teil des Traffics auf einen Server unter seiner Kontrolle umleiten. Dieses Risiko wird verstärkt, wenn der Angreifer eine hohe TTL (Time to Live) für DNS-Records festlegt, wodurch die Dauer des Angriffs verlängert wird.

CNAME Record Vulnerability

Angreifer könnten unbeanspruchte CNAME-Records ausnutzen, die auf externe Dienste zeigen, die nicht mehr verwendet werden oder stillgelegt wurden. Dies ermöglicht es ihnen, eine Seite unter der vertrauenswürdigen Domain zu erstellen, was Phishing oder die Verbreitung von Malware weiter erleichtert.

Mitigation Strategies

Minderungsstrategien umfassen:

  1. Entfernen von anfälligen DNS-Records - Dies ist effektiv, wenn die Subdomain nicht mehr benötigt wird.
  2. Beanspruchen des Domainnamens - Registrieren der Ressource beim jeweiligen Cloud-Anbieter oder Wiedererwerb einer abgelaufenen Domain.
  3. Regelmäßige Überwachung auf Schwachstellen - Tools wie aquatone können helfen, anfällige Domains zu identifizieren. Organisationen sollten auch ihre Infrastrukturmanagementprozesse überarbeiten, um sicherzustellen, dass die Erstellung von DNS-Records der letzte Schritt bei der Ressourcenerstellung und der erste Schritt bei der Ressourcenzerstörung ist.

Für Cloud-Anbieter ist die Überprüfung des Domainbesitzes entscheidend, um Subdomain-Übernahmen zu verhindern. Einige, wie GitLab, haben dieses Problem erkannt und Mechanismen zur Domainverifizierung implementiert.

References

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks