¿Qué es una fuga de WebRTC, y cómo la evito?
Activas la VPN, compruebas tu IP y aparece la dirección de la VPN. Bien. Pero una página todavía puede hacerle al navegador otra pregunta, a través de WebRTC, y obtener otra respuesta. Esa diferencia es la fuga.
Qué hace WebRTC
WebRTC es la función del navegador detrás de las videollamadas y de compartir pantalla en herramientas como Google Meet y Microsoft Teams en la web. Para conectar a dos personas directamente, cada navegador tiene que averiguar en qué direcciones se le puede encontrar: su dirección en la red local y la dirección pública que ve internet. La pública la descubre preguntando a un pequeño servidor público, llamado servidor STUN: «¿desde qué dirección me ves llegar?».
Una página web puede iniciar este proceso sin pedir permiso y sin usar tu cámara ni tu micrófono. Simplemente lee las respuestas.
Cómo se produce la fuga
Que ocurra depende del tipo de VPN que uses:
- Una app de VPN que cubre todo el dispositivo manda todo el tráfico, incluida la pregunta de WebRTC, por su túnel. El servidor STUN ve la dirección de la VPN y no hay nada que se pueda filtrar. Es el caso normal en las apps de VPN serias con su configuración por defecto.
- Una «VPN» en forma de extensión del navegador suele ser un proxy solo para las páginas web. El tráfico de WebRTC no es tráfico de páginas web, así que puede rodear el proxy y mostrar tu dirección real. Es la fuga clásica.
- Una VPN con túnel dividido (algunas apps o webs excluidas) puede filtrar igual si el navegador está excluido.
¿Y las direcciones locales como 192.168.1.20? Los navegadores antiguos también se las daban a cualquier página. Las versiones actuales de Chrome, Edge, Firefox y Safari las ocultan tras nombres aleatorios que terminan en .local, salvo que hayas permitido a la página usar la cámara o el micrófono, así que esa parte del viejo problema prácticamente ha desaparecido.
Pruébalo
La página de inicio de iplover hace la prueba en tu navegador: pregunta al servidor STUN de Cloudflare (la misma empresa que aloja la web), recoge cada dirección que comunica WebRTC, ignora los nombres aleatorios .local y compara el resto con la dirección pública que vio nuestro servidor al pedir la página. Hay tres resultados posibles:
| Resultado | Qué significa | Qué hacer |
|---|---|---|
| Ninguna fuga | WebRTC no comunicó nada más allá de la dirección que ya ven las webs | Nada. |
| Fuga detectada, con una dirección | WebRTC puede revelar una dirección distinta de tu dirección pública | Si estás en una VPN y la dirección es la tuya real, arréglalo como se explica abajo. Si no usas VPN, puede ser tu dirección IPv6 o una segunda conexión; no es una fuga de privacidad. |
| WebRTC no está disponible | El navegador lo bloquea (o está desactivado) | Nada: por ahí no puede filtrarse nada. |
Hazla dos veces, con la VPN activada y desactivada. Si la dirección que sale con la VPN activada coincide con la que aparece sin ella, es tu dirección real la que se filtra.
Evítalo, navegador por navegador
- Cualquier navegador: usa una app de VPN para todo el dispositivo en vez de una extensión del navegador, y no excluyas el navegador del túnel. Así arreglas la causa y no el síntoma.
- Firefox: los usuarios avanzados pueden desactivar WebRTC por completo en la configuración avanzada de Firefox. Eso también impide las videollamadas web en Firefox hasta que lo vuelvas a activar. Mozilla describe el ajuste en su página sobre la privacidad de WebRTC (en inglés); estos ajustes pueden cambiar entre versiones, así que compruébalo allí.
- Brave: sus ajustes de privacidad permiten elegir cómo puede usar WebRTC tus direcciones de red, con una opción que impide que WebRTC rodee un proxy. Brave explica las opciones en su documentación sobre los ajustes de WebRTC (en inglés).
- Chrome y Edge: no hay un interruptor para esto en los ajustes normales. Las organizaciones pueden controlarlo de forma centralizada con la política WebRtcIPHandling de Chrome. Existen extensiones que limitan WebRTC; comprueba quién publica una antes de instalarla.
- Safari: ya oculta las direcciones locales; para tu dirección pública, usa una VPN para todo el dispositivo.
Después de cualquier cambio, repite la prueba para asegurarte de que ha hecho lo que esperabas.
Lo que una fuga de WebRTC no puede hacer
La fuga revela una dirección, lo mismo que ve cualquier web cuando no usas VPN: más o menos dónde estás y qué proveedor usas. No expone tus archivos, tus contraseñas ni tu historial. Importa si el objetivo de tu VPN es que las webs no conozcan tu dirección, y casi nada si la usas solo para protegerte en wifis públicas.
Fuentes
Documentos oficiales que usamos para comprobar los datos de esta guía.