تست نشت WebRTC

مرورگرها می‌توانند IP واقعی شما را از طریق WebRTC فاش کنند، حتی وقتی VPN آن را از وب‌سایت‌ها پنهان کرده است. این تست بررسی می‌کند که آیا مرورگر شما چنین می‌کند — کاملاً درون مرورگر و بدون ارسال داده به جایی.

در حال بررسی WebRTC…

نشت WebRTC چیست؟

WebRTC قابلیتی در مرورگر برای انتقال صدا، تصویر و داده به‌صورت نظیر‌به‌نظیر است — Google Meet، Discord و بسیاری از برنامه‌های وب از آن استفاده می‌کنند. مرورگر برای برقراری اتصال P2P از سرورهای STUN کمک می‌گیرد تا نشانی‌های IP خودش را کشف کند، از جمله نشانی‌های محلی و پشت NAT. یک وب‌سایت می‌تواند بی‌سروصدا از مرورگر بخواهد این کشف را انجام دهد و IPهای به‌دست‌آمده را با JavaScript بخواند — کاملاً با دور زدن VPN.

تست چگونه کار می‌کند

مرورگر شما یک RTCPeerConnection ساختگی می‌سازد، createOffer را صدا می‌زند و کاندیداهای ICE حاصل را می‌خواند. کاندیداهای ICE همه IPهایی را که مرورگر می‌تواند بیابد در بر می‌گیرند — از جمله IP واقعی شما، حتی وقتی VPN تمام ترافیک دیگر را تونل می‌کند. تست به‌صورت محلی اجرا می‌شود؛ چیزی به سرورهای ما فرستاده نمی‌شود.

چگونه نشت WebRTC را برطرف کنیم

سه راه دارید: (۱) از VPNای استفاده کنید که نشت‌های WebRTC را فعالانه مسدود می‌کند (برنامه‌های iOS و Android دوپلر، WebRTC را بیرون از تونل غیرفعال می‌کنند). (۲) افزونه‌ای نصب کنید که WebRTC را غیرفعال کند (uBlock Origin چنین گزینه‌ای دارد). (۳) در Firefox مقدار media.peerconnection.enabled را در about:config روی false بگذارید. غیرفعال کردن WebRTC تماس‌های تصویری درون مرورگر را از کار می‌اندازد؛ به‌جایش از برنامه بومی استفاده کنید.

FAQ

WebRTC چیست؟+

WebRTC استانداردی از W3C است که در هر مرورگر مدرنی تعبیه شده و ارتباط هم‌زمان نظیر‌به‌نظیر صدا، تصویر و داده را فراهم می‌کند. Google Meet، نسخه وب Discord، کلاینت وب Zoom و بیشتر گفتگوهای تصویری مرورگری با آن کار می‌کنند. همان APIهایی که تماس P2P را ممکن می‌کنند، به JavaScript هم اجازه می‌دهند نشانی‌های شبکه محلی شما را کشف کند.

چرا WebRTC حتی از پشت VPN هم IP واقعی مرا نشت می‌دهد؟+

چون پشته WebRTC زیر لایه برنامه کار می‌کند و رابط شبکه را مستقیماً از طریق STUN فرامی‌خواند. VPN ترافیک را در لایه IP تونل می‌کند اما تماس‌های کشف نشانی WebRTC را مسدود نمی‌کند. نشانی نشت‌کرده درون تونل رمزگذاری‌شده جابه‌جا می‌شود — اما مرورگر سپس آن را به JavaScript صفحه می‌دهد که می‌تواند آن را به هر جایی بفرستد.

کدام مرورگرها در معرض‌اند؟+

با تنظیمات پیش‌فرض همه‌شان: Chrome، Edge، Firefox، Safari، Brave، Opera، Arc. مرورگر Brave تنظیمی برای جلوگیری از نشت IP در WebRTC دارد که به‌طور پیش‌فرض خاموش است. Firefox اجازه می‌دهد WebRTC را از طریق about:config کاملاً غیرفعال کنید. سافاری iOS از iOS 14 به بعد تا حدی اصلاح شده اما کاملاً بسته نشده است.

آیا Doppler VPN نشت‌های WebRTC را مسدود می‌کند؟+

بله. کلاینت‌های iOS و Android ما کلید قطع اضطراری محلی دارند که تمام ترافیک UDP بیرون از تونل را مسدود می‌کند و مانع رسیدن کشف STUN به سرورهای بیرونی می‌شود. در دسکتاپ پیشنهاد می‌کنیم VPN را با گزینه WebRTC در uBlock Origin یا غیرفعال‌سازی در سطح مرورگر همراه کنید تا پوشش کامل شود.

آیا غیرفعال کردن WebRTC سایت‌ها را خراب می‌کند؟+

تماس‌های تصویری مرورگری (Meet، نسخه وب Zoom و Discord) و برخی ابزارهای همکاری را از کار می‌اندازد. روی مرور عادی، تماشای ویدئو و هر چیزی که نیاز به اتصال نظیر‌به‌نظیر ندارد اثری نمی‌گذارد. برنامه‌های بومی این سرویس‌ها به WebRTC وابسته نیستند.

آیا این تست خصوصی است؟+

بله. تست کاملاً در مرورگر شما و با API استاندارد RTCPeerConnection اجرا می‌شود. نه IP، نه نتیجه و نه فراداده‌ای از دستگاه شما خارج نمی‌شود. حتی این را هم ثبت نمی‌کنیم که تست را اجرا کرده‌اید.