Beliebte Suchanfragen

Ein Beitrag von

security brand
//

Dangling DNS in Cloud Infrastrukturen

5.9.2024 | 3 Minuten Lesezeit

Dangling DNS Einträge sind nichts neues. Vergessene, veraltete oder fehlerhafte DNS-Einträge können dazu führen, dass Subdomänen übernommen werden können und beispielsweise bei Phishing-Kampagnen genutzt werden um Geheimnisse von MitarbeiterInnen zu stehlen. Durch dynamische IP-Adressen von schnell wechselnden Ressourcen diverser Cloud-Anbieter, ist die Gefahr DNS-Einträge zu vergessen oder nicht zu aktualisieren stark gestiegen. Im Folgenden wird beispielhaft erklärt wie Dangling DNS Einträge entstehen, wie ein mögliches Angriffsscenario aussehen könnte und wie man sich dagegen schützen kann.

Dangling DNS

Dangling DNS beschreibt eine Sicherheitsanfälligkeit durch veraltete DNS Einträge. Konkret spricht man von Dangling DNS Einträgen, wenn beispielsweise Subdomainkonfigurationen auf IP-Adressen zeigen, die sich nicht mehr im Besitz der Administratoren befinden. Die Ursache dieser veralteten Einträge sind häufig kurzlebige Resourcen oder dynamische IP-Adressen im Cloud Umfeld. Fehlendes Monitoring sorgt zusätzlich dafür, dass diese gefährlichen Konfigurationen nicht erkannt werden.

Wieso ist das besonders bei Cloud-Infrastrukturen?

Schnell wechselnde Resoucen und elastische IP-Adressen sorgen für rasche Veränderungen. Adressen lassen sich schnell und automatisch registrieren und wieder freigeben. Damit ist es beispielsweise denkbar, das IP-Adressen so lange registriert und wieder freigegeben werden, bis die gewünschte Adresse zugewiesen wurde. Amazon AWS erlaubt es zudem Wunsch-IPs aus dem Adresspool der jeweiligen Region zu reservieren sofern diese verfügbar sind.

Das Angriffsscenario

In diesem theoretischen Beispielscenario wird durch einen Angreifer ein Dangling DNS Eintrag identifiziert.

dangle.insecure-coorp.com

Der A-Record-Eintrag zeigt auf eine IP-Adresse aus dem AWS Adresspool.

~ > dangle.insecure-coorp.com

Server:		10.0.0.2
Address:	10.0.0.2#53

Non-authoritative answer:
Name:		dangle.insecure-coorp.com
Address:	52.28.242.149

In diesem fiktiven Beispiel ist die hinterlegte IP-Adresse nicht vergeben, kommt aus dem AWS-Adresspool und kann somit gezielt vom Angreifer mithilfe der aws-cli reserviert werden. Diese Funktionalität ist nicht im web-portal vorhanden und kann nur mit der aws-cli genutzt werden.

aws ec2 allocate-address --domain vpc --region <region> --address <WUNSCH-IP>

Was jetzt noch fehlt, um die übernommene Subdomain nutzen zu können, ist ein gültiges Zertifikat. Let's Encrypt bietet verschiedene Möglichkeiten um zu beweisen, dass eine Domain unter der Kontrolle der Administratoren steht. Die folgenden sind die üblichsten Challenge-Typen:

Die erste Variante ist von den Angreifern nicht nutzbar, da die Kontrolle über die DNS Einträge fehlt. Bei der DNS-Challenge muss ein DNS Eintrag hinterlegt werden, der von Let's Encrpyt vorgegeben wurde und regelmäßig validiert wird.

Die zweite Variante funktioniert allerdings, da unter der neu registrierten IP-Adresse lediglich ein Webserver aufgesetzt werden muss, um die spezifische Let's Encrypt Challenge-response Ressource auszuliefern. Let's Encrypt gibt dabei vor, welche Ressource an welcher Position angeboten werden muss. Bei dieser Variante gibt es also keine Notwendigkeit, Zugriff auf die Domain zu haben. Nach erfolgreicher Validierung besitzt der Angreifer ein gültiges Serverzertifikat für die übernommene Subdomain.

Automatisierung

Auf der diesjährigen Def Con 32 wurde das Thema von Matt Pawloski vorgestellt. Während seiner Analyse entwickelte er das Tool Pay Dirt um automatisch nach Dangling DNS Einträgen in Amazon AWS und Digital Ocean zu suchen. Das Tool iteriert über die reservierten IP-Addressbereiche der Cloud-Anbieter und prüft die DNS Einträge. Wird ein Dangling DNS Eintrag gefunden, versucht das Tool (im Falle von AWS) automatisch die gefundene IP-Adresse zu registrieren. Da Digital Ocean die Registrierung einer Wunsch-IP nicht unterstützt, wird in dem Fall lediglich der fehlerhafte Eintrag ausgegeben.

Gegenmaßnahmen

Eine geeignete Gegenmaßnahmen ist ein gutes Monitoring. DNS Einträge sollten regelmäßig automatisch auf Veränderungen überprüft werden. Bei Veränderung sollte automatisch eine Benachrichtigung an die Administratoren verschickt werden. Weiter sollten die genutzten Zertifikate überwacht werden. Wird beispielsweise ein Let’s Encrypt Zertifikat in einer Umgebung entdeckt, in der für gewöhnlich kein Let’s Encrypt eingesetzt wird, sollten ebenfalls die Administratoren benachrichtigt werden. Zum Überwachen von Zertifikaten können entweder bereits eingesetzte Monitoringlösungen oder kleine Tools wie certspotter verwendet werden

Um von vornherein nicht in diese Situation zu kommen sollten Cloud-Resourcen zuverlässig (automatisiert) und sorgfältig verwaltet werden. Werden Cloud-Resourcen gelöscht müssen immer die dazugehörigen DNS Einträge entfernt werden.

Quellen

Beitrag teilen

Gefällt mir

2

//

Weitere Artikel in diesem Themenbereich

Entdecke spannende weiterführende Themen und lass dich von der codecentric Welt inspirieren.

//

Gemeinsam bessere Projekte umsetzen.

Wir helfen deinem Unternehmen.

Du stehst vor einer großen IT-Herausforderung? Wir sorgen für eine maßgeschneiderte Unterstützung. Informiere dich jetzt.

Hilf uns, noch besser zu werden.

Wir sind immer auf der Suche nach neuen Talenten. Auch für dich ist die passende Stelle dabei.