Hackers convierten una tienda online en proxy oculto: detectan troyano peligroso en Magento

Hackers convierten una tienda online en proxy oculto: detectan troyano peligroso en Magento

Un error de pago aparentemente inocuo terminó en la pérdida total del control del servidor.

image

Una tienda en línea vulnerable podría convertirse en un proxy oculto con acceso persistente para los atacantes. Imperva reconstruyó la cadena de infección de Magento y Adobe Commerce a través de StyleSmuggler. Durante ataques reales, los ciberdelincuentes entregaron el troyano PSK Agent, capaz de ejecutar comandos en el servidor, y en algunos episodios dejaron una shell PHP adicional para control remoto.

La campaña se observó entre el 9 y el 13 de septiembre de 2026 en Europa occidental, Norteamérica y la región de Asia y el Pacífico. Imperva identificó cinco grupos de solicitudes similares procedentes de un pequeño número de direcciones IP. Un enlace a un script de descarga apareció 96 veces en 12 variantes de código PHP malicioso. Las cifras describen el tráfico observado, no el número de tiendas comprometidas.

El vector de entrada fue la previamente divulgada StyleSmuggler, la vulnerabilidad CVE-2026-75650 con una puntuación de Adobe de 10,0 según CVSS 3.1. Un error en las plantillas permite la ejecución de código PHP sin autenticación. Adobe enumera Magento Open Source 2.4.6–2.4.9, Adobe Commerce 2.4.4–2.4.9 y Commerce B2B 1.3.3–1.5.3 como afectados. También estuvieron en riesgo compilaciones anteriores y la derivación Mage-OS, corregida en la versión 3.5.0.

Al principio la solicitud a /paypal/transparent/response/ contenía código PHP que Magento escribía en el informe de errores bajo var/report/. Luego, la llamada a /graphql con el parámetro styles forzaba al motor de plantillas a cargar el archivo infectado y ejecutar comandos. El código se activaba al generar el correo de un pago fallido. No se requería la cuenta ni las acciones del comprador.

El código PHP malicioso iteraba sobre las funciones shell_exec, system, exec y a veces passthru, eludiendo el bloqueo de llamadas. El comando curl pasaba a bash el script psk_agent.sh de 3313 bytes. El script buscaba un directorio con permisos de escritura y ejecución, descargaba el componente chi_down y ejecutaba el troyano en segundo plano. Si curl no estaba disponible, el cargador recurría a wget o Python.

El archivo chi_down era un troyano ofuscado de 64 bits escrito en Go de 10,5 MB. PSK Agent puede ejecutar comandos, explorar el servidor, reenviar tráfico ajeno mediante SOCKS5 y comunicarse con el operador por canales cifrados. Los mecanismos de persistencia están diseñados para mantener el acceso tras reinicios. En ataques relacionados, los procesos se camuflaban como kworker, fc-cache y chronyd.

Algunas muestras enviaban una consulta DNS con el nombre del servidor, informando de la ejecución de código. En algunos ataques aparecía en pub/media/ la shell PHP zer4.php de 910 líneas. Los comandos se cifraban con AES-256-CBC, y la interfaz FFI podía eludir la prohibición de las funciones de ejecución habituales. Antes, por la misma vulnerabilidad se difundió otro backdoor en Rust. El cargador PSK Agent no fue detectado por ningún motor de VirusTotal en la prueba de Imperva.

El 7 de septiembre Adobe publicó la corrección VULN-39341. El parche cierra el acceso a través de StyleSmuggler, pero no elimina troyanos ya instalados, por lo que Adobe recomienda buscar indicios de compromiso y cambiar claves y contraseñas. La vulnerabilidad de octubre BlockStrap (CVE-2026-103849) requiere una actualización separada. No hay confirmación de robo de datos de pago en la campaña PSK Agent hasta ahora.