DNS-Rebinding-Angriff

Feb 08 2023
DNS-Rebinding ist eine Methode zur Umgehung der Same-Origin-Richtlinie durch Manipulation der DNS-Auflösung. Wie wird ein allgemeiner Cross-Origin-Angriff vom Browser blockiert? Hier versteht der Browser, dass die Antwortseite vom Ursprung des Angreifers eine Seite von einem anderen Ursprung anfordert (d. h

DNS Rebinding ist eine Methode zur Umgehung der Same Origin Policy durch Manipulation der DNS-Auflösung

Wie wird ein allgemeiner Cross-Origin-Angriff vom Browser blockiert?

Browser blockiert ursprungsübergreifende Anfragen

Hier versteht der Browser, dass die Antwortseite vom Ursprung des Angreifers eine Seite von einem anderen Ursprung anfordert (z. B. von localhost) ³ . Da es sich um eine „nicht einfache Anfrage“ mit „Cross-Origin“ handelt, blockiert der Browser die Anfrage standardmäßig.

Um auf den lokalen Server zugreifen zu können, müssen wir SOP umgehen

Hier kommt DNS Rebinding zu unserer Rettung……

Angriffsszenario

DNS-Rebinding-Angriff unter Umgehung der Same-Origin-Richtlinie

Bei der ersten DNS-Auflösung wird attacker.com in 6.6.6.6² aufgelöst . Der Browser sendet also eine Anfrage an 6.6.6.6 und empfängt die Antwort des Angreifers. Die Antwort des Angreifers könnte eine erneute Abrufanforderung an attacker.com enthalten. Da die Seite vom Ursprung des Angreifers eine Ressource vom Ursprung des Angreifers anfordert, ist dies derselbe Ursprung⁵ .

Während der Konfiguration des DNS-Servers setzt der Angreifer die TTL (Time-To-Live) auf einen kleinen Wert (z. B. 2 Sekunden)² .

Während der Browser also eine Abrufanforderung an attacker.com ausführt, fragt er den DNS-Server erneut nach der Auflösung von attacker.com ⁵ , die nun in 127.0.0.1 aufgelöst wird (der Angreifer legt zwei A-Einträge in der DNS-Serverkonfiguration fest).

Der Browser führt dann die nächste Anfrage auf der Angreiferseite aus, bei der es sich um eine DELETE-Ressourcenanfrage an 127.0.0.1 handelt . Da es sich um eine Anfrage an den lokalen Host handelt, der denselben Ursprung wie 127.0.0.1 hat, führt der Browser sie aus, ohne sie zu blockieren.
Die Ressource wird gelöscht⁹

Wie kann ich schnell einen DNS-Server einrichten?

Sie können die Anwendung verwendenhttp://lock.cmpxchg8b.com/rebinder.html(Quellcode auch verfügbar)

Irgendein anderes Angriffsszenario?

  1. Verwirrende serverseitige Infrastruktur

Einschränkungen für Angreifer/Abhilfemaßnahmen für Entwickler

1. Wenn eine Authentifizierung erforderlich ist

2. Falls SSL-Zertifikat vorhanden

3. Wenn der Server den Host-Header überprüft

4. Wenn ein benutzerdefinierter Protokollhandler (z. B. chrome:// ) definiert und für den Zugriff auf lokale Anwendungen verwendet wird

Verweise:

  • DEF CON 25 – Luke Young
  • Webanwendung zur Angriffs-URI- oder DNS-Auflösung von Tavis Ormandy
  • Bug Bounty | 2.000 US-Dollar für die SSRF-Umgehung mithilfe der DNS-Neubindung durch Leet Cipher
  • Vortrag über Data-Rebinding-Angriffe von Feross
  • Gerald Doussot – Stand der DNS-Rebinding-Angriffe und Singularität des Ursprungs – DEF CON 27-Konferenz
  • SSRF über DNS-Rebinding (CVE-2022–4096) von Basavaraj
  • Singularitätstool