Toolkit untuk mendeteksi add-on yang dipasang di Chrome telah dipublikasikan

Sebuah toolkit telah diterbitkan yang mengimplementasikan metode untuk mendeteksi add-on yang dipasang di browser Chrome. Daftar add-on yang dihasilkan dapat digunakan untuk meningkatkan akurasi identifikasi pasif dari browser tertentu, dikombinasikan dengan indikator tidak langsung lainnya, seperti resolusi layar, fitur WebGL, daftar plugin dan font yang diinstal. Implementasi yang diusulkan memeriksa instalasi lebih dari 1000 add-on. Demonstrasi online ditawarkan untuk menguji sistem Anda.

Definisi add-on dibuat melalui analisis sumber daya yang disediakan oleh add-on, tersedia untuk permintaan eksternal. Biasanya, add-on menyertakan berbagai file yang menyertainya, seperti gambar, yang ditentukan dalam manifes add-on oleh properti web_accessible_resources. Pada manifes Chrome versi pertama, akses ke sumber daya tidak dibatasi dan situs mana pun dapat mengunduh sumber daya yang disediakan. Dalam manifes versi kedua, akses ke sumber daya tersebut secara default hanya diperbolehkan untuk add-on itu sendiri. Dalam manifesto versi ketiga, dimungkinkan untuk menentukan sumber daya mana yang dapat diberikan ke add-on, domain, dan halaman mana.

Halaman web dapat meminta sumber daya yang disediakan oleh ekstensi menggunakan metode pengambilan (misalnya, "fetch('chrome-extension://okb....nd5/test.png')"), yang biasanya menunjukkan "false" bahwa add-on tersebut belum diinstal. Untuk memblokir add-on agar tidak mendeteksi keberadaan sumber daya, beberapa add-on menghasilkan token verifikasi yang diperlukan untuk mengakses sumber daya. Memanggil pengambilan tanpa menentukan token selalu gagal.

Ternyata, perlindungan akses ke sumber daya tambahan dapat dilewati dengan memperkirakan waktu pelaksanaan operasi. Terlepas dari kenyataan bahwa pengambilan selalu mengembalikan kesalahan ketika meminta tanpa token, waktu eksekusi operasi dengan dan tanpa add-on berbeda - jika add-on ada, permintaan akan memakan waktu lebih lama dibandingkan jika add-on tidak terpasang. Dengan menilai waktu reaksi, Anda dapat menentukan keberadaan suplemen secara akurat.

Beberapa add-on yang tidak menyertakan sumber daya yang dapat diakses secara eksternal dapat diidentifikasi berdasarkan properti tambahan. Misalnya, add-on MetaMask dapat ditentukan dengan mengevaluasi definisi properti window.ethereum (jika add-on tidak disetel, "typeof window.ethereum" akan mengembalikan nilai "tidak terdefinisi").

Sumber: opennet.ru

Tambah komentar