Ranjivost Adblock Plus omogućuje pokretanje koda treće strane

nedavno otkriveno je da popularni blokator oglasa «Adblock Plus »ima ranjivost koja omogućuje organiziranje izvršavanja JavaScript koda na stranicama, u slučaju korištenja neprovjerenih filtara koje su pripremile treće strane sa zlonamjernom namjerom (na primjer, povezivanjem skupova pravila treće strane ili zamjenom pravila tijekom napada MITM).

Navedi autore sa skupinama filtara mogu organizirati izvršavanje svog koda u kontekstu web mjesta dostupnih korisnik dodaje pravila s operatorom »$ rewrite«, koji omogućuje zamjenu dijela URL-a.

Kako je moguće izvršenje ovog koda?

Izjava od $ rewrite ne dopušta zamjenu hosta u url-u, ali pruža mogućnost slobodne manipulacije argumentima zahtjeva.

međutim može se postići izvršenje koda. Neke web stranice, kao što su Google Maps, Gmail i Google Images, koriste se tehnikom dinamičkog učitavanja izvršnih JavaScript blokova koji se prenose u obliku običnog teksta.

Ako poslužitelj dopušta preusmjeravanje zahtjeva, tada se može proslijediti drugom hostu promjenom parametara URL-a (na primjer, u kontekstu Googlea, preusmjeravanje se može izvršiti putem API-ja »google.com/search«) .

Osim domaćini koji omogućuju preusmjeravanje, također možete počiniti napad protiv usluga koje dopuštaju smještaj korisničkog sadržaja (hosting koda, platforma za postavljanje članaka itd.).

Metoda od Predloženi napad utječe samo na stranice koje dinamički učitavaju nizove s JavaScript kodom (na primjer putem XMLHttpRequest ili Fetch), a zatim ih pokrenite.

Drugo veliko ograničenje je potreba za korištenjem preusmjeravanja ili postavljanjem proizvoljnih podataka na stranu izvornog poslužitelja koji pruža resurs.

Međutim, kao demonstracija relevantnosti napada, pokazuje vam kako organizirati izvršavanje koda otvaranjem maps.google.com pomoću preusmjeravanja putem "google.com/search".

U stvari, zahtjevi za upotrebu XMLHttpRequest ili Fetch za preuzimanje udaljenih skripti za pokretanje neće propasti kada se koristi opcija $ rewrite.

Također, otvoreno preusmjeravanje jednako je važno jer omogućuje XMLHttpRequestu da čita skriptu s udaljene web lokacije, iako se čini da je iz istog izvora.

Oni već rade na rješavanju problema

Rješenje je još u pripremi. Problem također utječe na blokatore AdBlock i uBlock. UBlock Origin Blocker nije podložan problemu jer ne podržava operater »$ rewrite«.

U jednom trenutku, autor uBlock Origin odbio je dodati podršku za prepisivanje $, navodeći moguće sigurnosne probleme i nedovoljna ograničenja na razini hosta (umjesto prepisivanja, predložena je opcija querystrip za brisanje parametara upita umjesto da ih zamjenjuje).

Naša je odgovornost zaštititi svoje korisnike.

Unatoč vrlo niskom stvarnom riziku, odlučili smo ukloniti opciju $ rewrite. Stoga ćemo objaviti ažuriranu verziju Adblock Plus čim je to tehnički moguće.

To radimo iz predostrožnosti. Nije pokušan zloupotrijebiti opciju prepisivanja, a mi ćemo se potruditi da se to ne dogodi.

To znači da ne prijeti nijedan korisnik Adblock Plus-a.

DProgrameri Adblock Plus smatraju stvarne napade malo vjerojatnim, budući da se sve izmjene redovitih popisa pravila pregledavaju i korisnici se vrlo rijetko bave povezivanjem popisa trećih strana.

Zamjena pravila putem MITM-a prema zadanim postavkama uklanja upotrebu HTTPS-a za učitavanje redovnih popisa blokova (za preostale popise planira se zabraniti preuzimanje HTTP-a u budućem izdanju).

Da biste blokirali napade na strani web mjesta, Mogu se primijeniti CSP direktive (Politika sigurnosti sadržaja) putem koje možete izričito identificirati hostove s kojih se mogu učitati vanjski resursi.

izvor: https://adblockplus.org, https://armin.dev


Budite prvi koji će komentirati

Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.