Në bllokuesin e reklamave Adblock Plus dobësia, organizimi i ekzekutimit të kodit JavaScript në kontekstin e faqeve, në rastin e përdorimit të filtrave të pa verifikuar, të përgatitura nga kriminelët (p.sh., kur lidhen grupe rregullash të jashtme ose përmes zëvendësimit të rregullave gjatë një sulmi MITM).
Krijuesit e listave me grupe filtrosh mund të organizojnë ekzekutimin e kodit të tyre në kontekstin e faqeve të hapura nga përdoruesit përmes shtimit të rregullave me operatorin ««, i cili lejon zëvendësimin e një pjese të URL-së. Operatorin rewrite nuk e lejon zëvendësimin e host-it në URL, por ofron mundësi të lira për të manipuluar me argumentet e pyetjes. Si shkak për zëvendësim lejohet vetëm përdorimi i tekstit, dhe nënndihmohet vendosja e etiketave script, object dhe subdocument. .
Megjithatë, ekzekutimi i kodit mund të arrihet në mënyrë anësore.
Disa faqe, përfshirë Google Maps, Gmail dhe Google Images, aplikojnë teknikën e ngarkesës dinamike të blloqeve të ekzekutueshëm JavaScript, të dërguara në formë teksti pa formë. Nëse serveri lejon ridrejtimin e kërkesave, atëherë mund të arrihet kalimi në një host tjetër duke zëvendësuar parametrat e URL-së (p.sh., në kontekstin e Google ridrejtimi mund të bëhet përmes API ««). Përveç hosteve që lejojnë ridrejtim, sulmi gjithashtu mund të kryhet ndaj shërbimeve që lejojnë vendosjen e përmbajtjes nga përdorues të tjerë (hoste për kod, platforma për artikuj, etj.).
Metoda e sugjeruar e sulmit prek vetĂ«m faqet qĂ« ngarkojnĂ« dinamikisht vargje me kod JavaScript (p.sh., pĂ«rmes XMLHttpRequest ose Fetch) dhe mĂ« pas i ekzekutojnĂ« ato. NjĂ« kufizim tjetĂ«r i rĂ«ndĂ«sishĂ«m Ă«shtĂ« nevoja pĂ«r tĂ« pĂ«rdorur ridrejtimin ose vendosjen e tĂ« dhĂ«nave tĂ« rastit nĂ« anĂ«n e serverit burimor qĂ« jep burimin. MegjithatĂ«, si njĂ« demostrim tĂ« rĂ«ndĂ«sishmĂ«risĂ« sĂ« sulmit, Ă«shtĂ« treguar se si tĂ« organizohet ekzekutimi i kodit tĂ« vet kur hapet maps.google.com, duke pĂ«rdorur ridrejtimin pĂ«rmes âgoogle.com/searchâ.
Korrektimi është akoma në procesin e përgatitjes. Problemi gjithashtu prek bllokuesit dhe . Bllokuesi uBlock Origin nuk është i prekur nga ky problem, pasi nuk mbështet operatorin «rewrite». Në një kohë, autori i uBlock Origin
shtoni mbështetje për rewrite, duke iu referuar problemeve të mundshme të sigurisë dhe mungesës së kufizimeve në nivelin e hostit (në vend të rewrite, është propozuar opsioni querystrip për të pastruar parametrat e kërkesës në vend të zëvendësimit të tyre).
Zhvilluesit e Adblock Plus mendojnë se kryerja e sulmeve reale është e paqartë, pasi të gjitha ndryshimet në listat e zakonshme të rregullave kalojnë rishikim, dhe lidhja me lista të palëve të treta praktikohet shumë rrallë nga përdoruesit. Zëvendësimi i rregullave përmes MITM përjashtohet nga përdorimi default të HTTPS për shkarkimin e listave normale të bllokimit (për listat e tjera planifikohet ndalimi i shkarkimit përmes HTTP në lëshimin e ardhshëm). Për bllokimin e sulmit në anën e faqeve mund të përdoren direktivat (Content Security Policy), përmes të cilave mund të përcaktohen qartë hostet nga të cilat lejohet shkarkimi i burimeve të jashtme.
Burimi: opennet.ru
