Adblock Plus filter exploit om willekeurige ontdekte code uit te voeren

Probeer Ons Instrument Voor Het Oplossen Van Problemen

De meeste inhoudblokkers gebruiken en laden filterlijsten die instructies bevatten om standaard bepaalde inhoud op bezochte sites in de webbrowser te blokkeren of te wijzigen; dit wordt gedaan om ervoor te zorgen dat standaardconfiguraties meteen een groot deel van de ongewenste inhoud blokkeren.

De meeste extensies ondersteunen aangepaste lijsten en individuele filters. Gebruikers kunnen in de meeste extensies aangepaste lijsten laden en ook hun eigen filters aan de lijst toevoegen.

Bijwerken : Eyeo GMHB aangekondigd vandaag dat het de $ rewrite-functie in de toekomst zal verwijderen. Verwacht binnenkort een nieuwe release die als uit de extensie wordt verwijderd. Einde

Beveiligingsonderzoeker Armin Sebastian ontdekt een exploit in bepaalde adblockers zoals Adblock Plus die kan worden gebruikt om kwaadaardige code uit te voeren op sites die in de browser worden bezocht.

adblock plus exploit

De exploit gebruikt een filteroptie genaamd $ rewrite die door Adblock Plus wordt ondersteund om willekeurige code in webpagina's te injecteren. Het $ rewrite-filter wordt gebruikt om code op sites te vervangen door deze te herschrijven. De filteroptie beperkt de werking; het is ontworpen om alleen inhoud te laden van de eigen bron en niet van sites of servers van derden, en sommige verzoeken, bijv. script of object, zijn ook niet toegestaan.

Sebastian ontdekte een kwetsbaarheid in $ rewrite die aanvallers kunnen misbruiken om inhoud van externe locaties te laden. De voorwaarden waaraan moet worden voldaan zijn:

  1. Een JavaScript-string moet worden geladen met XMLHttpRequest of Fetch, en de retourcode moet worden uitgevoerd.
  2. Oorsprong kan niet worden beperkt op de pagina, bijv. door het gebruik van richtlijnen voor het inhoudsbeveiligingsbeleid, en de uiteindelijke verzoek-URL kan niet worden gevalideerd voordat deze wordt uitgevoerd.
  3. De oorsprong van de code moet een open omleiding aan de serverzijde hebben, of moet willekeurige gebruikersinhoud hosten.

Eigenschappen die aan alle drie de vereisten voldoen, zijn onder andere Google Maps, Gmail of Google Afbeeldingen. EEN proof of concept is gepubliceerd op de website van de auteur en u kunt het proberen op Google Maps om te controleren of het werkt.

Ik heb de exploit in Chrome en Firefox geprobeerd en kon het niet laten werken. Lawrence Abrams op Bleeping Computer slaagde erin het echter aan het werk te krijgen.

Afsluitende woorden

De aanval heeft nog een andere vereiste, aangezien deze afhankelijk is van filters. Een gemanipuleerd filter moet worden toegevoegd aan de lijst met filters die door de inhoudblokkering worden gebruikt. De twee meest voorkomende opties zijn dat gebruikers handmatig filters toevoegen aan hun inhoudblokkering, of dat een gemanipuleerd filter op een filterlijst staat die wordt geladen.

De tweede optie lijkt waarschijnlijker, vooral in gevallen waarin gebruikers andere lijsten in de extensies laden. Het is niet de eerste keer dat lijsten worden gemanipuleerd, maar het komt niet vaak voor.

De extensie uBlock Origin wordt niet beïnvloed door het probleem, aangezien $ rewrite niet wordt ondersteund.