¿Qué plugins llaman a casa?
Los plugins hablan constantemente con servidores externos: comprobaciones de licencia, búsquedas de actualizaciones, estadísticas de uso, servicios de IA. Casi todo es inofensivo, algo no lo es, y casi nada se ve. Connection Monitor lo hace visible. Lo usamos nosotros mismos en cada prueba del laboratorio.
Versión 1.1.0 · ZIP, 29 KB · GPL · WordPress 6.5+ · PHP 8.1+ · Español, inglés, alemán
Qué te muestra
Salientes
Cada petición que un plugin envía desde tu servidor: a qué servidor, cuánto tardó y qué plugin está detrás.
Qué se envía y se recibe
Qué tipos de datos salen, como la dirección de tu web, el correo del administrador, las versiones o la lista de plugins, y qué devuelve el servidor. Las claves y contraseñas nunca se guardan.
Entrantes
Quién accede desde fuera a las interfaces de tu web (API REST, XML-RPC, Ajax, cron), con o sin sesión iniciada, y a qué plugin pertenece la interfaz.
Análisis de página
Lo que el navegador de tus visitantes carga desde servidores externos: scripts, fuentes, iframes, imágenes.
Un ejemplo real de nuestro laboratorio
Instalamos y activamos WP Rocket 3.24 en el laboratorio con una medición en marcha. Resultado del 7 de noviembre de 2026:
- 31 conexiones salientes a tres servidores de WP Rocket (
api.wp-rocket.me,saas.wp-rocket.me,b.rucss.wp-rocket.me) - Entre otras cosas se enviaron las direcciones de las páginas, el correo de la cuenta de la licencia y la clave de licencia. Según la propia petición, las páginas se entregaron al servicio para «performance_hints».
- Parte de estas peticiones se hizo antes de que la comprobación de la licencia tuviera éxito.
No es una acusación: estas funciones necesitan ese intercambio. Pero conviene que sepas que ocurre, por ejemplo para tu política de privacidad. La prueba completa llegará pronto en su propio artículo.
Lo que no hace
- No hace ninguna conexión hacia fuera por su cuenta. Sin servidor de actualizaciones propio, sin estadísticas, sin cuenta.
- Nunca guarda claves de licencia, tokens ni contraseñas. Los correos y las direcciones IP se enmascaran.
- Las visitas normales no se registran. En los accesos a interfaces, la IP se acorta.
- Todo se queda en tu base de datos y se borra a los 30 días (ajustable). Al desinstalar el plugin desaparece todo.
Cómo empezar
- Descarga el ZIP.
- En WordPress, ve a Plugins → Añadir nuevo → Subir plugin, elige el ZIP y actívalo.
- En Herramientas → Conexiones verás lo que ocurre. Antes de una prueba, inicia una medición en Mediciones.
Para curiosos de la técnica
- Salientes: filtro
pre_http_request(inicio, nunca cambia la petición) y acciónhttp_api_debug(resultado). Se guarda: servidor, ruta sin parámetros, método, estado, duración, tamaño y si bloqueó la carga. - Atribución: mediante
debug_backtrace. El «origen» es el archivo que llama a la función HTTP. Si es el propio WordPress (por ejemplo, búsquedas de actualizaciones), el plugin que lo inició aparece comotriggered_by. - Entrantes:
rest_post_dispatch,xmlrpc_call,admin_initpara Ajax sin sesión,initparawp-cron.phpdesde IP externas. El archivo del plugin responsable se obtiene por reflexión del callback. Tu propia sesión del navegador y las llamadas de la web a sí misma se ocultan por defecto. - Tipos de datos: reconocimiento de patrones en el contenido enviado (dirección de la web, correo del administrador, versiones, lista de plugins, tema, idioma, datos del servidor, clave de licencia). Los campos como
key,token,licenseopasswordse ocultan siempre. - Motivo: una estimación según la dirección y el contenido, marcada como «probablemente» en la interfaz.
- Almacenamiento: una tabla
{prefix}bnc_log, una escritura por petición al final (shutdown), limpieza diaria con WP-Cron. - Límites: las peticiones que esquivan WordPress (cURL propio, sockets,
file_get_contentscon URL) no las detecta de forma fiable ningún plugin PHP. El análisis de página solo lee el HTML, no lo que un banner de cookies o JavaScript cargan después. - Suma de comprobación (SHA-256) del ZIP:
16644ff78d7448e773032197ea12e514f6c9fa939e6465469dfe78bdbc8e4e44