Adblock Plus filter ausnutzen, beliebigen code auszuführen entdeckt

0
145

von Martin Brinkmann am 16. April 2019 im Internet – Keine Kommentare

Die meisten content-Blocker verwenden und laden von filter-Listen, die Anweisungen enthalten, zu blockieren oder zu ändern, bestimmte Inhalte auf besuchten Websites in der web-browser standardmäßig aktiviert; dies geschieht, um sicherzustellen, dass die Standard-Konfigurationen blockieren ein gutes Stück unerwünschte Inhalte sofort.

Die meisten Erweiterungen sind benutzerdefinierte Listen und individuelle Filter. Benutzer können laden Sie benutzerdefinierte Listen in den meisten Erweiterungen und add Ihre eigenen Filter, um die Liste als gut.

Der Sicherheitsforscher Armin Sebastian entdeckt ein exploit in bestimmten Adblocker wie z.B. Adblock Plus, die verwendet werden könnten, um schädlichen code ausführen, der auf besuchten Websites im browser.

adblock plus exploit

Der exploit nutzt eine filter-option namens $umschreiben, dass Adblock Plus unterstützt das einschleusen von beliebigem code in web-Seiten. Die $rewrite-filter wird verwendet, um zu ersetzen Sie code auf Websites, schreiben Sie es. Die filter-option schränkt den Betrieb; es ist so konzipiert, laden Sie Inhalte nur von den first-party-Quelle und nicht von Drittanbieter-Websites oder Server, und einige Anfragen, z.B. Skript oder Objekt, sind nicht zulässig.

Sebastian entdeckt eine Schwachstelle in $umschreiben, die Angreifer ausnutzen können, um das laden von Inhalten aus der Ferne. Die Bedingungen, die erfüllt sein müssen, sind:

  1. JavaScript-string geladen werden muss, mithilfe von XMLHttpRequest oder Fetch, und der return-code ausgeführt werden muss.
  2. Herkunft ist nicht beschränkt auf die Seite, z.B. durch die Verwendung von Content-Security-Policy, – Richtlinien und die Letzte Anfrage-URL nicht validiert werden kann, bevor die Ausführung.
  3. Der Ursprung der code muss eine server-side-open-redirect, oder muss der host beliebige Benutzer-content.

Eigenschaften, bei denen alle drei Anforderungen gehören Google Maps, Gmail oder Google Bilder unter anderem. Ein proof of concept veröffentlicht auf der Webseite des Autors, und Sie können versuchen, es auf Google Maps zu überprüfen, dass es funktioniert.

Ich habe versucht, den exploit in Chrome und Firefox, und konnte nicht damit es funktioniert. Lawrence Abrams über auf Bleeping Computer geschafft, es funktioniert aber.

Schlusswort

Die Attacke ist eine andere Voraussetzung, weil es stützt sich auf die Filter. Eine manipulierte filter Hinzugefügt werden muss, um die Liste der Filter verwendet, durch den content-blocker. Die beiden häufigsten Optionen sind Benutzer hinzufügen-Filter manuell auf Ihre Inhalte-Blocker, oder dass eine manipulierte filter über eine filter-Liste, die geladen wird.

Die zweite Möglichkeit scheint wahrscheinlicher, insbesondere in den Fällen, wenn Benutzer laden andere Listen in den Erweiterungen. Es ist nicht das erste mal, dass die Listen bekommen, manipuliert, aber es geschieht nicht sehr oft.

Die Erweiterung uBlock Herkunft ist nicht von dem Problem betroffen, da es nicht unterstützt $rewrite.