Jeffrey Cross
Jeffrey Cross

DNS-Umbindung: Wie kann ein Angreifer mithilfe Ihres Webbrowsers eine Firewall umgehen?

Artur Bergman schrieb über einen Exploit-Vektor mit dem Namen "DNS rebinding" auf O'Reilly Radar, der unbedingt gelesen werden muss. Durch die erneute DNS-Bindung kann eine externe Website die Javascript- oder Flash-Umgebung Ihres Browsers als Brücke zwischen dem externen Server und einer beliebigen IP in Ihrem internen Netzwerk verwenden. Dies funktioniert auch für nicht adressierbare IPs wie die im Bereich 10.0.0.0!

Normalerweise beschränken die Sicherheitsmechanismen in Ihrem Browser die Kommunikation auf denselben Host, der die Webseite bereitgestellt hat. Wenn Sie also badsite.com besuchen, kann das Javascript auf dieser Seite nur mit badsite.com kommunizieren. Jeder Code auf dieser Site, der versucht, Daten von einer anderen Adresse abzurufen, gibt einen Fehler zurück, da er gegen diese Richtlinie mit demselben Ursprung verstößt.

Funktionsweise des DNS-Wiederherstellungsvorgangs Mithilfe des DNS-Wiederherstellungsprozesses kann ein Angreifer dieselbe Ursprungsrichtlinie vollständig umgehen. Dies geschieht durch dynamisches Wechseln der Ziel-IP-Adresse nach einem Hostnamen, den der Angreifer kontrolliert. Ein Szenario könnte so funktionieren:

  1. Sie stellen eine Verbindung zu abcde.badsite.com her, die mit einer sehr kurzen TTL in IP 1.2.3.4 aufgelöst wird
  2. 1.2.3.4 liefert einige Javascript-Codes an Ihren Browser, die in 15 Sekunden ausgeführt werden können
  3. Der DNS-Server, der * .badsite.com kontrolliert, weist abcde.badsite.com sofort auf 10.0.0.1
  4. 15 Sekunden später stellt das Javascript in Ihrem Browser eine Verbindung mit abcde.badsite.com her, die dieselbe Ursprungsrichtlinie einhält, und ruft eine Webseite von Ihrem internen Server um 10.0.0.1 ab
  5. Der DNS-Server setzt abcde.badsite.com auf 1.2.3.4 zurück. Nach einiger Zeit stellt der Browser die Verbindung wieder her und sendet 1.2.3.4 seine Ergebnisse

Mit Flash wird es noch besser Bis jetzt kann ein ruchloser Angreifer mit Javascript jetzt Websites in Ihrem internen Netzwerk scannen und crawlen und seine Ergebnisse an den Server des Angreifers zurückmelden. Sie können sich vorstellen, dass dies über ein Popup ausgelöst und dann außerhalb des Bildschirms positioniert wird, wo es für einige Zeit unbemerkt bleiben könnte. Dies ist zweifellos eine ziemlich große Sache, aber mit der Socket-Funktionalität von Flash 9 ist dies nur die Spitze des Eisbergs.

Flash 9 fügt dem Toolkit des Entwicklers eine Socket-Bibliothek hinzu. Anstelle der begrenzten Web-Crawler-Nutzlast kann ein kleiner Flash-Film an den Client gesendet werden, der eine vollständige Netzwerkprüfung des internen Netzwerks durchführt, Spam über den SMTP-Server des Unternehmens sendet oder sogar als allgemeine VPN-Bridge dient Deine Firewall.

Beeindruckend.

Schutz vor dem DNS-Rebinding verteidigen Es gibt eine Reihe von Vorschlägen, um Ihr Netzwerk gegen diese Art von Angriff zu schützen. Dazu gehören das Deaktivieren des Flash-Plugins, die Verwendung einer persönlichen Firewall, um den Browserzugriff auf die Ports 80 und 443 einzuschränken, und das gesamte Web zu überprüfen Sites haben keinen virtuellen Standardhost, sondern erfordern einen gültigen Hostheader.

Es scheint, als würde die wahre Moral der Geschichte hier nicht dazu verleitet werden, eine Firewall und nicht adressierbare IPs als einzige Verteidigungslinie zu verwenden. Dies bedeutet, dass die Maschinen auf dem neuesten Stand gehalten werden, keine IP-Adress-basierte Authentifizierung verwendet wird und im Allgemeinen davon ausgegangen wird, dass der Angreifer Zugriff auf Ihr internes Netzwerk erhalten kann.

Referenzen: Ihr Browser ist ein TCP / IP-Relay - Link-Flash-DNS-Wiederherstellungs-DEMO (Host eines Netzwerks scannen) - Link zum Schutz von Browsern vor DNS-Rebinding-Angriffen - Link

Aktie

Leave A Comment