Tecnología · Explicación
PHP2Shell: la falla hallada con IA que puso a media web en modo de parche de emergencia
El 21 de octubre de 2026, el proyecto PHP lanzó parches de seguridad de emergencia para dos vulnerabilidades críticas — registradas como CVE-2026-109618 y CVE-2026-109619 y bautizadas en conjunto como "PHP2Shell" — que permiten a un atacante ejecutar código en un servidor web con una sola solicitud manipulada y sin iniciar sesión. Según The Hacker News, ambas fallas tienen una calificación de 9,2 sobre 10 en la escala de severidad CVSS v4.0 y afectan a casi todas las versiones de PHP desde PHP 5.4, de 2012.
Primero: qué es PHP y por qué esto es enorme
PHP es el lenguaje de programación del lado del servidor detrás de una porción enorme de la web: WordPress, Drupal, Magento, Joomla, Laravel, Symfony y millones de sitios a medida funcionan con él. El observatorio de políticas digitales de Ginebra dig.watch informa que está presente en alrededor del 70 % de los sitios web cuyo lenguaje de servidor se conoce. Por eso una falla en el propio PHP, y no en una aplicación concreta, es un evento a escala de internet.
Qué hacen realmente las dos fallas
Ambos errores están en la gestión de memoria de PHP, en partes del lenguaje que toca casi cada solicitud web, según describe el aviso de seguridad de PHP (reportado por WebProNews):
- CVE-2026-109618 — manejo incorrecto de excepciones: se activa cuando una condición de falta de memoria interrumpe a PHP antes de que los datos de la solicitud terminen de inicializarse; las rutinas de limpieza que procesan ese estado inválido abren la puerta a la ejecución remota de código.
- CVE-2026-109619 — uso después de liberar (use after free): el estado interno de una solicitud sobrevive en una solicitud posterior manejada por el mismo proceso, y esa memoria obsoleta permite ejecutar código.
Lo crucial: las fallas están en el núcleo de PHP, no en ninguna aplicación: un sitio queda expuesto aunque su propio código sea perfectamente seguro. The Hacker News señala que el riesgo es mayor en servidores que usan el módulo mod_php de Apache, donde el ataque puede ejecutarse antes de que corra cualquier código de la aplicación.
Qué se parcheó — y qué no
Los arreglos llegaron el 21 de octubre alrededor de las 2 p. m. UTC como PHP 8.5.12, 8.4.27, 8.3.36 y 8.2.35, según The Hacker News: un día antes de lo planeado porque los detalles básicos se filtraron en redes sociales el 20 de octubre. dig.watch informa que investigadores de la firma de seguridad Calif publicaron por error un video mostrando cómo explotar las fallas, y que se propagó por foros de hackers.
PHP 8.1 y versiones anteriores no reciben parche oficial —ya terminaron su ciclo de vida— aunque dig.watch señala que algunas distribuciones de Linux lanzaron sus propios parches. Los rastreadores de seguridad estiman que alrededor de la mitad de los sitios con PHP aún usan 8.1 o versiones más viejas, así que la "cola zombi" de PHP seguirá expuesta.
El giro: una IA la encontró
Investigadores de la PHP Foundation habían detectado una falla teórica en 2024, pero no pudieron determinar cómo explotarla, informa dig.watch. El avance llegó cuando la fundación se unió a la iniciativa "Patch the Planet" de OpenAI en julio de 2026: investigadores de la firma de seguridad Calif reportaron la primera falla el 11 de agosto usando el modelo GPT-5.6 "Sol" de OpenAI, y Wiz, la firma de seguridad de Alphabet, reportó la segunda el 24 de agosto con modelos que incluyen Gemini 4 "Argon" de Google. Wiz la calificó como la vulnerabilidad más grave jamás hallada por una IA.
Las consecuencias: los gobiernos apagaron sitios
Como los detalles se filtraron antes del parche, los atacantes tuvieron ventaja: Cloudflare dijo que observó tráfico de ataques contra sus clientes y activó protecciones unas nueve horas antes de la divulgación pública. Los gobiernos actuaron por precaución: Reuters informa que Corea del Sur elevó su nivel de alerta de ciberseguridad para el sector privado y activó medidas de emergencia el 22 de octubre, con una reunión de emergencia de la Oficina Nacional de Seguridad presidencial. Según dig.watch, los sitios de las prefecturas de Francia, el ministerio digital de Alemania, el parlamento holandés, el gobierno central de Finlandia y, en el Reino Unido, la Oficina de Responsabilidad Presupuestaria y NHS Scotland se desconectaron mientras parcheaban. La Agencia de Seguridad Nacional de EE. UU. emitió una inusual advertencia pública recomendando desconectar los sitios web que no puedan actualizarse de inmediato, y el Centro Nacional de Ciberseguridad del Reino Unido dio un consejo similar.
Qué hacer
Si tienes un sitio web: actualiza el propio PHP a 8.5.12, 8.4.27, 8.3.36 o 8.2.35 (según tu línea): el proyecto PHP dice que solo la actualización del intérprete protege por completo un servidor. Actualizar WordPress o sus plugins no corrige esto: el error está debajo del CMS, así que verifica la versión de PHP que realmente usa tu hospedaje y pregúntales por escrito si instalaron el parche de PHP2Shell, insta WebProNews en su lectura del aviso. Si no puedes parchear de inmediato, sigue el consejo de la NSA y desconecta el sitio antes que dejarlo expuesto.
Si solo navegas por la web: no hay nada que instalar: esto le corresponde a quien opere el servidor de cada sitio. Puedes consultar php.net para las notas oficiales de la versión a medida que evolucione la situación.
Fuentes: dig.watch (cronología del parche de emergencia, el hallazgo con IA vía Patch the Planet de OpenAI y Wiz, las respuestas de los gobiernos, el video de demostración filtrado); The Hacker News (calificaciones CVSS 9,2, versiones corregidas, exposición desde PHP 5.4, riesgo de mod_php); WebProNews (detalles del aviso, las reglas tempranas de Cloudflare, guía de parcheo); Reuters (la respuesta de emergencia de Corea del Sur, 22 de octubre); las preguntas frecuentes de Tenable (Security Boulevard) (detalles de los CVE, versiones del parche, guía para versiones sin soporte). La mecánica de las fallas y su severidad según lo reportado al publicar; la situación de los ataques sigue en desarrollo.