Adblock Plusi loendite haavatavus võimaldab käivitada pahatahtliku koodi

brauseri

Recientemente on avastatud haavatavus mis võimaldaks hooldajatel blokeerida filtriloendeid brauserilaiendite Adblock Plus, AdBlock ja uBlocker jaoks filtrite loomiseks, mis sisestavad veebisaitidele kaugskripte.

Kasutajaskonnaga, mis on ületanud 10 miljoni piiri, kui reklaamiblokeerijatesse süstitakse pahatahtlikke skripte, on sellel märkimisväärne mõju kuna nad võivad teha soovimatuid toiminguid, näiteks küpsiste vargusi, ühendusteavet, lehe ümbersuunamise või muu soovimatu käitumise põhjustamist.

Neile, kes ei ole reklaamiblokeerijatega tuttavad, kasutavad nad põhimõtteliselt URL-i loendeid seotud pahatahtlike reklaamide ja käitumisega.

Tavaliselt Neid juhib väike meeskond inimesi või isegi üksik inimene.

Kui nendesse loenditesse on laaditud reklaamiblokeerimise laiend, näiteks Adblock Plus, takistab see laiendus brauserit ühenduse loomist loendisse pandud URL-idega ja seeläbi takistab ühendus pahatahtlike reklaamide või skriptidega.

Filmi valiku $ kirjutamise võimalus põhjustab probleemi

Millal AdblockerPlus 3.2 käivitati 2018. aastal, see lisas uue filtriloendi valiku nimega $ rewrite.

See valik lubatud loendi hooldajale asendada veebipäring, mis vastab tavaväljendile eriti teise URL-iga.

Hubert Figuiere, kes selle funktsiooni kasutusele võttis, selgitas, et:

„Kuna Adblock Plus 3.2 Chrome'ile, Firefoxile ja Operale (ja arendusversioonidele 3.1.0.2053), võimaldab uus filtrivalik $ rewrite blokeerimise asemel ressursi URL-i ümber kirjutada.

Kui Adblock Plus määrab päringuga $ rewrite filtrile päringu URL-i, muudab see URL-i pakutava reegli alusel ja käsib brauseril ressurssi samal ajal laadida.

Reegli $ süntaks rewrite määrab stringi, mis toimib uue URL-i mallina.

$ n asendatakse filtri regulaaravaldise n-nda alamkohaga. See on sama süntaks kui funktsioon String.prototype.replace ().

Kui saadud URL on suhteline (st teil pole hostit), aluseks võetakse algse päringu päritolu. Mõlemal juhul, kui uus URL ei jaga päritolu, loetakse ümberkirjutamine nurjunuks ja esialgne taotlus edastatakse.

Samuti ignoreeritakse turva kaalutlustel päringute SCRIPT, SUBDOCUMENT, OBJECT ja OBJECT_SUBREQUEST $ ümberkirjutamise filtreid. See valik on mugav päringu parameetrite muutmiseks või kõrvaldamiseks ».

Ainus negatiivne külg on see, et asendusstring peab olema suhteline URL, mis tähendab, et see ei sisalda hosti nime ja ümber kirjutades peab see olema päringuga samast lähte domeenist.

Koodi täitmine toimub isegi Google Mapsis

Turvauurija selgitas et:

Teatud tingimustel on volitamata pahatahtliku filtri hooldajal võimalik luua reegel, mis sisestab kaugskripti konkreetsele saidile.

Selleks lihtsalt otsige skripte laadivat saiti mis tahes domeenist, mis sisaldab avatud ümbersuunamist ja kasutage XMLHttpRequest või Fetch skriptide käitamiseks allalaadimiseks.

Seda polnud liiga raske leida, sest seda üksi teha lihtsalt kasutage kontseptsiooni tõendamiseks Google Mapsi.

Teadlane selgitas seda peavad olema täidetud järgmised kriteeriumid et veebiteenust saaks selle meetodiga ära kasutada:

  • Leht peab laadima JS-stringi XMLHttpRequest või Fetch abil ja käivitama tagastuskoodi.
  • Leht ei tohiks piirata allikaid, kust seda saab sisuturbeeskirjade juhiste abil hankida, ega kinnitada lõpliku taotluse URL-i enne allalaaditud koodi käivitamist.
  • Taastatud koodi allikal peab olema hostist avatud serveripoolne ümbersuunamine või meelevaldne kasutaja sisu.

Skripti allalaadimiseks ja ümbersuunamise avamiseks on XMLHttpRequesti või Fetchi kasutamine probleemi kaks võtit.

Selle probleemi leevendamiseks veebisaitidel on soovitatav kasutada sisuturbepoliitika päist ja connect-src valikut määrata saitide lubatud loend, kust skripte saab laadida.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.