php2shell: qué es la vulnerabilidad crítica de php, cómo afecta y cómo proteger tu servidor
PHP2Shell es el nombre que se ha dado a dos vulnerabilidades críticas descubiertas en el núcleo de PHP. Se trata de fallos de seguridad de memoria que permiten a un atacante no autenticado ejecutar código remoto, o RCE, o filtrar información sensible de la memoria del proceso PHP. La gravedad alcanza un CVSS de 9.2 y afecta incluso a aplicaciones simples, porque el problema está en el propio motor de PHP, no en el código de la aplicación.Estas vulnerabilidades fueron reportadas de forma responsable y se publicaron el 21 de octubre de 2026, junto con las versiones parcheadas de PHP. ¿Qué es exactamente PHP2Shell? PHP2Shell agrupa dos vulnerabilidades relacionadas: CVE-2026-109618: Corrupción de memoria por manejo incorrecto de condiciones de falta de memoria, Out-Of-Memory o OOM. Cuando PHP se queda sin memoria en un momento crítico del procesamiento de una petición, puede dejar datos a medio inicializar que luego se tratan como válidos. CVE-2026-109619: Estado global obsoleto, "stale global state", que sobrevive entre peticiones. Un fallo o timeout puede dejar punteros o datos de una petición anterior, provocando use-after-free y, potencialmente, divulgación de memoria o ejecución de código. Ambas se activan durante el procesamiento de la petición, antes de que se ejecute el código de la aplicación. Por eso plugins de seguridad, firewalls de aplicación o código bien escrito no protegen por sí solos: el fallo está en el intérprete PHP.Los investigadores, Calif, vinculado a proyectos de OpenAI, y Wiz), demostraron ejecución de código pre-autenticación en entornos como WordPress, Drupal y Joomla, así como la posibilidad de leer memoria del proceso, como contraseñas, tokens, claves API, certificados, etc. Versiones afectadas y versiones corregidas Están afectadas las versiones de PHP desde aproximadamente la 5.4 hasta las anteriores a los parches de octubre de 2026. Versiones corregidas oficiales Rama PHP Vulnerable Corregida en 8.2 < 8.2.35 8.2.35 8.3 < 8.3.36 8.3.36 8.4 < 8.4.27 8.4.27 8.5 < 8.5.12 8.5.12 Las versiones 8.1 y anteriores están fuera de soporte oficial. No hay parches oficiales de PHP para ellas. Algunas distribuciones, como Ubuntu, Debian, Remi, etc., han publicado backports en ciertos casos, pero la recomendación prioritaria es migrar a una rama soportada. Impacto real PHP impulsa aproximadamente el 70 % de los sitios web con lenguaje de servidor conocido. WordPress, Laravel, Drupal, Joomla, Magento y multitud de aplicaciones personalizadas dependen de él. Un servidor con PHP sin parchear puede ser comprometido sin necesidad de credenciales ni de un fallo en el código de la aplicación.Se han detectado intentos de explotación incluso antes de la divulgación pública. Tras la publicación de los detalles, el volumen de tráfico malicioso aumentó.Además de la ejecución de código, la divulgación de memoria puede exponer secretos de otras peticiones o del propio servidor, lo que obliga a rotar credenciales si se sospecha exposición. Cómo comprobar si se está afectado Verificar la versión de PHP que realmente usa el servidor web. Revisar también los procesos de PHP-FPM, Apache o el contenedor correspondiente. Confirma que la versión sea al menos "8.2.35", "8.3.36", "8.4.27" o "8.5.12", o un paquete de distribución que incluya los CVEs en el changelog. Reiniciar todos los workers de PHP después de actualizar, Apache, PHP-FPM, etc.. Un simple "php -v" actualizado no basta si los procesos antiguos siguen en memoria. Qué hacer Actualizar PHP inmediatamente a una de las versiones corregidas. Es la única mitigación completa según el equipo de PHP. Reinicia todos los servicios que ejecutan PHP (Apache, Nginx + PHP-FPM, contenedores, etc.). Si usas una versión EOL (≤ 8.1), planifica la migración a una rama soportada con urgencia. Revisa logs de acceso y errores desde al menos el 17 de octubre de 2026 en busca de actividad anómala (peticiones multipart grandes, patrones inusuales, etc.). Si el servidor pudo haber estado expuesto, rota contraseñas, tokens de API, claves de sesión y certificados. Mantén un inventario de todos los entornos PHP (producción, staging, antiguos proyectos olvidados). El servidor “olvidado” suele ser el más vulnerable. Algunos proveedores de hosting y
Top comments (0)