Reklaamiblokeerijas Adblock Plus haavatavus, organiseerida JavaScript-koodi kĂ€itamine veebisaitide kontekstis, kui kasutatakse kontrollimata filtreid, mida on valmistanud rĂŒndajad (nĂ€iteks kolmandate osapoolte reeglite kogumite ĂŒhendamisel vĂ”i reeglite asendamisel MITM-rĂŒnnaku kĂ€igus).
Filtrite kogude autorid vĂ”ivad korraldada oma koodi kĂ€itamise avatud veebisaitide kontekstis, lisades reegleid operaatoriga ââ, mis vĂ”imaldab asendada osa URL-st. Rewrite operaator ei luba asendada hosti URL-is, kuid vĂ”imaldab vabalt manipuleerida pĂ€ringu argumentidega. Asendamiseks vĂ”ib kasutada ainult teksti malli ning script, object ja subdocument siltide asendamine ei ole lubatud. .
Siiski on koodi tÀitmine vÔimalik ringteed pidi.
MĂ”ned saidid, sealhulgas Google Maps, Gmail ja Google Images, kasutavad tehnoloogiat tĂ€idise kaudu JavaScript-plokkide dĂŒnaamiliseks laadimiseks, mis edastatakse palja tekstina. Kui server lubab pĂ€ringute suunamist, vĂ”ib teise hosti edastada, asendades URL-i parameetreid (nĂ€iteks Google'i kontekstis vĂ”ib suunamine toimuda API kaudu.«).vĂ€lja arvatud hostid, mis lubavad suunamist, vĂ”ib rĂŒnnak toimuda ka teenuste vastu, mis lubavad kasutajate sisu (koodihostid, artiklite avaldamise platvormid jne).
Ettepanek rĂŒnnakute meetod mĂ”jutab ainult lehti, mis laadivad dĂŒnaamiliselt JavaScript koodi (nt lĂ€bi XMLHttpRequest vĂ”i Fetch) ja seejĂ€rel tĂ€idavad seda. Teine oluline piirang on vajadus suunata vĂ”i paigutada juhuslikud andmed lĂ€hte serveri kĂŒlge, mis toob ressursi. Siiski, rĂŒnnaku asjakohasuse demonstreerimiseks on nĂ€idatud, kuidas korraldada oma koodi tĂ€itmist, avades maps.google.com, kasutades suunamist lĂ€bi «google.com/search».
Parandus on praegu ettevalmistamisel. Probleem puudutab ka blokeerijaid ja . Blokeerija uBlock Origin ei ole probleemile vastuvÔtlik, kuna see ei toeta operaatorit «rewrite». Kunagi autor uBlock Origin
lisama rewrite-toetust, viidates vÔimalikele turvaprobleemidele ja hosti taseme piirangute ebapiisavusele (rewrite asemel pakuti querystripi vÔimalust pÀringupÀrandite puhastamiseks nende asendamise asemel).
Adblock Plus arendajad peavad reaalsete rĂŒnnakute lĂ€biviimist ebatĂ”enĂ€oliseks, kuna kĂ”ik muudatused ametlikes reeglistikes lĂ€bivad ĂŒlevaatuse ning kolmandate osapoolte nimekirjade lisamine on kasutajate seas ÀÀrmiselt haruldane. Reeglite asendamist MITM kaudu vĂ€listab vaikimisi HTTPS-i kasutamine ametlike blokeerimisnimekirjade laadimisel (muude nimekirjade puhul plaanitakse tulevikus HTTP laadimist keelata). Saite rĂŒnnakute eest kaitsmiseks vĂ”ivad rakendada direktiive (Content Security Policy), mille kaudu saab selgelt mÀÀratleda hostid, millelt lubatakse vĂ€liste ressursside laadimist.
Allikas: opennet.ru
