Dos vulnerabilidades críticas del intérprete de PHP, conocidas como PHP2Shell, permiten tomar el control de un servidor sin usuario ni contraseña, aunque el sitio tenga un código impecable.
La guía explica en qué consisten, por qué alarmaron a varios gobiernos europeos y qué hay que hacer para dejar protegida cada instalación.
Autor: Claudio Bottini
Una falla en el motor, hallada con IA
Los identificadores CVE-2026-109618 y CVE-2026-109619 agrupan cuatro errores del núcleo de PHP con una causa común. Cuando una petición termina de forma anormal al agotar el límite de memoria, el intérprete puede dejar estructuras internas en un estado inconsistente.
La petición siguiente en el mismo worker (el proceso que atiende pedidos sucesivos) puede aprovechar ese residuo para ejecutar código o filtrar datos. Una variante recuerda a Heartbleed: devuelve fragmentos de memoria con contraseñas o claves dentro de la cookie de sesión.
Como el problema está en el intérprete, afecta por igual a WordPress, Drupal o Joomla, y a todas las formas de servir PHP para la web. El caso más grave es mod_php, donde el ataque se dispara antes de que se ejecute la aplicación.
Tres equipos llegaron por separado a la misma falla en agosto, con ayuda de agentes de IA. El cierre fue accidentado: hubo filtraciones antes del parche del 21 de octubre, y más de cien organizaciones de los Países Bajos retiraron sitios, entre ellos DigiD.

El 21 de octubre de 2026, el proyecto PHP publicó una actualización de seguridad de emergencia para corregir dos fallas que permiten tomar el control de un servidor sin autenticarse. No dependen de WordPress, de un plugin ni del código de nuestro sitio: están en el propio intérprete.
Saber qué PHP atiende la web
La primera trampa está en el número de versión. Muchas distribuciones corrigen sin cambiarlo, así que php -v no alcanza: hay que comparar la cadena completa del paquete, como 8.2.35-1~deb12u1 en Debian 12. Las ramas 8.1 y anteriores no tienen versión oficial corregida.
La segunda es dar por bueno el PHP de la consola. En un mismo servidor pueden convivir el CLI, varios PHP-FPM y un mod_php, cada uno de un paquete distinto. El autor lo comprobó en un Debian 12 con ISPConfig, donde un sitio informaba una versión anterior a la de la consola.
Actualizar el paquete tampoco basta si el proceso sigue cargado con el binario viejo. Hay que reiniciar FPM o Apache y cruzar la hora de instalación con la de arranque del proceso. En contenedores, la solución es recrearlos con la imagen nueva.
La guía también recorre los paneles multidominio y el hosting compartido, donde no se puede parchear pero sí verificar la versión con un archivo de prueba y exigirle respuestas concretas al proveedor.

En la captura, vemos que el sistema es Debian 13 (trixie) y que php -v informa PHP 8.4.26, compilado el 24 de septiembre, es decir, anterior a la corrección. No hay procesos de FPM ni mod_php: en este equipo, PHP solo se usa desde la consola.
Mitigar, vigilar y revisar
Mientras se prepara la actualización, las mitigaciones ganan tiempo pero no reemplazan el parche. La más útil es desactivar session.upload_progress en php.ini o en el pool de FPM: bloquea las rutas confirmadas de una de las fallas y casi no tiene costo.
Las medidas contra la otra son más delicadas. Quitar el límite de memoria obliga a acotarla con un cgroup (el mecanismo de Linux que limita los recursos de un grupo de procesos), y bajar post_max_size puede romper en silencio las subidas grandes.
Para los equipos que no pueden actualizarse, lo más eficaz es reducir su exposición, ya sea restringiendo el acceso por IP o ubicándolos detrás de una VPN. Ocultar los errores no sirve, porque la falla ocurre antes de que PHP decida qué mostrar.
Las versiones corregidas traen problemas conocidos, entre ellos un error con objetos SimpleXML, por lo que conviene vigilar los registros durante las primeras horas.
Por último, actualizar no limpia una intrusión previa. El autor sugiere buscar en los registros ráfagas de errores de memoria agotada desde una misma dirección y revisar si aparecieron archivos .php nuevos en las carpetas de subida.

Los sistemas estuvieron expuestos al menos un día con detalles circulando, así que, aun con el parche instalado, conviene buscar señales de una intrusión previa.
Encuentra la versión completa de la publicación en la que se basa este resumen, con todos los detalles técnicos en RedUSERS PREMIUM
También te puede interesar:
CONECTA UN AGENTE DE IA A WhatsApp CON PYTHON
Un número de WhatsApp puede conectarse a un agente de inteligencia artificial con el mismo mecanismo que usa WhatsApp Web para vincular dispositivos. El texto arma un laboratorio en Python que responde con memoria de cada conversación y le cede la charla a una persona cuando hace falta.

Lee todo lo que quieras, donde vayas, contenidos exclusivos por una mínima cuota mensual. Solo en RedUSERS PREMIUM: SUSCRIBETE!



