Adblock Plus-da şübhəli filtrlərdən istifadə edərkən kodun icrasına imkan verən boşluq

Adblock Plus reklam blokerində müəyyən edilmişdir zəiflik, imkan verir təcavüzkarlar tərəfindən hazırlanmış yoxlanılmamış filtrlərdən istifadə edildiyi halda (məsələn, üçüncü tərəfin qaydalar toplusunu birləşdirərkən və ya MITM hücumu zamanı qaydaların dəyişdirilməsi yolu ilə) saytlar kontekstində JavaScript kodunun icrasını təşkil etmək.

Filtr dəstləri olan siyahıların müəllifləri operatorla qaydalar əlavə etməklə istifadəçinin açdığı saytlar kontekstində öz kodlarının icrasını təşkil edə bilərlər.yenidən yazmaq", URL-nin bir hissəsini əvəz etməyə imkan verir. Yenidən yazma operatoru sizə URL-də hostu əvəz etməyə icazə vermir, lakin o, sorğu arqumentlərini sərbəst manipulyasiya etməyə imkan verir. Əvəzedici maska ​​kimi yalnız mətn istifadə edilə bilər və skript, obyekt və alt sənəd teqlərinin dəyişdirilməsinə icazə verilir bloklandı.

Bununla belə, kodun icrasına müvəqqəti həll yolu ilə nail olmaq olar.
Bəzi saytlar, o cümlədən Google Maps, Gmail və Google Images, çılpaq mətn şəklində ötürülən icra edilə bilən JavaScript bloklarının dinamik yüklənməsi texnikasından istifadə edir. Əgər server sorğunun yönləndirilməsinə icazə verirsə, onda URL parametrlərini dəyişdirməklə başqa hosta yönləndirməyə nail olmaq olar (məsələn, Google kontekstində API vasitəsilə yönləndirmə həyata keçirilə bilər "google.com/search"). Yenidən yönləndirməyə icazə verən hostlarla yanaşı, istifadəçi məzmununun yerləşdirilməsinə imkan verən xidmətlərə də hücum həyata keçirilə bilər (kod hostinqi, məqalə yerləşdirmə platformaları və s.).

Təklif olunan hücum metodu yalnız JavaScript kodu sətirlərini dinamik yükləyən (məsələn, XMLHttpRequest və ya Fetch vasitəsilə) və sonra onları icra edən səhifələrə təsir göstərir. Başqa bir vacib məhdudiyyət, yönləndirmədən istifadə etmək və ya resursu verən orijinal serverin tərəfində ixtiyari məlumatların yerləşdirilməsi ehtiyacıdır. Bununla belə, hücumun aktuallığını nümayiş etdirmək üçün “google.com/search” vasitəsilə yönləndirmədən istifadə edərək maps.google.com saytını açarkən kodunuzun icrasını necə təşkil etməyiniz göstərilir.

Düzəliş hələ də hazırlanır. Problem blokerlərə də təsir edir AdBlock и uBlock. uBlock Origin blokatoru problemdən təsirlənmir, çünki o, "yenidən yazma" operatorunu dəstəkləmir. Bir vaxtlar uBlock Origin müəllifi idi
imtina etdi potensial təhlükəsizlik problemlərini və kifayət qədər host səviyyəsində məhdudiyyətləri əsas gətirərək yenidən yazmaq üçün dəstək əlavə edin (sorğu parametrlərini dəyişdirmək əvəzinə təmizləmək üçün yenidən yazmaq əvəzinə sorğu zolağı seçimi təklif edildi).

Adblock Plus tərtibatçıları real hücumların mümkün olmadığını düşünürlər, çünki standart qaydalar siyahılarına edilən bütün dəyişikliklər nəzərdən keçirilir və üçüncü tərəf siyahılarını birləşdirmək istifadəçilər arasında olduqca nadirdir. Qaydaların MITM vasitəsilə dəyişdirilməsinin qarşısı standart blok siyahılarını yükləmək üçün HTTPS-dən standart istifadə ilə alınır (digər siyahılar üçün gələcək buraxılışda HTTP vasitəsilə yükləmənin qadağan edilməsi planlaşdırılır). Direktivlər sayt tərəfində hücumun qarşısını almaq üçün istifadə edilə bilər CSP (Məzmun Təhlükəsizliyi Siyasəti), bunun vasitəsilə siz xarici resursların yüklənə biləcəyi hostları açıq şəkildə müəyyən edə bilərsiniz.

Mənbə: opennet.ru

Добавить комментарий