Zraniteľnosť v Adblock Plus, ktorá umožňuje vykonať kód pri používaní pochybného filtra

V blokovači reklám Adblock Plus bola zistená zraniteľnosť, umožňujúca organizovať vykonanie JavaScriptového kódu v kontexte stránok, pri používaní neoverených filtrov, pripravených útočníkmi (napríklad pri pripojení na externé súbory pravidiel alebo cez zmenu pravidiel počas MITM útoku).

Autori súborov s pravidlami filtrov môžu organizovať vykonanie svojho kódu v kontexte stránok otváraných používateľom cez pridanie pravidiel s operátorom „rewrite«, ktorý umožňuje nahradiť časť URL. Operátor rewrite neumožňuje nahradiť hostiteľa v URL, ale poskytuje možnosť voľne manipulovať s argumentmi požiadavky. Ako maska na nahradenie sa pripúšťa len text, a vkladanie tagov script, object a subdocument je blokované.

Napriek tomu je možné dosiahnuť vykonanie kódu obchádzacími cestami.
Niektoré stránky, vrátane Google Maps, Gmailu a Google Images, používajú techniku dynamického načítania spúšťateľných JavaScript blokov, prenášaných vo forme čistého textu. Ak server umožňuje presmerovanie požiadaviek, je možné dosiahnuť presmerovanie na iného hostiteľa zmenou parametrov URL (napríklad v kontexte Google môže byť presmerovanie vykonané cez API „google.com/search„). Okrem hostiteľov, ktorí umožňujú presmerovanie, môže byť útok vykonaný aj proti službám, ktoré umožňujú ukladanie obsahu používateľov (hostingové platformy kódu, platformy pre umiestnenie článkov a pod.).

Navrhnutá metóda útoku zasahuje iba stránky, ktoré dynamicky načítavajú riadky s JavaScript kódom (napríklad cez XMLHttpRequest alebo Fetch) a následne ich vykonávajú. Ďalším dôležitým obmedzením je potreba použiť presmerovanie alebo umiestnenie ľubovoľných údajov na strane pôvodného servera, ktorý poskytuje zdroj. Napriek tomu, ako demonštráciu aktuálnosti útoku, je ukázané, ako organizovať vykonávanie svojho kódu pri otvorení maps.google.com, využívajúc presmerovanie cez „google.com/search“.

Oprava je zatiaľ v procese prípravy. Problém sa tiež týka blokovačov AdBlock a uBlock. Blokovač uBlock Origin nie je tejto problémy podrobený, pretože nepodporuje operátor „rewrite“. V minulosti autor uBlock Origin
sa vzdal Pridať podporu rewrite, odvolávajúc sa na potenciálne problémy s bezpečnosťou a nedostatočné obmedzenia na úrovni hostiteľa (namiesto rewrite bola navrhnutá možnosť querystrip na vyčistenie parametrov dopytu namiesto ich nahradenia).

Vývojári Adblock Plus považujú vykonanie reálnych útokov za nepravdepodobné, pretože všetky zmeny v štandardných zoznamoch pravidiel prechádzajú recenziou a pripojenie tretích strán zoznamov sa u používateľov praktizuje mimoriadne zriedka. Zmenu pravidiel prostredníctvom MITM vylučuje predvolené použitie HTTPS na načítanie štandardných zoznamov blokovania (pre ostatné zoznamy sa plánuje zakázať načítanie cez HTTP v budúcej verzii). Na blokovanie útokov na strane stránok môžu byť použité direktívy CSP (Content Security Policy), prostredníctvom ktorých je možné jasne definovať hostiteľov, z ktorých je povolené načítanie externých zdrojov.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster