---
title: "Cómo revisar tus webs WordPress tras un ataque como el de Rank Math PRO"
description: "Guía práctica para auditar sitios WordPress tras un ataque a la cadena de suministro: qué preparar antes, comandos de WP-CLI, consultas SQL y el caso real de una red de 30 webs revisadas tras el incidente de Rank Math SEO PRO 3.0.123."
url: https://wpdirecto.com/como-revisar-tus-webs-wordpress-tras-un-ataque-como-el-de-rank-math-pro/
date: 2026-10-18
modified: 2026-10-18
author: "Editor WPDirecto"
image: https://wpdirecto.com/wp-content/uploads/2026/10/auditoria-seguridad-wordpress-wp-cli-cadena-suministro.png
categories: ["Guías", "Seguridad"]
tags: ["auditoría", "copias de seguridad", "malware", "mantenimiento", "plugins", "Rank Math", "seguridad", "wp-cli"]
type: post
lang: es
---

# Cómo revisar tus webs WordPress tras un ataque como el de Rank Math PRO

**El [malware colado en algunas copias de Rank Math SEO PRO 3.0.123](https://wpdirecto.com/malware-en-rank-math-seo-pro-3-0-123-que-webs-estan-afectadas-y-como-limpiarlas/) ha obligado a muchos administradores a revisar sus webs a contrarreloj. Hemos seguido una revisión real de una red de una treintena de sitios WordPress para contar qué conviene tener preparado antes de que pase algo así, qué comprobar con WP-CLI y qué hacer cuando no hay acceso por terminal.** El resultado de ese caso fue limpio para este incidente, pero sacó a la luz otros problemas que llevaban meses ahí.

**Las claves de cómo auditar WordPress tras un ataque a la cadena de suministro en 20 segundos**

- Un inventario de plugins y versiones permite saber en minutos qué webs están expuestas.
- WP-CLI y unas pocas consultas SQL cubren la base de datos, los usuarios y los archivos.
- En el caso revisado no hubo infección, pero aparecieron un volcado SQL público y PHP olvidados.

Los ataques a la cadena de suministro tienen una particularidad incómoda: el código malicioso llega por el canal en el que más se confía, la actualización oficial de un plugin. Ya ocurrió en junio con [el ataque a la CDN de Awesome Motive](https://wpdirecto.com/un-ataque-a-la-cdn-de-awesome-motive-expone-sitios-wordpress-a-backdoors/) y ahora con Rank Math. Cuando sale el aviso, la pregunta es siempre la misma: ¿cuáles de mis webs tienen esa versión y cómo compruebo si están comprometidas? Responderla rápido depende mucho de lo que se haya preparado antes.

## Lo que conviene tener listo antes del próximo incidente

- **Inventario de plugins y versiones por web.** Ya sea con WP-CLI, con una herramienta de gestión centralizada o con una hoja actualizada, hay que poder responder en minutos qué sitios usan un plugin y en qué versión.
- **Copias de seguridad fuera del servidor y con suficiente retención.** Rank Math recomienda restaurar una copia anterior al 15/10/2026 a las 22:02 (hora peninsular). Si solo se guardan los últimos dos días, esa opción desaparece. Las copias no deben quedarse dentro de la raíz web.
- **Acceso SSH y WP-CLI comprobado.** Descubrir en mitad del incidente que el hosting no ofrece terminal, o que la contraseña no funciona, hace perder horas.
- **Alertas de vulnerabilidades.** Patchstack, Wordfence o WPScan publican avisos y bases de datos que permiten enterarse antes que por las redes sociales.
- **Un registro de actualizaciones.** Saber cuándo se actualizó cada plugin permite comprobar si cayó dentro de la ventana afectada. En el caso que contamos fue precisamente lo que faltó.
- **PHP bloqueado en uploads.** Impedir la ejecución de PHP en wp-content/uploads corta una vía habitual de puertas traseras.

## Cómo revisar una web con WP-CLI

Si hay acceso por terminal, [WP-CLI](https://wpdirecto.com/wp-cli-herramienta-administrador-de-wordpress/) es la forma más rápida. Estos comandos, ejecutados desde el directorio de WordPress, cubren los indicadores publicados por Rank Math y Wordfence para este caso, y sirven como plantilla para incidentes similares cambiando los nombres concretos.

Primero, la versión instalada y si el plugin está activo:

```
wp plugin list --fields=name,status,version | grep -i rank
wp plugin get seo-by-rank-math-pro --field=versionLenguaje del código: JavaScript (javascript)
```

Después, la base de datos y los usuarios. Las tres opciones son las que crea este malware; un resultado vacío es buena señal. La lista de administradores con fecha de alta ayuda a detectar cuentas creadas en los últimos días:

```
wp option get _uf6qdn2hmm
wp option get t8krdk990phb
wp option get _np5pvf754c
wp user list --role=administrator --fields=ID,user_login,user_email,user_registered
wp cron event listLenguaje del código: JavaScript (javascript)
```

Luego, los archivos. La verificación del núcleo detecta ficheros añadidos o modificados, como el falso wp-includes/class-wp-cache-util.php. La de plugins solo funciona con los del directorio oficial, así que los premium hay que compararlos con una copia limpia descargada de su web:

```
wp core verify-checksums
wp plugin verify-checksums --all
ls -la wp-includes/class-wp-cache-util.php
ls -la wp-content/mu-plugins/
find wp-content/uploads -name "*.php" -size +0
find wp-content -name "*.php" -newermt "2026-10-15 20:00"
grep -RIl --include="*.php" "xmmqhn" wp-content/
grep -RIl "rank1cdn" wp-content/ .htaccess
```

Por último, fuera de WordPress. El crontab del usuario del servidor web, las claves SSH autorizadas y los procesos en ejecución no aparecen en ninguna herramienta de WordPress y son justo donde una puerta trasera persistente puede esconderse:

```
crontab -l -u www-data | grep ms6v46
cat ~/.ssh/authorized_keys
ps aux | grep -i phpLenguaje del código: JavaScript (javascript)
```

Conviene sustituir www-data por el usuario real del servidor web, que cambia según el hosting. Para el resto de tareas con plugins, en WP Directo explicamos cómo [gestionar plugins con WP-CLI como un profesional](https://wpdirecto.com/gestionar-plugins-con-wp-cli-como-un-profesional/).

## Si no hay WP-CLI: SQL, panel y herramientas centralizadas

Muchos alojamientos compartidos no dan terminal. En ese caso, phpMyAdmin o cualquier cliente de base de datos permite hacer las mismas comprobaciones. Hay que sustituir wp_ por el prefijo real de las tablas:

```
SELECT option_name FROM wp_options
WHERE option_name IN ('_uf6qdn2hmm','t8krdk990phb','_np5pvf754c','rank_math_pro_version');

SELECT user_login, user_email, user_registered FROM wp_users
WHERE user_login LIKE 'wpsupport%' OR user_email LIKE '%wp-mail.net'
OR user_registered >= '2026-10-15';Lenguaje del código: JavaScript (javascript)
```

Un detalle que encontramos en la revisión: la opción rank_math_pro_version de la base de datos no siempre coincide con la versión real de los archivos, porque solo se actualiza cuando el plugin ejecuta su rutina de actualización. Para confirmar la versión hay que mirar la cabecera Version: del archivo rank-math-pro.php o la pantalla de Plugins.

Para los archivos, el gestor del panel de hosting sirve para revisar mu-plugins y uploads, y los escáneres de plugins de seguridad como Wordfence o Sucuri automatizan la búsqueda de patrones. Cuando hay muchas webs, lo práctico es una herramienta de gestión centralizada. En el caso que contamos se usó el hub de [MCP Content Manager](https://wpdirecto.com/mcpcontentmanager), que permite lanzar consultas SQL de solo lectura, listar directorios, escanear wp-content y verificar el núcleo en cada sitio desde un único punto. MainWP o ManageWP cubren parte de estas tareas.

## Un caso real: la revisión de 30 webs en una mañana

La red revisada, cuyos nombres omitimos, suma una treintena de sitios WordPress de distintos tamaños: medios, tiendas y webs corporativas. El proceso siguió este orden:

1. **Inventario.** Rank Math SEO PRO estaba activo en 21 sitios e instalado pero desactivado en otros 7, con versiones antiguas. Según los datos del panel, al menos 10 webs habían tenido la 3.0.123 activa. En el momento de la revisión todas estaban ya en la 3.0.124 gracias a las actualizaciones automáticas.
2. **Base de datos.** Ninguna web tenía las tres opciones del malware, administradores sospechosos, usuarios dados de alta después del 15/10 ni referencias a rank1cdn.
3. **Archivos.** El escaneo de wp-content y la verificación del núcleo no encontraron el archivo falso, PHP nuevo en mu-plugins o uploads, archivos .cache con código ni las cadenas del malware.
4. **Accesos.** Dos webs no respondían al panel por problemas de autenticación. Una se recuperó renovando el token de conexión; la otra quedó pendiente.

La revisión dejó también claras sus limitaciones. No fue posible saber a qué hora exacta se instaló la 3.0.123 en cada web, porque no había un registro de actualizaciones con fecha. Tampoco se podía comprobar desde el panel el crontab del sistema ni las claves SSH. Y los escáneres por firmas generaron decenas de falsos positivos por web, casi siempre bibliotecas legítimas que usan proc_open o exec, lo que obliga a filtrar a mano.

Lo más útil fue lo que apareció sin buscarlo: un volcado completo de la base de datos de 254 MB en la raíz pública de una web, un instalador de Duplicator olvidado de una migración, varios archivos PHP sueltos en la raíz de 2025 que nadie recordaba y 45 imágenes guardadas con extensión .php en uploads por un proceso de importación. La que se abrió para comprobarla era una imagen JPEG, no código, pero 31 de ellas se usaban como imagen destacada, así que borrarlas sin más rompía esas entradas. Todo se corrigió ese mismo día.

## Qué cambiar después de la revisión

Aunque el resultado sea limpio, el ejercicio sirve para cerrar huecos. Si queda cualquier duda sobre una web que tuvo la versión afectada activa, Rank Math pide cambiar todas las credenciales: contraseñas, base de datos, claves y salts de wp-config.php y claves de API. Las copias de seguridad y los instaladores de migración deben salir de la raíz web, el PHP en uploads debe quedar bloqueado y conviene programar revisiones periódicas en lugar de esperar al siguiente aviso. Para webs que sí resulten infectadas, la [hoja de AyudaWP con 77 pasos](https://wpdirecto.com/la-hoja-gratuita-de-ayudawp-con-77-pasos-para-limpiar-un-wordpress-infectado/) y herramientas como [WP Beacon](https://wpdirecto.com/wp-beacon-vigila-la-cadena-de-suministro-de-plugins-de-wordpress/) ayudan a ordenar el trabajo.

Las actualizaciones automáticas merecen una reflexión aparte. En este incidente fueron un arma de doble filo: instalaron la versión comprometida durante la ventana de once horas, pero también llevaron la 3.0.124 a todas las webs en cuanto estuvo disponible. Desactivarlas no elimina el riesgo; lo que sí ayuda es saber cuándo se aplicó cada una.

## Preguntas frecuentes

### ¿Cómo sé si mi web tiene Rank Math SEO PRO 3.0.123?

En la pantalla de Plugins o con wp plugin get seo-by-rank-math-pro –field=version. La opción rank_math_pro_version de la base de datos puede no estar al día.

### ¿Puedo revisar WordPress sin WP-CLI?

Sí. Las comprobaciones de base de datos se hacen con consultas SQL desde phpMyAdmin, y los archivos con el gestor del hosting o un plugin de seguridad. Lo que no se puede ver sin acceso al servidor son el crontab del sistema y las claves SSH.

### ¿Sirve wp plugin verify-checksums para plugins de pago?

No siempre. Solo funciona con plugins del directorio de WordPress.org. Los premium hay que compararlos con una copia limpia descargada desde la web del fabricante.

### ¿Debo desactivar las actualizaciones automáticas?

No necesariamente. También son las que distribuyen la versión corregida. Lo recomendable es tener copias de seguridad con suficiente retención y un registro de cuándo se actualiza cada plugin.

Fuentes:

- [Rank Math: PRO 3.0.123 Security Incident: How to Secure Your Website](https://rankmath.com/kb/pro-3-0-123-security-incident/)
- [Wordfence: PSA: Malware Found in Some Rank Math SEO PRO 3.0.123 Downloads](https://www.wordfence.com/blog/2026/10/rank-math-seo-pro-3-0-123-malware/)
- [HelloBlog: Rank Math PRO 3.0.123, ataque a paquetes oficiales y limpieza](https://helloblog.io/es/rank-math-pro-3-0-123-ataque-paquetes-oficiales-limpieza/)
- [WordPress Developer Resources: WP-CLI Commands](https://developer.wordpress.org/cli/commands/)
