Sucuri documentó en enero de 2026 una campaña activa de plugin malicioso WordPress wp-admin que instala un plugin llamado «Modern Recent Posts» en sitios comprometidos y despliega un popup de «actualización de navegador» exclusivamente dentro del área de administración. Con 28 instalaciones confirmadas y un dominio de comando y control dedicado, el ataque apunta directo a los administradores para tomar control total del sitio.
En 30 segundos
- Sucuri identificó un plugin malicioso llamado «Modern Recent Posts» que se instala silenciosamente en WordPress y muestra un popup de actualización falsa de Chrome o Edge dentro del wp-admin.
- El ataque filtra solo administradores en Windows usando wp-admin: si sos visitante común, no ves nada. El objetivo es comprometer cuentas con privilegios máximos.
- El C2 principal es el dominio
persistancejs[.]store; el secundario essecure-java-update[.]com. Ambos son indicadores de compromiso inmediatos para buscar en tus logs. - A diferencia de campañas anteriores de «fake browser update» que apuntaban a visitantes, esta versión va directo al administrador para instalar backdoors permanentes o crear cuentas fantasma.
- Remediación básica: eliminar el plugin, auditar cuentas admin, cambiar todas las credenciales (WordPress, FTP, hosting, BD) y activar 2FA.
Qué es el ataque de plugin falso en wp-admin
Un plugin malicioso WordPress wp-admin es un archivo PHP que se instala en el directorio /wp-content/plugins/ de un sitio comprometido, aparenta ser un plugin legítimo y ejecuta código malicioso en segundo plano. En este caso concreto, el plugin se llama «Modern Recent Posts» (aunque el nombre puede variar entre instalaciones) y su objetivo no es alterar la experiencia de los visitantes del sitio: está diseñado exclusivamente para atrapar administradores.
Esto lo diferencia de las campañas anteriores de «fake browser update» que Sucuri y otros investigadores documentaron en 2024 y 2025, donde el malware mostraba popups a cualquier visitante. Acá, según el análisis publicado por Sucuri, el código verifica tres condiciones antes de ejecutarse: que el usuario sea administrador, que esté navegando en wp-admin, y que el sistema operativo detectado sea Windows.
Si las tres condiciones se cumplen, aparece el popup. Si no, el plugin permanece completamente inactivo y silencioso. Inteligente (y bastante inquietante).
Cómo funciona el plugin malicioso Modern Recent Posts
El flujo técnico tiene varias capas. Al activarse, el plugin descarga JavaScript externo desde el dominio C2 persistancejs[.]store apuntando a la URL hxxps://persistancejs[.]/jsplug/plugin[.]php. El código viene ofuscado en Base64 para dificultar el análisis estático.
Una vez que el JavaScript se ejecuta en el navegador del administrador, renderiza un popup que imita al 100% las notificaciones de actualización de Chrome o Edge: mismo estilo visual, mismo texto, mismo botón de «Actualizar ahora». Si el admin hace clic, descarga un payload que puede ser desde un infostealer hasta un RAT completo.
El parámetro ?upd=1 en la URL funciona como activador manual durante las pruebas del atacante: les permite verificar que el popup se renderiza correctamente antes de desplegarlo masivamente. El código además tiene un comportamiento de auto-destrucción: puede eliminar rastros del plugin una vez ejecutado el payload, lo que complica la forensia posterior.
Un detalle técnico que vale mencionar: el dominio secundario secure-java-update[.]com aparece como fallback en caso de que el C2 principal esté caído o bloqueado. Doble redundancia para asegurarse de que el payload llega.
Indicadores de compromiso (IoCs) a vigilar
Si administrás sitios WordPress, estos son los elementos concretos que tenés que buscar en logs de red, archivos del servidor y registros del sistema:
- Dominio C2 primario:
persistancejs[.]store— cualquier solicitud saliente hacia este dominio es indicador de infección activa. - Dominio C2 secundario:
secure-java-update[.]com— funciona como fallback; su presencia en logs de tráfico también es señal de alerta. - URL maliciosa:
hxxps://persistancejs[.]/jsplug/plugin[.]php— la dirección exacta desde donde se descarga el JavaScript ofuscado. - Plugin desconocido en wp-content/plugins/: cualquier carpeta de plugin que no reconocés, especialmente con nombres genéricos tipo «Modern Recent Posts», «Widget Helper», «Cache Manager».
- Comportamiento de auto-destrucción: si encontrás un directorio de plugin vacío o con archivos borrados recientemente, puede indicar que el malware ya se ejecutó y se eliminó a sí mismo.
¿Encontraste tráfico hacia alguno de esos dominios en tus logs? No esperes más para iniciar el protocolo de remediación.
Por qué los administradores son el objetivo principal
Ponele que un atacante puede comprometer una cuenta de visitante versus una cuenta de administrador WordPress. La diferencia es abismal.
Con acceso de administrador, el atacante puede instalar plugins adicionales (incluidos backdoors permanentes), crear nuevas cuentas con privilegios máximos, modificar archivos del tema o del core, acceder a credenciales almacenadas, y extraer información sensible de la base de datos incluyendo emails de usuarios y datos de pedidos en WooCommerce. Una cuenta de visitante no le da nada de eso.
Este contexto importa todavía más cuando se lo ve junto al ataque de supply chain documentado en abril de 2026, que afectó 31 plugins de WordPress con backdoors insertados mediante el usuario wpservices durante al menos 8 meses de espionaje silencioso. Son campañas diferentes, pero el patrón es el mismo: ir por los administradores porque son los que tienen las llaves del reino.
Con una cuenta de administrador comprometida, el atacante no necesita encontrar vulnerabilidades técnicas adicionales. Ya tiene todo.
Cómo detectar plugins maliciosos en tu WordPress
La lista de plugins instalados en wp-admin → Plugins es el primer lugar a revisar. Buscá plugins que no recordás haber instalado, con nombres genéricos, sin autor conocido, sin actualizaciones recientes, o directamente sin página de soporte en wordpress.org.
Herramientas específicas para esto:
- Wordfence Security: el escáner de malware detecta archivos modificados y código sospechoso en plugins. Correlo desde wp-admin → Wordfence → Scan.
- Sucuri Security: tiene un escáner de integridad de archivos que compara tu instalación contra el repositorio oficial.
- WP-CLI: si tenés acceso por SSH,
wp plugin list --status=activete da la lista completa incluyendo plugins que podrían no aparecer en el panel por ocultamiento intencional. - Inspección manual de /wp-content/plugins/: con acceso FTP o cPanel podés comparar la lista de carpetas contra tus plugins conocidos. Un directorio extra es señal inmediata.
Ojo con los plugins abandonados (sin actualizaciones en más de 2 años): no son maliciosos por defecto, pero son vectores frecuentes de compromiso inicial que después facilitan la instalación de plugins como Modern Recent Posts.
Pasos inmediatos si encontraste un plugin malicioso
Checklist de remediación basado en las recomendaciones de Sucuri para este tipo de incidente:
- 1. Desactivar y eliminar el plugin malicioso desde wp-admin → Plugins. Si el plugin no aparece en el panel (algunos se ocultan), eliminá el directorio directamente vía FTP o el administrador de archivos del hosting.
- 2. Eliminar todos los directorios de plugins desconocidos en
/wp-content/plugins/. Comparar contra la lista que tenías antes del incidente. - 3. Auditar cuentas administrativas: ir a wp-admin → Usuarios y revisar si hay cuentas de administrador que no reconocés. Eliminar inmediatamente.
- 4. Cambiar todas las credenciales: contraseña de WordPress para todas las cuentas admin, contraseña FTP, credenciales de hosting (panel de control), y usuario/contraseña de base de datos en
wp-config.php. - 5. Escanear los equipos locales de todos los administradores del sitio. Si el payload se descargó en alguna máquina, hay que asegurarse de que no quedó nada instalado.
- 6. Actualizar WordPress core, todos los plugins activos y el tema. El compromiso inicial probablemente vino de una vulnerabilidad en alguno de estos componentes.
- 7. Implementar un WAF (Web Application Firewall) si todavía no tenés. Wordfence tiene uno gratuito; los servicios de hosting como donweb.com también incluyen protección a nivel de servidor en sus planes de WordPress.
Si el sitio está comprometido y no tenés certeza del alcance del daño, restaurar desde un backup limpio (anterior a la infección) es la opción más segura.
Protección contra ataques similares en el futuro
El 2FA para cuentas administrativas es la medida con mejor relación esfuerzo/resultado disponible hoy. Si el administrador hace clic en el popup y entrega sus credenciales, el segundo factor corta el acceso. Wordfence y plugins como Two Factor Authentication implementan esto en minutos.
Las otras medidas que realmente importan:
- Monitoreo automático de integridad de archivos: que te avise si algo cambia en
/wp-content/plugins/sin que vos lo hayas hecho. - Política estricta de plugins: solo plugins activamente mantenidos, con reviews recientes, del repositorio oficial. Nada de plugins de fuentes externas sin auditoría previa.
- Principio de mínimo privilegio: no uses la cuenta de administrador principal para publicar posts o revisar métricas. Tené un usuario editor para el trabajo diario y reservá el admin para tareas que realmente lo necesitan.
- Revisión periódica de plugins instalados: una vez por mes, revisá que todos los plugins activos sean los que tienen que estar. Eliminar plugins inactivos también reduce la superficie de ataque.
- Logs de actividad: plugins como WP Activity Log registran todos los cambios en el sitio, incluyendo instalaciones de plugins y creación de usuarios. Con eso, detectar la actividad maliciosa es cuestión de minutos.
Tabla de comparación: ataque a visitantes vs. ataque a administradores
| Característica | Fake browser update clásico (visitantes) | Modern Recent Posts (administradores) |
|---|---|---|
| Objetivo | Cualquier visitante del sitio | Solo administradores de WordPress |
| Dónde se muestra | Frontend del sitio público | Exclusivamente dentro de wp-admin |
| Filtros de activación | Ninguno o básico (user-agent) | Rol admin + wp-admin + Windows |
| Acceso obtenido | Credenciales del visitante | Control total del sitio WordPress |
| Persistencia posible | Limitada | Backdoors, cuentas admin fantasma |
| Detección por visitantes | Alta probabilidad | Nula (solo admin lo ve) |
| Impacto en negocio | Medio | Crítico |

Errores comunes al enfrentar este tipo de ataque
Error 1: Eliminar solo el plugin y dar el tema por cerrado. El plugin malicioso es el síntoma, no la causa. Si no identificás cómo entró (credenciales comprometidas, plugin vulnerable, tema desactualizado), va a volver a aparecer en días o semanas.
Error 2: Cambiar solo la contraseña de WordPress. Si el atacante accedió al servidor vía FTP o al panel de hosting, tiene múltiples vectores de reinstalación. Cambiar una sola contraseña no cierra todos los accesos.
Error 3: Ignorar los equipos locales de los administradores. Si el popup se ejecutó y el admin descargó algo, el equipo puede estar comprometido. Desde un equipo infectado, el atacante puede recuperar las nuevas credenciales tan rápido como vos las cambiás.
Preguntas Frecuentes
¿Cómo detectar si tengo un plugin malicioso en WordPress?
Revisá la lista completa en wp-admin → Plugins y buscá plugins que no instalaste, con nombres genéricos o sin autor reconocible. Corriendo el escáner de Wordfence Security (wp-admin → Wordfence → Scan) o Sucuri Security obtenés un análisis de integridad de archivos que detecta código añadido sin autorización. Si tenés acceso SSH, wp plugin list via WP-CLI muestra también plugins ocultos que no aparecen en el panel.
¿Qué es el ataque de actualización falsa de navegador en wp-admin?
Es una campaña documentada por Sucuri en enero de 2026 donde un plugin malicioso llamado «Modern Recent Posts» muestra un popup que imita una notificación legítima de actualización de Chrome o Edge, pero solo a usuarios administradores de WordPress, solo dentro del área wp-admin, y solo en dispositivos Windows. Si el administrador hace clic y descarga el «actualizador», instala malware en su equipo local con acceso a todas las credenciales guardadas.
¿Cuáles son los indicadores concretos de que un plugin es malicioso?
Los principales: el plugin no tiene página en wordpress.org, no tiene historial de actualizaciones, el nombre es genérico, el código fuente contiene llamadas curl o file_get_contents a dominios externos desconocidos, o hay tráfico saliente desde tu servidor hacia dominios como persistancejs[.]store. En el caso específico de esta campaña, el parámetro ?upd=1 en URLs internas es también un indicador.
¿Qué debo hacer si encuentro un plugin desconocido en mi WordPress?
Desactivalo y eliminalo inmediatamente desde wp-admin o vía FTP. Después auditá las cuentas de administrador buscando usuarios no reconocidos, cambiá todas las credenciales (WordPress, FTP, hosting, base de datos), y escaneá los equipos locales de todos los administradores. Si no podés determinar el alcance del compromiso, restaurar desde un backup limpio anterior a la infección es la opción más segura.
¿Cómo proteger mi WordPress de plugins maliciosos en el futuro?
El 2FA en cuentas administrativas es la medida más efectiva: aunque el atacante obtenga las credenciales, no puede entrar sin el segundo factor. Complementá con un monitoreo de integridad de archivos que te avise cuando algo cambia en /wp-content/plugins/, una política de instalar solo plugins del repositorio oficial con mantenimiento activo, y revisiones mensuales de la lista de plugins instalados para eliminar los que no usás.
Conclusión
Esta campaña marca un cambio de estrategia que vale tener en mente: los ataques de «fake browser update» dejaron de apuntar a los visitantes comunes y empezaron a ir directo a los administradores. Tiene sentido desde la perspectiva del atacante porque comprometer un admin da acceso total al sitio, sin necesidad de explotar vulnerabilidades técnicas adicionales.
Las 28 instalaciones confirmadas de esta campaña según Sucuri probablemente son la punta del iceberg. Los sitios que no tienen monitoreo activo de integridad de archivos directamente no saben si tienen el plugin instalado o no. Y el comportamiento de auto-destrucción del malware hace que, para cuando se detecta el problema, el rastro ya puede haber desaparecido.
La respuesta correcta es combinar detección activa (Wordfence + logs de actividad + revisión periódica de plugins) con prevención en la capa de acceso (2FA para todos los administradores, contraseñas únicas y fuertes, principio de mínimo privilegio). Ninguna de estas medidas es complicada de implementar. El problema es hacerlo antes de que pase algo.
Fuentes
- Sucuri Blog — Fake Browser Updates Targeting WordPress Administrators via Malicious Plugin (análisis técnico original)
- Seguridad en WordPress — Ataque supply chain: plugins de WordPress infectados en 2026
- LPB Digital — Plugins WordPress infectados, abril 2026
- Devel Group — Plugin malicioso se oculta como herramienta legítima en WordPress