Teknik pelacakan sidik jari menggunakan favicon browser, ‘Supercookie’
(github.com/jonasstrehle)- Favicon adalah teknik pelacakan yang menggunakan cache untuk memberi pengenal unik kepada pengunjung situs web, sehingga informasi identifikasi tetap bertahan meski pengguna menghapus cache atau cookie
- Metode ini tetap bekerja saat menggunakan mode penyamaran, VPN, dan pemblokir iklan, serta tetap bertahan setelah browser dimulai ulang atau sistem di-reboot
- Nomor identifikasi unik dibuat melalui kombinasi pola saat browser meminta favicon atau memuatnya dari cache
- Browser utama seperti Chrome, Firefox, Safari, Edge, serta browser seluler terdampak oleh kerentanan ini
- Dari sudut pandang keamanan browser dan privasi, pentingnya pengelolaan cache favicon kembali disorot
Gambaran umum Supercookie
- Supercookie adalah teknologi untuk mengidentifikasi pengguna dengan memanfaatkan cache favicon (F-Cache)
- Favicon adalah ikon kecil sebuah situs web yang ditampilkan di bilah alamat browser atau daftar bookmark
- Browser menyimpannya di basis data lokal terpisah (F-Cache) agar favicon bisa ditampilkan dengan cepat
- F-Cache berisi informasi URL yang dikunjungi, ID favicon, dan TTL (masa berlaku)
- Struktur ini bisa disalahgunakan untuk membuat pola browser yang unik dengan mengombinasikan apakah favicon diminta pada jalur URL tertentu atau tidak
Model ancaman
- Server web dapat menentukan apakah browser pernah mengunjungi situs sebelumnya berdasarkan apakah browser meminta favicon baru
- Jika favicon tidak ada di cache, server akan menerima permintaan GET; jika ada, permintaan akan dilewati
- Dengan menggabungkan status permintaan favicon dari beberapa jalur, dapat dibuat nomor identifikasi unik untuk tiap browser
- Pengenal ini tidak terpengaruh oleh langkah pencegahan pelacakan yang ada, seperti penghapusan cookie, inisialisasi ulang cache, penggunaan VPN, atau manipulasi header
Perbandingan dengan cookie biasa
- Menurut tabel tersebut, Supercookie memiliki akurasi identifikasi 100%, dan
- dapat mendeteksi mode penyamaran, tetap bertahan setelah cache·cookie dihapus, mengidentifikasi di antara beberapa jendela, serta melewati perangkat lunak anti-pelacakan
- Sebaliknya, cookie biasa tidak mendukung kemampuan-kemampuan ini
Browser yang terdampak
- Browser utama seperti Chrome, Safari, Edge, dan Firefox rentan
- Chrome: terdampak di Windows, macOS, Linux, Android
- Safari: terdampak di macOS, iOS
- Edge: terdampak di Windows, macOS, Android
- Firefox: pada beberapa platform, sidik jari yang berbeda dibuat saat mode penyamaran
- Brave: pada versi terbaru, sebagian besar sudah diblokir
- Brave versi lama (1.14.0) dan Firefox (<84.0) rentan terhadap serangan ini
Skalabilitas dan performa
- Dengan menyesuaikan jumlah jalur pengalihan (N), dimungkinkan membedakan 2^N pengguna unik
- Semakin banyak pengguna yang dapat dibedakan, semakin besar waktu baca·tulis yang diperlukan
- Panjang N dapat disesuaikan secara dinamis untuk meminimalkan jumlah pengalihan
Cara bertahan
- Cara paling pasti adalah menonaktifkan cache favicon sepenuhnya atau menghapusnya secara manual
- Chrome(macOS): hapus
~/Library/Application Support/Google/Chrome/Default/FaviconsdanFavicons-journal - Chrome(Windows): hapus
C:\Users\username\AppData\Local\Google\Chrome\User Data\Default - Safari(macOS): hapus isi
~/Library/Safari/Favicon Cache - Edge(macOS): hapus
~/Library/Application Support/Microsoft Edge/Default/FavicondanFavicons-journal
- Chrome(macOS): hapus
Tujuan dan latar belakang proyek
- Repositori ini dibuat untuk tujuan edukasi dan demonstrasi, dengan sasaran meningkatkan kesadaran keamanan terhadap kemungkinan pelacakan menggunakan favicon
- Inspirasinya berasal dari makalah penelitian University of Illinois Chicago dan artikel heise.de
- Proyek ini juga mencakup portal demo yang dibuat hanya dalam 2 hari sebagai bagian dari riset pribadi
Lainnya
- Pengembangnya adalah mahasiswa berusia 20 tahun asal Jerman yang tertarik pada desain perangkat lunak dan bidang keamanan TI
- Proyek ini dipublikasikan di GitHub dan dapat dijalankan di lingkungan Docker atau Node.js
- Liputan terkait muncul di media besar seperti Vice, Gizmodo, TechRadar, dan Schneier.com
1 komentar
Komentar Hacker News
Misalnya, di Reddit yang muncul justru favicon Ars Technica
Bahkan setelah update iOS, tetap begitu, dan terus bertahan juga di profil maupun mode penyamaran
Untuk memaksa penyegaran, jam sistem harus dimajukan beberapa tahun
Di MacBook saya sudah begini bertahun-tahun, jadi saya menyerah saja
Di iOS Safari, penghitung berjalan dari 1 sampai 18 lalu masuk loop tak berujung dengan redirect ulang
Ini perilaku yang tidak diinginkan, jadi saya mempertimbangkan untuk menghapus bookmark atau menyimpannya sebagai HTML
Saya biasanya memakai jendela privat, dan menyadari hal ini berkat Little Snitch
Kombinasinya qemu + cage + firefox, dan image-nya dihapus saat keluar
Memang lambat, tapi dari sisi keamanan terasa lebih aman. Kontainerisasi juga mungkin, tapi saya tidak nyaman browser mengakses kernel host
Mengendalikan ini dengan kebijakan eBPF juga rumit, jadi saya pilih isolasi dengan VM
Misalnya, karakteristik seperti renderer SwiftShader atau tidak adanya font bisa terdeteksi
Bahkan kalau mencoba menyamarkan hal-hal itu, manipulasi seperti rekayasa noise canvas cepat ketahuan. Kalau ada solusinya, saya ingin tahu
Rasanya seperti membuang 20 detik