WebRTC Sızıntısı Nedir?
WebRTC, tarayıcıların eklenti gerektirmeden görüntülü görüşme, sesli arama ve dosya paylaşımı yapmasını sağlayan bir teknolojidir. Karşı tarafla doğrudan bağlantı kurabilmek için tarayıcı, bir STUN sunucusuna sorarak internette hangi IP adresiyle göründüğünü öğrenir ve bu bilgi web sayfasındaki JavaScript koduna da açıktır. VPN kullanırken bu istek VPN tünelinin dışından giderse, ziyaret ettiğiniz site VPN sunucusunun adresini değil gerçek IP adresinizi görebilir. Buna WebRTC sızıntısı denir.
Test Nasıl Çalışır?
- Tarayıcınız WebRTC ile Cloudflare'in herkese açık STUN sunucusuna (
stun.cloudflare.com:3478) bağlanır ve WebRTC'nin ortaya çıkardığı genel IP adreslerini toplar. - Bu adresler, sitemizin HTTP bağlantısında gördüğü IP adresiyle ve çift yığın (IPv4/IPv6) testinde bulunan adreslerinizle karşılaştırılır.
- WebRTC farklı bir ağa (ASN) ait bir IP adresi gösteriyorsa bu, olası bir sızıntı olarak işaretlenir. Aynı ağa ait farklı bir IP görünmesi ise normaldir; operatörler, özellikle mobil ağlarda, trafiği paylaşımlı adres havuzlarından farklı IP'lerle çıkarabilir.
ASN (otonom sistem numarası), IP adres bloklarını yöneten ağın, yani internet sağlayıcısının, VPN firmasının ya da veri merkezinin numarasıdır; herhangi bir adresin hangi ağa ait olduğunu IP sorgulama aracımızla görebilirsiniz. STUN isteğinin doğası gereği test sırasında IP adresiniz Cloudflare'in sunucusuna iletilir. Tarayıcınızda WebRTC kapalıysa ya da STUN isteği engellenirse test hiçbir adres bulamaz; bu durumda WebRTC üzerinden bir sızıntı da görünmez.
Yerel IP Adresim Neden Görünmüyor?
Eskiden WebRTC, 192.168.1.25 gibi yerel ağ adreslerinizi de sitelere gösterebiliyordu. Chrome, 76 sürümünden (2019) bu yana bu adresleri rastgele üretilmiş ve .local ile biten mDNS adlarının arkasına gizliyor; Firefox ve Safari'nin güncel sürümleri de aynısını yapıyor. Bu yüzden testimiz yerel IP'lerle değil, asıl önemli olan genel IP sızıntılarıyla ilgilenir.
Sonuçları Nasıl Yorumlamalısınız?
- VPN kapalıyken WebRTC'nin gösterdiği IP'nin sizin IP adresinizle aynı olması normaldir; gizlenecek başka bir adres yoktur.
- VPN açıkken WebRTC yalnızca VPN sunucusunun adresini gösteriyorsa korunuyorsunuz demektir.
- VPN açıkken WebRTC internet sağlayıcınıza ait bir adres gösteriyorsa gerçek IP'niz sızıyordur. Bu durum en çok, yalnızca web trafiğini yönlendiren tarayıcı eklentisi biçimindeki VPN'lerde ve proxy'lerde görülür.
- IPv6 sızıntısı: Bazı VPN'ler yalnızca IPv4 trafiğini tüneller ve IPv6 adresiniz VPN'in dışında kalır. Test, çift yığın testindeki IPv6 adresinizi de karşılaştırdığı için bu durumu yakalayabilir.
WebRTC Sızıntısı Nasıl Önlenir?
- VPN uygulamanızın korumasını açın: Tarayıcı eklentisi yerine bilgisayarınıza kurulan VPN uygulamasını kullanın; WebRTC/sızıntı koruması ve “kill switch” seçenekleri varsa etkinleştirin, uygulamanın IPv6 trafiğini de koruduğundan emin olun.
- Firefox: Adres çubuğuna
about:configyazıpmedia.peerconnection.ice.default_address_onlyayarınıtrueyaparsanız WebRTC yalnızca varsayılan bağlantınızı (VPN açıkken VPN'i) kullanır.media.peerconnection.enabledayarınıfalseyapmak WebRTC'yi tamamen kapatır, ancak tarayıcı üzerinden yapılan görüntülü görüşmeleri de bozar. - Brave: Ayarlar → Gizlilik ve güvenlik bölümündeki WebRTC IP işleme politikasını (WebRTC IP handling policy) “Disable non-proxied UDP” olarak değiştirin.
- Chrome ve Edge: Tarayıcı menüsünde bu ayar bulunmaz; VPN uygulamanızın korumasına ya da güvendiğiniz bir eklentiye başvurmanız gerekir.
- uBlock Origin: Eklentinin “Prevent WebRTC from leaking local IP addresses” seçeneği yalnızca yerel IP adreslerini gizler ve genel IP'nizi korumaz. Tarayıcılar yerel adresleri artık kendileri gizlediği için bu seçenek masaüstü sürümlerden kaldırılmıştır.
Ayarı değiştirdikten sonra tarayıcıyı yeniden başlatıp testi tekrarlayın. VPN'i açtığınızda IP adresinizin değişip değişmediğini ana sayfamızda, IPv6 durumunuzu ise IPv6 testi sayfasında kontrol edebilirsiniz.