WebRTC
Se lee en aproximadamente 4 minutos
Última actualización: 2026-02-14
Qué es WebRTC
WebRTC (Web Real-Time Communication) es un estándar web que permite comunicación en tiempo real de audio, vídeo y datos entre navegadores sin plugins. Las funciones de videollamada de Google Meet, Discord, Facebook Messenger, entre otros, se basan en WebRTC.
WebRTC adopta un método P2P (Peer-to-Peer) donde los navegadores se conectan directamente para eficiencia de comunicación. Para establecer esta conexión directa, existe un mecanismo que utiliza servidores STUN/TURN para notificar tu dirección IP al otro extremo, lo que causa problemas de privacidad.
Rol de los servidores STUN/TURN
Para establecer una conexión P2P de WebRTC, primero es necesario conocer tu posición en la red. Aquí se utilizan dos tipos de servidores: STUN y TURN.
stun.l.google.com:19302, utilizado por muchas aplicaciones WebRTC.El problema desde la perspectiva de la privacidad es que las consultas al servidor STUN pueden realizarse sin pasar por el túnel VPN. En ese caso, la dirección IP real que se supone oculta por la VPN se envía al servidor STUN y se puede obtener vía JavaScript.
ICE Candidate y mecanismo de filtración de IP
WebRTC utiliza un framework llamado ICE (Interactive Connectivity Establishment) para establecer rutas de conexión. ICE recopila múltiples candidatos de conexión (ICE Candidates) y selecciona la ruta óptima.
En el proceso de recopilación de ICE Candidates, se generan 3 tipos de candidatos.
- Host Candidate: Dirección IP local obtenida directamente de la interfaz de red del dispositivo (
192.168.x.xo10.x.x.x). Incluso durante una conexión VPN, puede incluirse la dirección IP de la NIC física - Server Reflexive Candidate (srflx): Dirección IP pública devuelta por el servidor STUN. Si la consulta STUN se realiza por una ruta que no pasa por la VPN, se expone la IP real fuera de la VPN
- Relay Candidate: Dirección del servidor TURN. Bajo riesgo de privacidad
Un sitio web malicioso puede obtener estas direcciones IP vía JavaScript simplemente generando un objeto RTCPeerConnection e iniciando la recopilación de ICE Candidates, sin necesidad de realizar una llamada real. Como se puede ejecutar con solo unas pocas líneas de código, se ha convertido en una de las principales vías de filtración de información al usar VPN, junto con las fugas de DNS.
Contramedidas por navegador
- Firefox: Introduce
about:configen la barra de direcciones y establecemedia.peerconnection.enabledenfalsepara deshabilitar completamente WebRTC. Para un control más fino, establecermedia.peerconnection.ice.default_address_onlyentrueexpone solo la IP de la interfaz de red predeterminada, previniendo la filtración de IP de otras interfaces (adaptador VPN, etc.). - Chrome: No se puede deshabilitar desde la pantalla de configuración. Usa extensiones como "WebRTC Leak Prevent" para restringir la política de recopilación de ICE Candidates a
disable_non_proxied_udp. Esto bloquea la comunicación UDP que no pasa por proxy, previniendo la filtración de la IP real. - Safari: En "Configuración" → "Avanzado" → "WebRTC" se pueden habilitar opciones de restricción de ICE Candidates. Safari tiene una configuración relativamente conservadora por defecto contra la filtración de IP por WebRTC.
- Brave: La configuración de prevención de filtración de IP por WebRTC está habilitada por defecto. Se puede verificar en "Configuración" → "Privacidad y seguridad" → "Política de manejo de IP WebRTC".
Incluso con el kill switch de VPN habilitado, puede que no prevenga las fugas de WebRTC. Las contramedidas del lado del navegador son imprescindibles.
Usos legítimos de WebRTC
WebRTC tiende a recibir atención por sus riesgos de privacidad, pero es una tecnología poderosa que permite comunicación en tiempo real sin plugins. Comprender sus principales usos facilita juzgar el impacto de deshabilitarlo.
- Videoconferencias: Google Meet, Zoom (versión web), Microsoft Teams (versión web) todos usan WebRTC. Deshabilitarlo impide participar desde el navegador
- Llamadas de voz: Versión web de Discord, función de llamadas de Facebook Messenger, etc.
- Intercambio de archivos P2P: WebTorrent y servicios de transferencia directa de archivos entre navegadores
- Juegos en tiempo real: Usado para comunicación de baja latencia en juegos multijugador basados en navegador
- Streaming en vivo: Aumentan los casos de adopción de WebRTC para transmisiones en vivo de ultra baja latencia (sub-segundo)
Si usas videoconferencias frecuentemente, en lugar de deshabilitar completamente WebRTC, es más práctico utilizar la función de prevención de fugas de WebRTC proporcionada por el proveedor VPN o la configuración de restricción de ICE Candidates del navegador.
Cómo verificar fugas de WebRTC
Puedes verificar fácilmente si hay fugas de WebRTC en tu navegador con sitios de prueba dedicados. Ejecuta la prueba con la VPN conectada; si aparece alguna IP distinta a la del servidor VPN, hay una fuga.
Los pasos de verificación son los siguientes.
- Conectarse a la VPN
- Acceder a un sitio de prueba de fugas de WebRTC
- Verificar las direcciones IP mostradas
- Si aparece alguna dirección distinta a la IP del servidor VPN, hay fuga
Verificar periódicamente junto con las pruebas de huella digital del navegador permite validar la efectividad de la configuración de privacidad.
Conceptos erróneos comunes
- Si uso VPN no ocurren fugas de IP por WebRTC
- WebRTC accede directamente a la interfaz de red eludiendo el túnel VPN, por lo que la VPN sola no puede prevenirlo. Es necesario deshabilitar WebRTC en el navegador o usar extensiones de prevención de fugas.
- Deshabilitar WebRTC impide usar internet
- Deshabilitar WebRTC no afecta la navegación web normal, la visualización de vídeos ni las descargas. Solo afecta funciones que usan comunicación en tiempo real dentro del navegador, como videollamadas y compartición de archivos P2P.