PHP2Shell: ejecución remota de código crítica en PHP – parchear ahora
PHP2Shell: vulnerabilidades críticas de ejecución remota de código en PHP (CVE-2026-109618 y CVE-2026-109619)
El 20 de octubre de 2026, la comunidad de seguridad de PHP divulgó públicamente PHP2Shell, un par de vulnerabilidades de alto impacto identificadas como CVE-2026-109618 y CVE-2026-109619. Ambas afectan a versiones de PHP desde la 5.4 hasta la 8.5.11 y permiten ejecución remota de código sin autenticación. Los mantenedores de PHP calificaron el problema con 9,2 sobre 10 según CVSS v4.0, lo que lo sitúa en el nivel crítico. Dado que PHP sustenta aproximadamente el 70-80 % de los sitios web del mundo, la divulgación tiene consecuencias inmediatas para proveedores de alojamiento, agencias, operadores de comercio electrónico y cualquiera que gestione un sitio basado en PHP.
Qué hacen realmente las dos CVE
CVE-2026-109618 es un fallo en el manejo del agotamiento de memoria. Cuando PHP se queda sin memoria, utiliza longjmp para abortar la solicitud actual. Algunas rutas de ejecución no tienen en cuenta esa salida abrupta, por lo que la memoria de la solicitud queda parcialmente inicializada. Durante la limpieza, el motor trata esa memoria no válida como datos válidos. Un atacante puede entonces influir en el flujo de ejecución y ejecutar código arbitrario en el servidor.
CVE-2026-109619 es un fallo de estado global obsoleto. PHP mantiene variables globales que apuntan temporalmente a la memoria de la solicitud. En determinadas situaciones, ese estado global no se restablece correctamente o se vuelve a llenar después de liberarse. Entonces hace referencia a bloques de memoria que ya no pertenecen a solicitudes activas. Operaciones posteriores leen ese estado obsoleto o se ramifican a partir de él antes de que se inicialice correctamente, lo que vuelve a abrir la puerta a la ejecución remota de código.
En términos sencillos, PHP es el motor que construye y ejecuta la mayoría de los sitios web dinámicos. Estos errores son como un defecto en la forma en que el motor gestiona su espacio de trabajo y elimina los datos temporales. Un externo puede enviar una solicitud manipulada que desborde o confunda el manejo de memoria del motor. Cuando el motor tropieza, el atacante puede convertir esa confusión en comandos ejecutados en el servidor web, sin necesidad de inicio de sesión ni contraseña.
Por qué el riesgo es urgente
Un atacante exitoso obtiene ejecución de código con los privilegios de la cuenta de trabajo del servidor web. Ese acceso puede utilizarse para instalar una carga útil maliciosa, disfrazar scripts maliciosos como archivos normales del sitio, reducir la actividad web, mostrar tráfico diferente a distintos usuarios, espiar datos de tarjetas introducidos durante el pago o pedir a los visitantes que verifiquen un comando para instalar software malicioso. Muchas de estas acciones son invisibles para los usuarios normales e incluso para los administradores del sitio. El sitio puede parecer saludable mientras sirve silenciosamente contenido malicioso o filtra datos.
Se detectaron intentos de explotación en la naturaleza antes de que los parches estuvieran completamente disponibles. Eso convierte PHP2Shell en un incidente que exige parche inmediato, no en una tarea rutinaria de mantenimiento. Cada hora de retraso aumenta la probabilidad de que un analizador automatizado encuentre una instalación expuesta.
Versiones corregidas y qué hacer
Los mantenedores de PHP publicaron actualizaciones de emergencia el 21 de octubre de 2026 para las ramas con soporte. Las versiones corregidas son PHP 8.2.35, 8.3.36, 8.4.27 y 8.5.12. También se publicaron parches de código fuente para PHP 7.4, 8.0 y 8.1, pero esas ramas han llegado al fin de su ciclo de vida y no se proporcionaron binarios oficiales actualizados. Los sitios que aún las ejecuten deben pasar inmediatamente a una versión con soporte o utilizar un proveedor de soporte a largo plazo de confianza.
PHP2Shell: versiones corregidas
| Rama de PHP | Versión corregida | Estado del soporte |
|---|---|---|
| 8.2 | 8.2.35 | Con soporte |
| 8.3 | 8.3.36 | Con soporte |
| 8.4 | 8.4.27 | Con soporte |
| 8.5 | 8.5.12 | Con soporte |
| 7.4 | Solo parche de código fuente | Fin de ciclo de vida |
| 8.0 | Solo parche de código fuente | Fin de ciclo de vida |
| 8.1 | Solo parche de código fuente | Fin de ciclo de vida |
Los administradores deben actualizar PHP, reiniciar PHP-FPM o los procesos de trabajo correspondientes y confirmar que la versión en ejecución coincide con la versión corregida. Si gestiona un sitio pero no es el administrador del servidor, contacte ahora con su proveedor de alojamiento o administrador y solicite una revisión de PHP2Shell. Una revisión rápida debe cubrir la versión de PHP, la configuración del servidor web, los cambios recientes en archivos, las tareas programadas inesperadas y las conexiones salientes. No espere a los síntomas visibles: un sitio PHP infectado puede seguir siendo plenamente funcional mientras un atacante opera dentro de él.
Para los equipos técnicos, la prioridad es parchear todos los entornos de ejecución de PHP, incluidos contenedores, entornos de preproducción y subdominios olvidados. Revise los registros en busca de solicitudes POST inusuales, errores relacionados con la memoria y procesos hijos inesperados. Rote los secretos si se sospecha una intrusión. Para los lectores no técnicos, el mensaje es simple: pida a su administrador que verifique la versión de PHP y aplique la actualización de emergencia. PHP2Shell es crítico, público y activamente peligroso.
Si gestiona una tienda en línea, un blog o un portal de clientes, trate esto como un incidente de seguridad hasta que se confirme que su versión de PHP está parcheada. Solicite confirmación por escrito de la versión y de la hora de reinicio. Mantenga las copias de seguridad fuera de línea, vigile las cuentas de administrador inesperadas y revise las páginas de pago en busca de cambios. El coste de una actualización rápida es pequeño comparado con el coste del robo de datos de tarjetas, la desfiguración del sitio o una campaña de distribución de software malicioso.
Trabajemos juntos
¿Necesitas más información, ayuda con tu proyecto o desarrollar una idea?
Ya sea una pregunta sencilla, una duda rápida o una charla de 5 minutos, envíame un mensaje—no cuesta nada y siempre estoy listo para ayudar. Me gusta escuchar para entender el problema, ser creativo en las soluciones y centrarme en ideas simples, confiables y fáciles de implementar rápidamente.
Contáctame →