2026年11月12日

2026年11月12日

Comprobar vulnerabilidades de plugins de WordPress: WP-CLI y WPScan

Este artículo es una edición localizada del original en japonés. Leer el original en japonés

Con las vulnerabilidades de los plugins, a veces pasa poco tiempo entre que se publican y empiezan los ataques. Lo básico es repetir con regularidad este ciclo: conocer los plugins y versiones que tienes instalados, cotejarlos con las vulnerabilidades conocidas y actualizar si hay una versión corregida. En este artículo se explican, por orden, la comprobación de versiones con WP-CLI, el cotejo con WPScan, cómo leer las bases de datos de vulnerabilidades, la comprobación de manipulaciones y qué hacer cuando se encuentra algo. Los comandos y las condiciones de precio corresponden a lo consultado en la documentación oficial de cada herramienta a noviembre de 2026.

1. Hacer una lista de los plugins instalados y sus versiones

Primero, averigua qué tienes instalado y en qué versión. También se puede ver en "Plugins" → "Plugins instalados" (Installed Plugins) del panel de administración, pero con WP-CLI puedes guardar la lista.

# Mostrar nombre, versión, activo/inactivo y si hay actualización
wp plugin list --fields=name,version,status,update

# Mostrar solo los que tienen actualización
wp plugin list --update=available

# Guardar en JSON como registro
wp plugin list --fields=name,version,status --format=json > plugins.json

También salen en la lista los plugins desactivados. Aunque estén desactivados, los archivos siguen en el servidor y se puede acceder directamente a archivos vulnerables, así que elimina los que no uses. Lo básico de WP-CLI se explica en "Cómo gestionar plugins con WP-CLI".

2. Cotejar con las vulnerabilidades conocidas usando WPScan

WPScan es una herramienta de línea de comandos que analiza un sitio WordPress desde fuera. La información de vulnerabilidades se obtiene de la API de WPScan, así que hay que crear una cuenta en wpscan.com y generar un token de API para usarlo.

Según la página de precios de WPScan, el plan gratuito se limita al uso no comercial y a 25 llamadas a la API al día. Para usarlo en un sitio de negocio hace falta una licencia de pago. Funciona también sin token de API, pero entonces no se muestra la información de vulnerabilidades.

# Instalación (si se instala con gem de Ruby)
gem install wpscan

# Si se usa con Docker
docker pull wpscanteam/wpscan

# Buscar plugins con vulnerabilidades notificadas
wpscan --url https://example.com --api-token YOUR_API_TOKEN -e vp

# Usar como método de detección tanto passive como aggressive
wpscan --url https://example.com --api-token YOUR_API_TOKEN -e vp --plugins-detection mixed

Estos son los valores principales de -e.

Valor Objetivo
vp Plugins con vulnerabilidades notificadas
ap Todos los plugins
p Plugins populares
vt Temas con vulnerabilidades notificadas

La detección de plugins es, por defecto, passive, que los deduce a partir del HTML de las páginas y similares. Puede que no se encuentren los plugins que no dejan rastro en el HTML; con aggressive o mixed se detectan más, pero también aumenta el número de peticiones.

Solo puedes analizar con WPScan los sitios que administras tú o aquellos para los que tienes permiso. Para más detalles, consulta también "Analizar las vulnerabilidades de un sitio con WPScan".

3. Confirmar los detalles en una base de datos de vulnerabilidades

Para los plugins que aparezcan en los resultados de WPScan o que se mencionen en noticias de seguridad, consulta los detalles en estas bases de datos.

  • WPScan Vulnerability Database (wpscan.com)
  • Wordfence Intelligence (wordfence.com)
  • Patchstack Database (patchstack.com)
  • NVD (nvd.nist.gov, se busca por número CVE)

Estos son los apartados que conviene mirar.

Apartado Qué comprobar
Versiones afectadas Si tu versión está dentro del rango
Versión corregida Si se resuelve actualizando. A veces todavía no hay versión corregida
Permisos necesarios Si se puede explotar sin iniciar sesión o si hace falta el rol de autor o de suscriptor
Gravedad (CVSS) Un valor de 0 a 10. Cuanto más alto, mayor el impacto
Tipo XSS, inyección SQL, escalada de privilegios, subida arbitraria de archivos, etc.

Atiende primero las que se pueden explotar sin iniciar sesión y las de mayor gravedad. Las que se pueden explotar con el rol de suscriptor son urgentes en los sitios que aceptan registro de usuarios (sitios de membresía, tiendas, etc.).

4. Comprobar que los archivos no han sido manipulados

Cuando es posible que se haya explotado una vulnerabilidad, comprueba si los archivos siguen como en la distribución original. verify-checksums de WP-CLI compara los archivos con las sumas de comprobación que publica WordPress.org.

# Comprobar todos los plugins
wp plugin verify-checksums --all

# Comprobar solo un plugin concreto
wp plugin verify-checksums contact-form-7

# Comprobar los archivos del núcleo de WordPress
wp core verify-checksums

Si no hay problemas, se muestra algo como Success: Verified 8 of 8 plugins.. Si hay archivos añadidos o con un contenido distinto, se muestra la lista.

Los plugins de pago que no se distribuyen en WordPress.org no tienen suma de comprobación, por lo que no se pueden comprobar con este método. En ese caso, descarga la misma versión desde el distribuidor y compara los archivos.

5. Qué hacer cuando se encuentra una vulnerabilidad

# Si hay versión corregida: actualizar
wp plugin update contact-form-7

# Si no hay versión corregida: desactivar y, si no lo usas, eliminar
wp plugin deactivate vulnerable-plugin
wp plugin delete vulnerable-plugin

# Antes de actualizar todo de golpe, ver qué se va a actualizar
wp plugin update --all --dry-run

vulnerable-plugin es un ejemplo. Sustitúyelo por el slug real (la columna name de wp plugin list).

  • Antes de actualizar, haz una copia de seguridad y, después, comprueba que funcionan las pantallas principales (formulario de contacto, pagos, etc.).
  • Si no sale una versión corregida y el desarrollo está parado, plantéate migrar a otro plugin con la misma función. Cuando se suspende la distribución de un plugin en WordPress.org, la página del plugin muestra un aviso de suspensión.
  • Si hay indicios de manipulación, no basta con actualizar. Comprueba también si se ha añadido un usuario administrador, si hay archivos PHP colocados en uploads o cambios en wp-config.php y, si hace falta, restaura desde una copia de seguridad.

6. Convertir la comprobación en un hábito

  • En "Plugins" del panel de administración puedes activar la actualización automática plugin por plugin (desde WordPress 5.5). Empieza por los plugins con menos riesgo de que una actualización rompa la visualización. Para más detalles, consulta "Cómo configurar la actualización automática de plugins".
  • Si ejecutas WPScan periódicamente con cron, ten en cuenta el límite gratuito de 25 llamadas al día y la condición de uso no comercial.
  • El plugin de seguridad Wordfence también avisa en sus análisis de los plugins que necesitan actualización, entre otras cosas. Su uso se explica en "Analizar el sitio con Wordfence".

Resumen

La comprobación de vulnerabilidades de plugins se hace en este orden: hacer una lista (wp plugin list), cotejar con las vulnerabilidades conocidas (WPScan y las bases de datos de vulnerabilidades), comprobar que no haya manipulación (wp plugin verify-checksums) y tratarlo actualizando o eliminando. Eliminar los plugins que no usas es la medida que menos trabajo da.

¿Dudas sobre WordPress? Quien publica este sitio está en Japón y responde en japonés. Contacto (en japonés)

お気軽にご相談ください

お見積りへ お問い合わせへ
▲