Adblock Plus-filterpatroon misbruiken om willekeurige code uitvoeren ontdekt

0
132

door Martin Brinkmann op 16 April 2019 in Internet – Geen reacties

De meeste content-blokkers gebruiken en laden filter lijsten die zijn instructies te blokkeren of bepaalde content op de bezochte sites in de web browser; dit is gedaan om ervoor te zorgen dat standaard configuraties blokkeren een goede brok van ongewenste inhoud meteen.

De meeste extensies ondersteuning voor aangepaste lijsten en individuele filters. Gebruikers kunnen laden aangepaste lijsten in de meeste extensies en add hun eigen filters aan de lijst.

Security-onderzoeker Armin Sebastian ontdekt een exploit in bepaalde adblockers zoals Adblock Plus dat kan worden gebruikt om een kwaadaardige code uitvoeren op locaties bezocht in de browser.

adblock plus exploit

De exploit maakt gebruik van een filter optie genaamd $herschrijven dat Adblock Plus ondersteunt het injecteren van willekeurige code op webpagina ‘ s. De $herschrijven filter wordt gebruikt ter vervanging van code op de websites met herschrijven. De filter optie beperkt u de werking; het is ontworpen om inhoud laden alleen van de eerste partij en niet van een derde partij websites of servers, en sommige verzoeken, bijvoorbeeld voor het script of het object, zijn niet toegestaan.

Sebastian ontdekt een beveiligingslek in $herschrijven dat aanvallers kunnen misbruiken om de inhoud laden van externe locaties. De voorwaarden waaraan moet worden voldaan zijn:

  1. Een JavaScript-string moet worden geladen met behulp van XMLHttpRequest of Halen, en de return-code uitgevoerd moet worden.
  2. De oorsprong niet kan worden beperkt op de pagina, bijvoorbeeld door gebruik te maken van Content Security Policy richtlijnen, en de laatste aanvraag-URL kan niet worden gevalideerd voordat ze uitgevoerd worden.
  3. De oorsprong van de code moet een server-side in open buigen, of moet de host willekeurige gebruiker inhoud.

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

Ik probeerde het te exploiteren in Chrome en Firefox en kan het niet krijgen om te werken. Lawrence Abrams over op Bleeping Computer geslaagd om het te krijgen om te werken hoor.

Slotwoord

De aanval is een andere vereiste, aangezien het berust op de filters. Een gemanipuleerde filter moet worden toegevoegd aan de lijst van filters gebruikt door de content-blokker. De twee meest voorkomende opties zijn gebruikers het toevoegen van filters handmatig tot hun content-blokkers, of dat een gemanipuleerde filter is een filter lijst die wordt geladen.

De tweede optie lijkt meer waarschijnlijk, vooral in de gevallen waren de gebruikers het laden van andere lijsten in de extensies. Het is niet de eerste keer dat lijsten gemanipuleerd, maar het gebeurt niet heel vaak.

De uitbreiding uBlock Oorsprong is niet beïnvloed door het probleem als het niet ondersteunen $herschrijven.