Kerentanan Adblock Plus memungkinkan eksekusi kode pihak ketiga

Baru-baru ini ditemukan itu pemblokir iklan populer «Adblock Plus »memiliki kerentanan yang memungkinkan pengorganisasian eksekusi kode JavaScript di situs, jika menggunakan filter yang belum teruji yang disiapkan oleh pihak ketiga dengan niat jahat (misalnya, dengan menghubungkan kumpulan aturan pihak ketiga atau dengan substitusi aturan selama serangan MITM).

Buat daftar penulis dengan kumpulan filter dapat mengatur eksekusi kode mereka dalam konteks situs yang dapat diakses oleh pengguna menambahkan aturan dengan operator »$ rewrite«, yang memungkinkan untuk mengganti bagian dari URL.

Bagaimana eksekusi kode ini mungkin?

Deklarasi $ rewrite tidak mengizinkan untuk mengganti host di url, tetapi memberikan kesempatan untuk dengan bebas memanipulasi argumen dari permintaan tersebut.

Namun demikian eksekusi kode dapat dicapai. Beberapa situs, seperti Google Maps, Gmail, dan Google Images, mereka menggunakan teknik memuat secara dinamis blok JavaScript yang dapat dieksekusi yang dikirim dalam bentuk teks biasa.

Jika server memungkinkan pengalihan permintaan, maka itu dapat diteruskan ke host lain dengan mengubah parameter URL (misalnya, dalam konteks Google, pengalihan dapat dilakukan melalui API »google.com/search«) .

Selain host yang mengizinkan pengalihan, Anda juga dapat melakukan serangan terhadap layanan yang memungkinkan lokasi konten pengguna (hosting kode, platform penempatan artikel, dll.).

Metode dari Serangan yang diusulkan hanya memengaruhi halaman yang memuat string dengan kode JavaScript secara dinamis (misalnya, melalui XMLHttpRequest atau Fetch) lalu jalankan.

Batasan utama lainnya adalah kebutuhan untuk menggunakan pengalihan atau meletakkan data sewenang-wenang di sisi server asal yang menyediakan sumber daya.

Namun, sebagai demonstrasi relevansi serangan, menunjukkan cara mengatur eksekusi kode Anda dengan membuka maps.google.com menggunakan pengalihan melalui "google.com/search".

Faktanya, permintaan untuk menggunakan XMLHttpRequest atau Fetch untuk mengunduh skrip jarak jauh agar dijalankan tidak akan gagal saat opsi $ rewrite digunakan.

Selain itu, pengalihan terbuka sama pentingnya karena memungkinkan XMLHttpRequest membaca skrip dari situs jarak jauh, meskipun tampaknya dari sumber yang sama.

Mereka sudah berupaya memecahkan masalah

Solusinya masih dalam persiapan. Masalahnya juga memengaruhi pemblokir AdBlock dan uBlock. UBlock Origin Blocker tidak rentan terhadap masalah ini karena tidak mendukung operator »$ rewrite».

Pada satu titik, penulis uBlock Origin menolak untuk menambahkan dukungan $ rewrite, dengan alasan kemungkinan masalah keamanan dan batasan level host yang tidak memadai (alih-alih menulis ulang, opsi querystrip diusulkan untuk menghapus parameter kueri alih-alih menggantinya).

Merupakan tanggung jawab kami untuk melindungi pengguna kami.

Meskipun risiko sebenarnya sangat rendah, kami memutuskan untuk menghapus opsi $ rewrite. Oleh karena itu, kami akan merilis versi Adblock Plus yang diperbarui sesegera mungkin secara teknis.

Kami melakukan ini sebagai tindakan pencegahan. Tidak ada upaya yang dilakukan untuk menyalahgunakan opsi penulisan ulang dan kami akan melakukan yang terbaik untuk mencegah hal ini terjadi.

Ini berarti tidak ada ancaman bagi pengguna Adblock Plus mana pun.

The DPengembang Adblock Plus menganggap serangan sebenarnya tidak mungkin, karena semua perubahan pada daftar aturan reguler ditinjau dan sambungan daftar pihak ketiga sangat jarang dilakukan oleh pengguna.

Substitusi aturan melalui MITM menghapus penggunaan HTTPS secara default untuk memuat daftar blokir biasa (untuk daftar lainnya direncanakan untuk melarang unduhan HTTP di rilis mendatang).

Untuk memblokir serangan di sisi situs, Arahan CSP dapat diterapkan (Kebijakan Keamanan Konten), yang melaluinya Anda dapat secara eksplisit mengidentifikasi host tempat sumber daya eksternal dapat dimuat.

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


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.