PHP2Shell: la vulnerabilidad crítica de PHP y qué tienes que hacer hoy
Dos fallos críticos en PHP (CVE-2026-109618 y CVE-2026-109619) permiten ejecutar código en el servidor sin autenticación. Qué versiones están afectadas, cuáles son seguras y cómo comprobar tu web o tu VPS.

En este artículo
En corto
- El 21 de octubre de 2026 PHP publicó parches de urgencia para dos fallos críticos (CVSS 9.2) bautizados como PHP2Shell.
- Permiten ejecutar código en el servidor sin estar autenticado, sin que tu web tenga ningún fallo propio.
- Afectan a casi todas las versiones de PHP de la última década. Las corregidas son 8.5.12, 8.4.27, 8.3.36 y 8.2.35.
- Ya hay intentos de explotación. La única solución completa es actualizar PHP; WordPress no necesita ninguna actualización.
No es la típica vulnerabilidad de un plugin que afecta a unas pocas webs. Esta vez el problema está en el propio PHP, el lenguaje en el que funcionan WordPress, PrestaShop, Magento, Joomla, Drupal, Laravel y buena parte de internet. Te explicamos qué ha pasado, cómo saber si tu web está expuesta y qué hacer según dónde la tengas alojada.
Qué ha pasado
Investigadores de Wiz, con ayuda de modelos de IA, encontraron varios fallos de gestión de memoria en PHP. El problema aparece cuando un proceso de PHP se queda sin memoria a mitad de una petición: algunas estructuras internas no se limpian bien y la siguiente petición que atiende ese mismo proceso puede acabar usando memoria que controla el atacante. Con eso se puede llegar a ejecutar código en el servidor.
Los fallos se agrupan en dos identificadores:
Corrupción de memoria tras un «out of memory»
Relacionado con el progreso de subida de ficheros de las sesiones y el análisis de formularios multipart.
Estado obsoleto entre peticiones
Punteros que quedan colgando tras un error fatal y una confusión de tipos en OPcache.
Lo peor es que no hace falta que tu código tenga ningún fallo: basta con enviar peticiones preparadas a cualquier web en PHP vulnerable. Y la noticia se filtró el 20 de octubre, un día antes de que salieran los parches, así que los atacantes han tenido ventaja. Amazon, Cloudflare y watchTowr han informado de intentos de explotación.
Versiones afectadas y versiones seguras
| Rama de PHP | Versión corregida | Estado |
|---|---|---|
| 8.5 | 8.5.12 | Con soporte |
| 8.4 | 8.4.27 | Con soporte |
| 8.3 | 8.3.36 | Solo seguridad |
| 8.2 | 8.2.35 | Solo seguridad |
| 8.1, 8.0, 7.4 | Sin versión oficial | Fin de vida: solo hay parches en código fuente |
| 7.3 y anteriores | Ninguna | Fin de vida |
Muchas distribuciones y paneles (cPanel, CloudLinux, Debian, Ubuntu…) aplican el parche sin cambiar el número de versión. Un servidor puede decir «PHP 8.3.35» y estar protegido. Para saberlo hay que mirar el registro de cambios del paquete, no solo php -v.
Qué hacer según dónde esté tu web
Si tienes un hosting compartido
El que tiene que actualizar PHP es tu proveedor. Escríbele y pregunta si sus servidores ya tienen el parche de CVE-2026-109618 y CVE-2026-109619, también en las versiones antiguas de PHP que ofrezca. Si no te da una respuesta clara, es mala señal.
Todos nuestros servidores de hosting están ya parcheados o actualizados. En los servidores con cPanel usamos CloudLinux con PHP Hardened, que mantiene parches de seguridad también para versiones antiguas de PHP que ya no tienen soporte oficial. Si tu web todavía depende de un PHP antiguo, en nuestro hosting sigue protegida mientras la actualizas. No tienes que hacer nada.
Ver hosting con PHP parcheadoSi tienes un VPS o un servidor propio
Aquí te toca a ti. Los pasos generales:
- Comprueba qué PHP usas.
php -v php -i | grep "Server API" - Actualiza los paquetes. En Debian o Ubuntu:
apt update && apt upgrade. En AlmaLinux o Rocky:dnf upgrade. Si usas cPanel o Plesk, lanza su actualización de PHP desde el panel. - Comprueba que el parche está. En sistemas con RPM:
rpm -q --changelog NOMBRE-DEL-PAQUETE | heady busca los CVE. En Debian/Ubuntu, revisa el aviso de seguridad de tu distribución. - Reinicia PHP. Si no reinicias PHP-FPM, LiteSpeed o Apache, seguirán funcionando los binarios antiguos en memoria:
systemctl restart php8.3-fpm(cambia la versión por la tuya). - Si usas Docker. Descarga la imagen oficial actualizada y recrea los contenedores:
docker compose pull && docker compose up -d.
Si tu VPS es administrado, las actualizaciones de seguridad forman parte del servicio: escribe a tu proveedor para confirmar que está hecho.
Si tu PHP es 8.1 o anterior y no puedes actualizar
PHP no publicará versiones corregidas para ramas sin soporte. Tus opciones son compilar PHP con los parches publicados en código fuente, usar un PHP con soporte extendido (como el de CloudLinux) o, lo más sensato, aprovechar para actualizar la web a una versión moderna.
Medidas temporales mientras parcheas
Los desarrolladores de PHP han sido claros: no hay ninguna configuración que lo solucione del todo. Aun así, mientras actualizas, ayuda:
- Desactivar
session.upload_progress.enableden elphp.inisi no lo usas (casi nadie lo usa). - En PHP 8.5, poner
fatal_error_backtraces = 0. - Activar un WAF con reglas para PHP2Shell, como los que han publicado Cloudflare o Fastly.
Estas medidas bloquean los ataques conocidos, pero no todas las variantes. Son un parche de emergencia, no una solución.
Cómo saber si alguien lo ha intentado
Revisa los registros de tu servidor en busca de:
- Peticiones
multipart/form-datararas seguidas de errores «Allowed memory size exhausted». - Rachas de errores HTTP 500 sin motivo aparente.
- Cookies
PHPSESSIDanormalmente largas o con caracteres extraños. - Procesos de PHP que se reinician continuamente.
Si ves algo de esto en un servidor sin parchear, trátalo como un posible incidente: parchea, revisa los ficheros modificados recientemente y cambia contraseñas y claves. Una buena política de copias de seguridad te puede salvar en un caso así.
¿Y WordPress?
WordPress no tiene que publicar ninguna actualización, porque el fallo no está en WordPress sino en PHP. Pero eso no significa que tu WordPress esté a salvo: si el PHP de tu servidor es vulnerable, tu web también lo es. Lo mismo para PrestaShop, WooCommerce, Magento o cualquier aplicación PHP.
Lo importante
Actualiza PHP hoy o asegúrate de que tu proveedor lo ha hecho. Es de esas vulnerabilidades en las que esperar unos días puede salir muy caro.
Fuentes: avisos de seguridad del proyecto PHP del 21 de octubre de 2026, Wiz Research, watchTowr y The Hacker News.
Equipo de Rackmarkt
Escrito por el equipo técnico que administra nuestra plataforma de hosting, VPS y servidores. Conoce a nuestro soporte.




