Mastodon Mastodon Mastodon Mastodon

PHP2Shell: millones de intentos de explotación de CVE-2026-109618 y CVE-2026-109619 aún no han dado lugar a compromisos confirmados

Foto del autor

CyberSecureFox Editorial Team

Publicado:

Dos vulnerabilidades críticas en el núcleo de PHP — CVE-2026-109618 y CVE-2026-109619 (CVSS v4.0 9.2)— desencadenaron una ola de escaneos e intentos de explotación en cuestión de horas tras su divulgación el 21 de octubre de 2026. Las vulnerabilidades permiten la ejecución remota de código sin autenticación a través de peticiones HTTP especialmente diseñadas y afectan a todas las versiones de PHP anteriores a 8.2.35, 8.3.36, 8.4.27 y 8.5.12. Según varios grupos de investigación independientes — Sophos, Arctic Wolf y Hunt.io— ninguno de los intentos observados ha dado lugar a una compromisión confirmada. Ya hemos escrito sobre los detalles técnicos de estas vulnerabilidades y las medidas de protección; este material se centra en el análisis de la actividad real de los atacantes y en las razones por las que la explotación ha resultado ser más complicada de lo esperado.

Naturaleza de las vulnerabilidades y alcance de la superficie de ataque

Según el boletín de CERT/CC (VU#763488), CVE-2026-109618 es una vulnerabilidad de corrupción de memoria en el mecanismo de gestión de falta de memoria (OOM) de PHP: bajo determinadas condiciones, los datos de una petición parcialmente inicializada pueden ser accesibles durante la limpieza. CVE-2026-109619 es una vulnerabilidad de tipo «use-after-free», en la que un estado global obsoleto perteneciente a una petición se reutiliza en una petición posterior del mismo proceso de trabajo.

El código vulnerable está presente en PHP desde la versión 5.4 (año 2012), lo que significa que el problema afecta no a una aplicación concreta, sino al propio motor de PHP. Cualquier sitio en WordPress, Drupal o Joomla con código de aplicación limpio sigue siendo vulnerable si PHP no está actualizado. Se ven afectadas las configuraciones de PHP-FPM, Apache mod_php, php-cgi, FrankenPHP y LiteSpeed. Según CERT/CC, Apache mod_php representa el mayor riesgo, ya que la explotación puede producirse antes de que se ejecute el código de la aplicación.

Según las estimaciones de Censys, a 23 de octubre de 2026 más de 34,4 millones de servicios PHP seguían siendo potencialmente vulnerables, de un total de más de 56,6 millones de propiedades web que utilizan PHP. Las organizaciones que siguen en PHP 7.4, 8.0 o 8.1 no reciben actualizaciones de seguridad oficiales por parte de PHP Project y necesitan backports de los distribuidores o migrar a una rama con soporte.

Actividad de los atacantes: mucho ruido, cero resultados

El escaneo a gran escala y los intentos de explotación comenzaron en los 45 minutos posteriores a la divulgación pública de las vulnerabilidades. Según Arctic Wolf, la actividad observada oscilaba entre comprobaciones básicas del comportamiento vulnerable del mecanismo de seguimiento del progreso de cargas de sesión de PHP y intentos de confirmar la ejecución de comandos del sistema operativo.

Un hecho fundamental: Sophos informó inicialmente de una explotación exitosa de PHP2Shell en algunos de sus clientes, pero posteriormente corrigió esta evaluación, indicando que la telemetría solo mostraba escaneos e intentos fallidos sin pruebas de una compromisión exitosa. Hunt.io confirmó este resultado de forma independiente: el único operador de explotación masiva detectado realizó diez pasadas sobre 123 servidores y no obtuvo ni un solo shell. Wordfence, Previdian, Beelzebub y Dataminr registran el mismo panorama.

La principal razón de los fracasos de los atacantes es la necesidad de sortear ASLR (Address Space Layout Randomization), un mecanismo de aleatorización del espacio de direcciones que hace impredecible la ubicación del código en memoria. VulnCheck desarrolló un método que encadena ambas vulnerabilidades para eludir ASLR en sistemas x86-64 con la configuración de PHP recomendada para producción, pero subrayó que crear un exploit de este tipo «está lejos de ser trivial». Esto explica la brecha entre el escaneo masivo y la ausencia de ataques exitosos.

El botnet Potassium y la infraestructura de los ataques

El tráfico de explotación observado está vinculado a Potassium, una variante del botnet Mirai detectada por primera vez por la plataforma Synthient en marzo de 2026. La relación se ha establecido a nivel de infraestructura y de muestras de malware por tres grupos de investigación independientes (Sophos, Arctic Wolf, Hunt.io), aunque el atacante concreto responsable no ha sido identificado. Es importante subrayar que las pruebas vinculan las peticiones PHP2Shell con la infraestructura de Potassium, pero no confirman que las muestras asociadas hayan sido descargadas y ejecutadas a través de estas vulnerabilidades.

Según Sophos, una muestra de Potassium establece una conexión TCP con el servidor C2 134.199.154[.]64, envía una petición HTTP y espera a cambio un binario ELF para Linux. El botnet soporta 24 comandos para llevar a cabo ataques DDoS a través de los protocolos ICMP, TCP, UDP y OpenVPN. Entre sus características técnicas destacan el uso de ChaCha20 para cifrar la tabla de configuración estática (por primera vez en variantes de Mirai), un esquema de redirección DNS con permutación de las mitades de 16 bits de cada registro A, así como compatibilidad inactiva pero integrada para resolver la infraestructura C2 mediante Ethereum Name Service (ENS).

Por separado, SOCRadar descubrió en un servidor abierto del atacante (206.188.197[.]105:9999) un conjunto de herramientas para la explotación de PHP2Shell, incluido el script aslr_exploit.py, un exploit para PHP 8.4.26 bajo Apache mod_php que funciona en tres fases: reinicio del worker de PHP, filtración de direcciones de memoria a través de una cookie de sesión para eludir ASLR y abuso del mecanismo de seguimiento del progreso de cargas de sesión para ejecutar un comando.

Indicadores de compromiso

IOC clave extraídos de las investigaciones:

  • Direcciones IP de origen de los ataques: 85.11.167[.]243, 217.60.242[.]76, 45.198.224[.]169
  • Infraestructura de descarga: 92.118.112[.]100, 206.188.197[.]105
  • Servidor C2: 134.199.154[.]64 (puerto TCP 50792)
  • Dominios: thunder[.]godofthunder[.]st, hackattackkaboom[.]botlesscucks[.]st
  • Hashes de muestras: 0c5486f06620e26e316f4b33f318b0d646d5e1133789331aa2fed012360d1486, e2529d4afa39ae4db2eb05d5176317c906289abf09660c75bdeec43e54c55aa3

Detección práctica de intentos de explotación

Según Hunt.io y Arctic Wolf, para distinguir entre intentos de escaneo y una compromisión real es necesario correlacionar varias señales:

  • User-Agent que contenga cadenas del tipo php2shell-scan/109618 o php2shell-109618
  • Peticiones POST multipart con el campo PHP_SESSION_UPLOAD_PROGRESS y un cuerpo anómalamente grande
  • Picos de errores «Allowed memory size exhausted» en los registros de PHP-FPM
  • Actividad posterior: creación de procesos, cambios en el directorio raíz del servidor web, conexiones de red salientes hacia las direcciones C2 enumeradas

La presencia de los tres primeros indicios apunta a un intento de explotación; el cuarto indica una posible compromisión que requiere una investigación inmediata.

Recomendaciones

  • Actualice PHP de inmediato a las versiones 8.2.35, 8.3.36, 8.4.27 o 8.5.12, tal y como recomienda CERT/CC
  • Las organizaciones que utilizan PHP 8.1 o versiones anteriores no reciben actualizaciones de PHP Project: es necesaria la migración a una rama con soporte o la aplicación de un backport del distribuidor
  • Revise los registros de los servidores web en busca de los IOC y patrones de explotación enumerados
  • Bloquee las conexiones de red hacia las direcciones C2 y dominios indicados a nivel de perímetro
  • Para configuraciones con Apache mod_php, considere un cambio temporal a PHP-FPM, que proporciona un aislamiento adicional de procesos

La situación actual con PHP2Shell recuerda a los primeros días de Log4Shell: el código vulnerable lleva existiendo más de diez años, afecta al motor y no a la aplicación, y no hay parches para las ramas obsoletas. La ausencia de compromisos confirmados por el momento es consecuencia de la complejidad técnica de eludir ASLR, y no de la seguridad de los sistemas vulnerables. VulnCheck ya ha demostrado que esta barrera puede superarse. La prioridad para cualquier organización que utilice PHP es actualizar a una versión corregida antes de que los exploits fiables estén disponibles para un círculo más amplio de atacantes.


CyberSecureFox Editorial Team

El equipo editorial de CyberSecureFox cubre noticias de ciberseguridad, vulnerabilidades, campañas de malware, actividad de ransomware, AI security, cloud security y security advisories de proveedores. Los materiales se preparan a partir de official advisories, datos de CVE/NVD, alertas de CISA, publicaciones de proveedores e informes públicos de investigadores. Los artículos se revisan antes de su publicación y se actualizan cuando aparece nueva información.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.