Zraniteľnosť v zoznamoch Adblock Plus umožňuje spustenie škodlivého kódu

prehliadač

Recientemente bola zistená zraniteľnosť čo by mohlo správcom umožniť blokovať zoznamy filtrov pre rozšírenia prehľadávača Adblock Plus, AdBlock a uBlocker na vytváranie filtrov, ktoré vkladajú vzdialené skripty na webové stránky.

S užívateľskou základňou, ktorá prekročila hranicu 10 miliónov, ak by sa do blokovačov reklám vložili škodlivé skripty, malo by to značný dopad Pretože by mohli vykonávať nežiaduce činnosti, ako napríklad krádež súborov cookie, informácie o pripojení, spôsobujúce presmerovanie stránky alebo iné nežiaduce správanie.

Pre tých, ktorí nie sú oboznámení s blokovaním reklám, v zásade používajú zoznamy adries URL súvisiace so škodlivými reklamami a správaním.

zvyčajne Vedie ich malý tím ľudí alebo dokonca jediný človek.

Ak sú tieto zoznamy načítané s rozšírením blokujúcim reklamy, ako je Adblock Plus, toto rozšírenie zabráni prehľadávaču v pripojení k adresám URL uvedeným v zozname, a zabráni tak spojeniu so škodlivými reklamami alebo skriptmi.

Problém spôsobuje možnosť filtra s prepisom $

Kedy AdblockerPlus 3.2 uvedený na trh v roku 2018 pridaná nová možnosť zoznamu filtrov s názvom $ rewrite.

Táto možnosť povolený správcovi zoznamu nahraďte webovú požiadavku, ktorá sa zhoduje s regulárnym výrazom najmä s inou adresou URL.

Hubert Figuiere, kto zaviedol túto funkciu, vysvetlil, že:

„Od verzie Adblock Plus 3.2 pre Chrome, Firefox a Opera (a vývojové verzie 3.1.0.2053) vám nová možnosť filtra prepisu $ umožňuje prepísať adresu URL zdroja namiesto jeho blokovania.

Keď Adblock Plus priradí adresu URL požiadavky filtru s možnosťou prepísania $, transformuje adresu URL na základe poskytnutého pravidla a informuje prehliadač, aby načítal zdroj súčasne.

Syntax pravidla $ prepísať určuje reťazec, ktorý slúži ako šablóna pre novú adresu URL.

$ n je nahradené regulárnym výrazom filtra n-tej podzhody. Toto je rovnaká syntax ako funkcia JavaScript String.prototype.replace ().

Ak je výsledná adresa URL relatívna (tj. nemáte hostiteľa), ako základ sa použije pôvod pôvodného dotazu. V obidvoch prípadoch, ak nová adresa URL nezdieľa pôvod, prepísanie sa bude považovať za neúspešné a pôvodná žiadosť bude splnená.

Filtre prepisu $ sú tiež z bezpečnostných dôvodov ignorované pre dotazy SCRIPT, SUBDOCUMENT, OBJECT a OBJECT_SUBREQUEST. Táto možnosť je vhodná na úpravu alebo vylúčenie parametrov dotazu ».

Jedinou nevýhodou je, že náhradný reťazec musí byť relatívna adresa URL, čo znamená, že neobsahuje názov hostiteľa a po prepísaní musí patriť do rovnakej pôvodnej domény ako žiadosť.

Vykonávanie kódu sa vykonáva dokonca aj na mapách Google

Vysvetlil bezpečnostný výskumník že:

Za určitých podmienok je možné, aby neoprávnený správca škodlivého filtra vytvoril pravidlo, ktoré vloží vzdialený skript do konkrétnej stránky.

Ak to chcete urobiť, stačí vyhľadať web, ktorý načítava skripty z akejkoľvek domény, ktorá obsahuje otvorené presmerovanie a použite XMLHttpRequest alebo Fetch prevziať spustené skripty.

Nebolo to príliš ťažké nájsť, pretože som to urobil sám stačí použiť Mapy Google ako dôkaz koncepcie.

Vedec to vysvetlil musia byť splnené nasledujúce kritériá aby bolo možné webovú službu zneužiť touto metódou:

  • Stránka musí načítať reťazec JS pomocou XMLHttpRequest alebo Fetch a vykonať návratový kód.
  • Táto stránka by nemala obmedzovať zdroje, z ktorých ju možno získať, podľa pokynov politiky zabezpečenia obsahu, ani pred vykonaním stiahnutého kódu overiť adresu URL konečnej žiadosti.
  • Zdroj načítaného kódu musí mať otvorené presmerovanie na strane servera alebo ľubovoľný užívateľský obsah z hostiteľa.

Kľúčom k problému sú použitie XMLHttpRequest alebo Fetch na stiahnutie skriptov a otvorenie presmerovania.

Na zmiernenie tohto problému odporúča sa, aby webové stránky používali hlavičku politiky zabezpečenia obsahu a voľbu connect-src určiť zoznam povolených webov, z ktorých je možné načítať skripty.


Zanechajte svoj komentár

Vaša e-mailová adresa nebude zverejnená. Povinné položky sú označené *

*

*

  1. Za údaje zodpovedá: AB Internet Networks 2008 SL
  2. Účel údajov: Kontrolný SPAM, správa komentárov.
  3. Legitimácia: Váš súhlas
  4. Oznamovanie údajov: Údaje nebudú poskytnuté tretím stranám, iba ak to vyplýva zo zákona.
  5. Ukladanie dát: Databáza hostená spoločnosťou Occentus Networks (EU)
  6. Práva: Svoje údaje môžete kedykoľvek obmedziť, obnoviť a vymazať.