Izkuna
Luis Martinez

PHP2Shell: el RCE de PHP que no puede esperar al próximo ciclo de parches

CISA añadió CVE-2026-109618 y CVE-2026-109619 a su catálogo KEV tras los parches de emergencia de PHP. Ambos permiten ejecución remota de código sin autenticación. Qué parchear y cómo verificarlo.

PHP2Shell PHP Gestión de vulnerabilidades CISA KEV
PHP2Shell: el RCE de PHP que no puede esperar al próximo ciclo de parches

El 21 de octubre de 2026, el proyecto PHP publicó actualizaciones de seguridad de emergencia para dos fallos de corrupción de memoria que permiten ejecución remota de código sin autenticación. El par se identifica como CVE-2026-109618 y CVE-2026-109619 y recibió el apodo de "PHP2Shell".

Cinco días después, el 26 de octubre, CISA añadió ambos a su catálogo de vulnerabilidades en explotación conocida (KEV) con base en evidencia de explotación activa. La Comisión Europea, ENISA, CERT-EU, Europol y la red de CSIRT emitieron una declaración conjunta cuando salieron los parches.

No es un fallo teórico en un componente oscuro. PHP sirve una parte importante de la web, incluidos la mayoría de los gestores de contenido, herramientas internas y API.

Qué está afectado

CISA describe el impacto como RCE sin autenticación en "todas las instalaciones de PHP que sirven solicitudes web", incluidas:

  • Apache con mod_php, que PHP considera la configuración de mayor riesgo.
  • PHP-FPM, php-cgi, FrankenPHP y LiteSpeed.

Las versiones corregidas son:

  • PHP 8.5.12
  • PHP 8.4.27
  • PHP 8.3.36
  • PHP 8.2.35

PHP 8.1 y anteriores no tienen soporte y no recibirán corrección. La indicación de CISA es directa: los sistemas que no puedan actualizarse de inmediato, o que ejecuten PHP 8.1 o anterior, deben sacarse de línea hasta que se puedan parchear o actualizar.

Un detalle más importa para el inventario: PHP suele estar embebido en otro software. ENISA advierte que productos de terceros pueden verse afectados "aunque no parezcan usar PHP directamente". Tu panel de hosting, un appliance de proveedor o una intranet heredada pueden incluir su propio runtime.

Por qué este caso es urgente

Tres cosas lo diferencian de un ciclo de parches rutinario:

  1. No hacen falta credenciales. El atacante no tiene que engañar a un empleado ni robar una sesión.
  2. La explotación está confirmada. La inclusión en KEV significa que CISA tiene evidencia de que ocurre, no solo una prueba de concepto.
  3. La exposición es invisible en muchos inventarios. Un runtime PHP dentro de un contenedor, un sandbox o un entorno de pruebas olvidado no aparece en el mismo lugar que el sitio principal.

Un firewall de aplicaciones web "puede ofrecer cierta protección" mientras parcheas, según CISA, pero no es una corrección. La agencia recomienda explícitamente priorizar los sistemas expuestos a internet.

Una secuencia de parcheo y verificación

  1. Inventaria el runtime. Ejecuta php -v en cada host y revisa la versión de PHP dentro de contenedores, imágenes de CI y appliances de proveedores. No confíes en la versión de un ticket.
  2. Parchea primero lo expuesto a internet. Aplica 8.5.12, 8.4.27, 8.3.36 u 8.2.35 y reinicia PHP-FPM o el servidor web para que el nuevo binario quede realmente cargado.
  3. Reconstruye imágenes, no solo cambies etiquetas. Un contenedor anclado a una imagen base antigua sigue vulnerable aunque el nombre de la etiqueta parezca actual.
  4. Aísla lo que no puedas parchear. Si un sistema heredado ejecuta PHP 8.1 o anterior, sácalo de internet o ponlo detrás de un proxy autenticado hasta poder retirarlo.
  5. Verifica la corrección. Vuelve a solicitar la aplicación, confirma la versión del runtime desde el host y guarda la evidencia.

Qué buscar si estuviste expuesto

CISA recomienda monitorear procesos worker de PHP que lanzan shells o descargan herramientas, lo cual no es comportamiento normal de una aplicación. Revisa también:

  • Archivos inesperados en las raíces web, sobre todo PHP modificados recientemente.
  • Tareas programadas, entradas de cron y definiciones de servicio nuevas o modificadas.
  • Conexiones salientes de los servidores web hacia hosts desconocidos.
  • Registros de autenticación con accesos que no puedas explicar.

Si encuentras señales de compromiso, aísla el host, conserva los registros antes de reconstruir y rota las credenciales y secretos que la aplicación pudiera leer.

El ángulo europeo

La declaración conjunta de ENISA conecta el fallo con el Reglamento de Ciberresiliencia (CRA). El deber de notificar explotaciones activas comenzó el 11 de septiembre de 2026, mientras que los requisitos principales se aplican desde el 11 de diciembre de 2027. Los fabricantes que ponen productos con elementos digitales en el mercado europeo deberían confirmar si su proceso de reporte cubre un componente como PHP, aunque no lo hayan escrito ellos.

Para una empresa pequeña que vende software en Europa, la conclusión práctica es la misma que la técnica: necesitas un inventario que llegue a componentes de terceros y un registro que demuestre que actuaste ante una vulnerabilidad en explotación conocida.

Dónde encaja una auditoría

Si no sabes qué runtime de PHP está expuesto, el Diagnóstico de Exposición Web de Izkuna mapea la superficie externa en tres días al precio de lanzamiento actual de USD 300. La Auditoría Web Express revisa la aplicación y su configuración de servidor en cinco días a USD 600 de lanzamiento, y el Retest / Verificación de Remediación documenta que la versión parcheada es la que realmente atiende el tráfico.

El objetivo no es crear pánico. Es sustituir "creemos que lo parcheamos" por evidencia.

Fuentes

Si necesitas una verificación rápida e independiente de lo que está expuesto, empieza con un diagnóstico gratuito de 30 minutos.