Domain/Subdomain takeover
Last updated
Last updated
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Verwende Trickest, um einfach Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden. Erhalte heute Zugang:
Wenn du eine Domain (domain.tld) entdeckst, die von einem Dienst innerhalb des Geltungsbereichs verwendet wird, aber das Unternehmen die Eigentümerschaft verloren hat, kannst du 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.
Eine Subdomain des Unternehmens zeigt auf einen Drittanbieterdienst mit einem nicht registrierten Namen. Wenn du ein Konto in diesem Drittanbieterdienst erstellen und den Namen, der verwendet wird, registrieren kannst, kannst du den Subdomain-Takeover durchführen.
Es gibt mehrere Tools mit Wörterbüchern, um mögliche Übernahmen zu überprüfen:
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
). Könnte ein Angreifer seine eigene Drittanbieter-Seite (in diesem Fall auf GitHub) erstellen und sagen, dass something.testing.com
dort hinzeigt. Denn der CNAME-Wildcard wird zustimmen, dass der Angreifer in der Lage sein wird, willkürliche Subdomains für die Domain des Opfers zu generieren, die auf seine Seiten zeigen.
Du kannst ein Beispiel für diese Schwachstelle im CTF-Bericht finden: https://ctf.zeyu2001.com/2022/nitectf-2022/undocumented-js-api
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üfe diesen Beitrag für weitere Details
SSL-Zertifikate, wenn sie 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 Browser-Transparenz erstreckt sich auch auf die Cookie-Sicherheit, 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 auf eine kompromittierte Subdomain leiten, was die Benutzerdaten und die Privatsphäre gefährdet.
Ein weiterer Aspekt des Subdomain-Takeovers betrifft E-Mail-Dienste. Angreifer können MX-Records manipulieren, um E-Mails von einer legitimen Subdomain zu empfangen oder zu senden, was die Wirksamkeit von Phishing-Angriffen erhöht.
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.
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.
Minderungsstrategien umfassen:
Entfernen von anfälligen DNS-Records - Dies ist effektiv, wenn die Subdomain nicht mehr benötigt wird.
Beanspruchen des Domainnamens - Registrierung der Ressource beim jeweiligen Cloud-Anbieter oder Rückkauf einer abgelaufenen Domain.
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-Takeovers zu verhindern. Einige, wie GitLab, haben dieses Problem erkannt und Mechanismen zur Domainverifizierung implementiert.
Verwende Trickest, um einfach Workflows zu erstellen und zu automatisieren, die von den fortschrittlichsten Community-Tools der Welt unterstützt werden. Erhalte heute Zugang:
Lerne & übe AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Lerne & übe GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)