Studi kasus kebocoran 2: Kebocoran WebRTC

Alamat IP publik Anda merupakan bagian dari identitas individu di web, memungkinkan situs, aplikasi, dan pihak ketiga untuk melacak aktivitas mereka di seluruh web dan mengaitkannya dengan individu tertentu. Dengan VPN, situs melihat alamat IP publik server VPN alih-alih pengguna, melindungi identitas mereka.

Namun, WebRTC kadang-kadang memungkinkan situs web untuk melihat alamat IP publik pengguna, yang mewakili kebocoran privasi. Studi kasus ini dari Lab Penelitian Privasi kami menjelaskan bagaimana kebocoran WebRTC terjadi, dan bagaimana mengujinya menggunakan Alat Pengujian Kebocoran ExpressVPN.

Ikhtisar WebRTC

WebRTC adalah seperangkat teknologi terbuka yang memungkinkan halaman web untuk menyediakan komunikasi peer-to-peer (P2P) melalui browser web. Sebagian besar browser modern sekarang sepenuhnya mendukung standar WebRTC.

WebRTC, antara lain, memberi browser web kemampuan untuk mendeteksi alamat IP publik pengguna dan juga alamat IP lokal mereka. Kemampuan ini adalah kunci untuk memfasilitasi komunikasi P2P hanya menggunakan browser web, tanpa aplikasi atau plugin tambahan.

Kebocoran WebRTC

Kebocoran WebRTC adalah bentuk kebocoran IP. Halaman web dapat menggunakan JavaScript WebRTC API untuk meminta browser tentang alamat IP perangkat. Setelah mereka mengumpulkan alamat IP ini, mereka dapat mengirimnya ke server mereka dan menggunakannya untuk mengidentifikasi siapa yang mengakses halaman web atau layanan tertentu.

Sebagian besar aplikasi VPN secara efektif melindungi terhadap kebocoran alamat IPv4 melalui WebRTC, namun banyak aplikasi VPN cenderung mengabaikan kebocoran alamat IPv6 dengan cara yang sama.

Bagaimana WebRTC mendeteksi alamat IP?

WebRTC menggunakan dua teknik utama untuk menentukan alamat IP perangkat: server STUN / TURN dan Host Calon Discovery.

STUN / MENGHIDUPKAN server menemukan alamat IP dengan memeriksa alamat IP publik apa yang digunakan untuk mengaksesnya. Biasanya ini bukan penyebab kebocoran IP VPN.

Tuan Rumah Penemuan Kandidat lebih bermasalah ketika datang ke kebocoran WebRTC. Fungsionalitas ini memungkinkan browser untuk secara langsung memeriksa sistem Anda dan antarmuka jaringan dan melihat apa alamat IP yang terkait dengannya.

Semua antarmuka jaringan yang aktif pada perangkat memerlukan alamat IP agar berfungsi. Misalnya, untuk koneksi Wi-Fi aktif akan ada antarmuka jaringan yang sesuai pada perangkat. Antarmuka ini pada gilirannya akan memiliki alamat IP.

WebRTC dapat mengungkapkan alamat IP ini, yang biasanya tidak dapat dilihat secara eksternal ke perangkat, ke halaman web.

Mengapa kebocoran IPv6 bermasalah?

Alamat IPv4 tidak mencukupi — tidak cukup hanya untuk berkeliling! Biasanya, alamat IPv4 dibagikan di antara orang-orang. Untuk melakukan ini, sebuah sistem yang disebut Network Address Translation (NAT) digunakan. Sistem ini memungkinkan perangkat untuk menetapkan alamat "IPv4 Lokal" ke antarmuka jaringan mereka sambil berbagi alamat IP publik yang umum, biasanya melalui ISP. Alamat IP lokal ini digunakan secara global oleh jutaan komputer di seluruh dunia dan sulit untuk dihubungkan langsung dengan individu tertentu.

Masalah dengan IPv6 adalah alamat tidak tersedia. Ada sebuah banyak dari mereka! Ini berarti bahwa setiap orang biasanya masing-masing diberikan alamat IPv6 yang unik. Ketika alamat IPv6 tersebut ditetapkan untuk antarmuka jaringan, itu berarti bahwa WebRTC dapat menemukan alamat IP yang mengidentifikasi siapa Anda, bahkan jika alamat IP itu biasanya tidak terlihat oleh dunia luar.

Apa jenis kebocoran yang ada?

Ada dua jenis kebocoran WebRTC, dengan tingkat keparahan berbeda. Pengguna yang rentan terhadapnya bergantung pada apakah mereka memberikan izin terkait WebRTC spesifik ke laman web. Dalam kedua kasus tersebut, VPN yang baik harus melindungi dari kebocoran.

Perhatikan bahwa produsen peramban dapat menggunakan metode berbeda untuk mengimplementasikan WebRTC, sehingga mungkin satu peramban bocor dan lainnya tidak, bahkan dengan penyiapan perangkat dan penyedia VPN yang sama.

Kebocoran persisten (tidak perlu izin)

Secara default, halaman web tidak diberikan izin WebRTC. Namun demikian, masih mungkin bagi halaman untuk mengakses beberapa alamat IP pengguna menggunakan API WebRTC. Dalam situasi ini, situs web dapat dengan mudah melacak pengguna melalui alamat IP mereka tanpa sepengetahuan mereka.

Kebocoran yang dipicu (diperlukan izin)

Halaman web dapat secara eksplisit meminta izin untuk menggunakan fungsionalitas yang berhubungan dengan WebRTC. Izin ini sebenarnya diklasifikasikan sebagai Mikropon dan Kamera izin. Alasan untuk ini adalah bahwa WebRTC adalah teknologi yang diarahkan pada komunikasi P2P seperti panggilan suara atau konferensi video.

Ketika salah satu dari izin ini diberikan, halaman web mendapatkan akses ke rentang alamat IP yang lebih luas pada perangkat, yang memungkinkan kebocoran. Di beberapa browser, izin tersebut tetap ada di seluruh sesi, yaitu jika pengguna telah memberikan izin ke halaman web satu kali, halaman web akan mempertahankan izin tersebut ketika pengguna kembali ke halaman di masa mendatang..

Perhatikan bahwa setiap halaman web harus diberikan izin secara terpisah, sehingga pemberian izin untuk satu situs tidak memberikan izin untuk yang lain.

Meskipun kebocoran ini tidak separah dari kebocoran yang terus-menerus di atas, karena mereka membutuhkan pemberian izin secara aktif oleh pengguna, kami masih menganggapnya sebagai perhatian. WebRTC semakin populer dan pengguna dapat berharap untuk melihat lebih banyak situs menggunakan teknologi ini di tahun-tahun mendatang. Jika VPN tidak menyembunyikan alamat IP ketika pengguna memberikan izin ke situs, maka mereka hanya memiliki dua opsi:

  • Tidak menggunakan situs dan layanan yang diaktifkan WebRTC
  • Terima risiko keamanan dan privasi yang terkait dengan pengungkapan alamat IP mereka

Menguji kebocoran

Tes ini dapat dilakukan pada komputer desktop apa pun. Saat melakukan tes kebocoran, kami sarankan Anda memiliki IPv6 tersedia di perangkat pengujian Anda, karena ini adalah situasi yang paling mungkin terjadi di mana penyedia VPN bocor.

Pengujian manual

Anda dapat menguji kebocoran secara manual menggunakan uji kebocoran WebRTC online kami.

Langkah Repro

  • Pastikan halaman uji kebocoran adalah Tutup
  • Pastikan aplikasi VPN Anda terputus
  • Kunjungi halaman uji kebocoran WebRTC
  • Catat semua publik Alamat IP yang Anda lihat di output tes
    • Mereka akan ditampilkan dengan Status sebagai "Potensi Kebocoran"
  • Tutup halaman tes kebocoran
  • Hubungkan ke VPN Anda
  • Buka kembali halaman uji kebocoran WebRTC
  • Jika Anda melihat salah satu alamat IP yang baru saja Anda buat catatan di atas, maka Anda mengalami kebocoran

Perhatikan bahwa kami secara eksplisit meminta Anda untuk menutup halaman uji kebocoran untuk menghindari masalah caching browser. Banyak browser akan melakukan cache IP yang terdeteksi melalui WebRTC, sehingga memuat ulang halaman web bukanlah cara yang dapat diandalkan untuk menjalankan tes.

Perhatikan bahwa halaman pengujian ini hanya menguji untuk kelas kebocoran paling parah, yaitu "Persistent Leaks" yang dibahas di atas. Untuk menguji apakah Anda bocor ketika izin diberikan ke browser Anda, kami sarankan Anda menggunakan alat pengujian kebocoran di bawah ini.

Pengujian menggunakan Alat Pengujian Kebocoran ExpressVPN

Alat Uji Kebocoran ExpressVPN adalah rangkaian alat Python open-source yang dapat dikembangkan yang dirancang untuk pengujian kebocoran manual dan otomatis untuk aplikasi VPN. Silakan lihat pengantar kami untuk alat untuk instruksi tentang mengunduh dan mengatur alat.

Setelah menyiapkan alat, pastikan Anda berada di direktori root alat dan jalankan:

./run_tests.sh -c configs / case_studies / webrtc_leaks.py

Perintah ini akan menjalankan dua test case di beberapa browser. Kedua kasus uji sebagian besar merupakan otomatisasi dari langkah-langkah manual yang dijelaskan di atas dan lakukan hal berikut:

  • Pastikan aplikasi VPN yang sedang diuji terputus
  • Tentukan alamat IPv4 dan IPv6 publik perangkat
  • Hubungkan aplikasi VPN
  • Gunakan halaman web pengujian kebocoran yang disederhanakan untuk mengumpulkan IP WebRTC
  • Periksa apakah ada IP publik yang dikumpulkan sebelum terhubung terlihat melalui WebRTC setelah terhubung

Satu tes akan menguji kebocoran terus-menerus ketika tidak ada izin browser diberikan, tes lain akan menguji kebocoran ketika izin adalah diberikan.

Catatan: Anda dapat menyesuaikan browser yang digunakan dengan mengubah BROWSERS daftar di webrtc_leaks.py mengajukan.

Studi kasus kebocoran 2: Kebocoran WebRTC
admin Author
Sorry! The Author has not filled his profile.