PHP2Shell es el nombre de dos vulnerabilidades críticas en PHP que permiten a un atacante ejecutar código en el servidor sin iniciar sesión, y ya se están aprovechando en internet. Si tienes una página hecha con WordPress u otro sistema basado en PHP, hoy tienes una tarea urgente: actualizar PHP.
Las fallas están registradas como CVE-2026-109618 y CVE-2026-109619, tienen una gravedad de 9,2 sobre 10 y afectan a todas las versiones de PHP desde la 5.4 hasta la 8.5.11, según Google Cloud.
En esta guía te explicamos qué es PHP2Shell, quién está en riesgo, qué versiones son seguras y los cinco pasos para proteger tu web, aunque no seas programador.
Tabla de contenidos
Qué es PHP2Shell
PHP es el lenguaje que hace funcionar a buena parte de la web, incluidos WordPress, tiendas en línea y muchos sistemas de pymes. PHP2Shell es el nombre que recibieron dos errores en el núcleo de PHP que se activan antes de que se ejecute el código de tu web. Por eso, en principio, no importa qué tan seguro sea tu tema o tus plugins.
Según el aviso oficial de php.net, estas son las dos fallas:
- CVE-2026-109618 (corrupción por falta de memoria): si una petición llega al límite de memoria de PHP en un momento exacto, PHP puede quedar con datos internos a medio crear. Después, al limpiar la petición, los trata como válidos.
- CVE-2026-109619 (estado global obsoleto): una petición puede dejar "restos" en memoria que ya fue liberada, y otra petición posterior atendida por el mismo proceso termina reutilizándolos.
Con una petición web preparada, un atacante puede ejecutar código, leer datos o tumbar el sitio, explica el boletín de seguridad de AWS. Las fallas fueron reportadas por investigadores de Calif.io, Wiz, OpenAI y Quarkslab, según Cloudflare.
Quién está en riesgo por PHP2Shell
El proyecto PHP es claro: están en riesgo todas las instalaciones de PHP que atienden peticiones web. Eso incluye las configuraciones más comunes:
- PHP-FPM, el modo más usado en hostings modernos.
- Apache con mod_php, donde el riesgo es mayor: hay un exploit demostrado en el que una petición sin autenticar activa el ataque antes de que corra el código de la aplicación.
- php-cgi, FrankenPHP y LiteSpeed, muy popular en hostings compartidos de la región.
En la práctica, PHP2Shell afecta a casi cualquier sitio: si tienes un WordPress, un WooCommerce, un Moodle, un Joomla o cualquier web en PHP con una versión sin parche, debes asumir que estás expuesto hasta comprobar lo contrario.
Ya hay ataques en curso
Lo más preocupante es que los atacantes se adelantaron. AWS informó que detectó un primer intento de explotación el 17 de octubre, cuatro días antes de que se publicaran los detalles, y que los intentos aumentaron después del anuncio. Cloudflare también describió escaneos y ataques a gran escala.

La PHP Foundation fue directa: "si usas PHP, es imperativo que actualices ahora"." La organización también detalló cómo está reforzando su equipo de seguridad tras PHP2Shell, con más personas dedicadas a revisar reportes y a endurecer el código.
La historia detrás de PHP2Shell: un fallo conocido desde 2024
La PHP Foundation publicó una explicación poco común por su franqueza. Las primeras señales del problema de memoria detrás de PHP2Shell aparecieron en 2024, durante la primera auditoría de seguridad externa de PHP en años, realizada por Quarkslab con fondos de la Sovereign Tech Agency.
En ese momento no se conocía una forma concreta de explotarlo, y el equipo de seguridad no logró ponerse de acuerdo sobre cómo corregirlo sin romper compatibilidad ni afectar el rendimiento. El trabajo se detuvo y reinició durante meses. La fundación lo reconoce sin rodeos: "el retraso fue una falla estructural".
Todo cambió en 2026:
- 11 de agosto: un investigador de Calif reportó una ejecución remota de código con la misma causa de fondo.
- 24 de agosto: Wiz aportó nuevas vías de ataque.
- 18 de septiembre: OpenAI, que había reportado la misma causa de forma independiente, sumó más vectores.
- 20 de octubre: los identificadores CVE se filtraron en foros y redes sociales, con una puntuación errónea de 10,0. No se filtraron detalles técnicos.
- 21 de octubre: salieron los parches.
La fundación también explicó que la investigación asistida por IA hizo que el equipo reciba muchos más reportes que antes: publicó 15 CVE desde el 1 de julio y revisó más de 100 reportes que resultaron inválidos, duplicados o imposibles de reproducir.
Versiones afectadas por PHP2Shell y versiones seguras
Estas son las versiones que corrigen el problema, publicadas el 21 de octubre de 2026:
| Rama de PHP | Versiones afectadas | Versión segura |
|---|---|---|
| PHP 8.5 | 8.5.0 a 8.5.11 | 8.5.12 |
| PHP 8.4 | 8.4.0 a 8.4.26 | 8.4.27 |
| PHP 8.3 | 8.3.0 a 8.3.35 | 8.3.36 |
| PHP 8.2 | 8.2.0 a 8.2.34 | 8.2.35 |
| PHP 5.4 a 8.1 | Todas | Sin parche oficial: hay que migrar |

Las distribuciones de Linux y los proveedores con soporte extendido recibieron los parches por adelantado, así que muchos servidores con paquetes de Ubuntu, Debian o Red Hat ya pueden tener la corrección aunque el número de versión sea distinto. Si usas PHP 8.1 o anterior, algunos proveedores ofrecen parches propios: consulta con el tuyo.
Cómo saber qué versión de PHP usa tu WordPress
Es más fácil de lo que parece. Tienes dos caminos:
- Desde WordPress: entra a Herramientas > Salud del sitio > Información > Servidor. Ahí verás la versión de PHP completa, por ejemplo 8.3.36.
- Desde tu hosting: en cPanel busca "Seleccionar versión de PHP" o "MultiPHP Manager"; en hPanel, la sección "Configuración de PHP"; en Plesk, "Configuración de PHP" del dominio.
Si solo ves "8.3" o "8.4" sin el último número, no puedes saber si ya tienes el parche. En ese caso, pregunta directamente a tu proveedor.
Los 5 pasos para proteger tu web de PHP2Shell
No necesitas ser programador para protegerte. Sigue este orden:
1. Haz una copia de seguridad
Antes de tocar nada, respalda archivos y base de datos. Puedes usar el respaldo de tu hosting o un plugin de copias de seguridad. Si algo falla al actualizar PHP, podrás volver atrás en minutos.
2. Actualiza PHP a una versión segura
En la mayoría de los hostings compartidos se cambia desde la sección de versión de PHP. Elige 8.5.12, 8.4.27, 8.3.36 u 8.2.35 o superior. Si administras tu propio servidor, instala los paquetes actualizados de tu distribución y reinicia PHP-FPM o Apache.
3. Si estás en PHP 8.1 o anterior, migra cuanto antes
Esas versiones no recibirán parche del proyecto PHP. Prueba tu sitio en una copia (staging) con PHP 8.3 u 8.4, actualiza antes WordPress, el tema y los plugins, y revisa que todo funcione. Algunos plugins antiguos pueden fallar.
4. Aplica las mitigaciones si no puedes actualizar hoy
Mientras llega la actualización, los expertos recomiendan medidas temporales que reducen el riesgo:
- Desactivar el progreso de subida de sesiones:
session.upload_progress.enabled=0. - En PHP 8.5, desactivar
fatal_error_backtraces. - Bajar el valor de
post_max_sizesi tu web no necesita subir archivos grandes. - En PHP-FPM, usar
pm.max_requests=1para que cada proceso atienda una sola petición, aunque esto puede afectar el rendimiento.
Estas medidas no sustituyen la actualización. Son un puente mientras actualizas PHP y cierras la puerta a PHP2Shell de forma definitiva.
5. Pide ayuda a tu hosting y activa un firewall
Escribe al soporte de tu proveedor y pregunta si ya aplicó el parche de PHP2Shell. Muchos están actualizando sus servidores, pero no todos lo hacen a la vez.
Si tu sitio está detrás de Cloudflare, su firewall (WAF) bloquea por defecto los ataques conocidos, aunque la empresa aclara que no cubre configuraciones con un session.upload_progress.name personalizado. AWS también publicó reglas para AWS WAF. En ambos casos insisten en que actualizar PHP es la única solución completa.
Nuevo aviso: mantén desactivado el progreso de subida
El 23 de octubre, php.net publicó un aviso informativo adicional. Recomienda mantener session.upload_progress.enabled=0 hasta la próxima versión de mantenimiento, para protegerse de una vía de ataque poco probable, registrada como CVE-2026-115560.
El problema solo aparece con una combinación inusual: una aplicación que cambia el manejador de sesiones (session.serialize_handler) mientras se ejecuta y que además tiene activo el progreso de subida. Si ya aplicaste esa mitigación el 21 de octubre, déjala como está. Las aplicaciones que nunca cambian ese manejador pueden mantener la función activa.
Cómo saber si tu sitio fue atacado
Actualizar cierra la puerta, pero no expulsa a quien ya entró. Como los ataques de PHP2Shell empezaron antes del parche, si tu web estuvo varios días con una versión vulnerable, revisa estas señales:
- Usuarios administradores que no reconoces en WordPress.
- Archivos PHP nuevos o modificados recientemente en
wp-content/uploadsu otras carpetas donde no deberían estar. - Redirecciones extrañas, anuncios que no pusiste o avisos de Google sobre sitio peligroso.
- Picos raros de uso de CPU o de envío de correos desde tu hosting.
Si encuentras algo sospechoso, cambia todas las contraseñas (WordPress, hosting, base de datos y FTP), restaura una copia limpia y pide un análisis a tu proveedor o a un especialista en seguridad.
Por qué PHP2Shell importa en Latinoamérica
En la región, miles de medios, emprendimientos, tiendas y profesionales independientes tienen su página en WordPress con hostings económicos, muchas veces con versiones de PHP que nadie revisa desde hace años. Son blancos fáciles para PHP2Shell: un atacante puede usar una web comprometida para robar datos de clientes, mostrar publicidad engañosa o enviar spam.
No es la primera vez que ocurre algo así. En 2024 ya vimos un ciberataque masivo que afectó a más de 4 millones de sitios WordPress. Y, como explicamos con el soporte extendido de Windows 10, mantener el software con parches de seguridad es lo que le cierra la puerta a los atacantes.
Nuestra opinión
PHP2Shell es de esas fallas que no se pueden dejar para la semana que viene: es crítica, afecta a casi toda la web hecha en PHP y ya se explota. La buena noticia es que la solución es sencilla para la mayoría: actualizar PHP desde el panel del hosting toma minutos.
Si tienes clientes, una tienda o un medio en WordPress, dedica hoy diez minutos a revisar la versión. Es mucho más barato que limpiar un sitio hackeado.
Preguntas frecuentes sobre PHP2Shell
¿Mi web en WordPress está en riesgo?
Si tu servidor usa una versión de PHP sin parche (de la 5.4 a la 8.5.11), sí puede estarlo. Revisa la versión y actualiza.
¿Basta con actualizar WordPress y los plugins?
No. El fallo está en PHP, no en WordPress. Hay que actualizar PHP en el servidor, aunque mantener WordPress y los plugins al día sigue siendo importante.
¿Qué pasa si mi hosting no me deja actualizar?
Contacta a su soporte y pregunta si ya aplicó el parche de PHP2Shell. Si no ofrece versiones compatibles, considera cambiar de proveedor.
¿Cloudflare me protege por completo?
No. Su firewall bloquea los ataques conocidos, pero la única solución completa es actualizar PHP.
Si quieres conocer otros artículos parecidos a PHP2Shell: la falla crítica de PHP que pone en riesgo a sitios WordPress y qué hacer ya puedes visitar la categoría Noticias.

También te podría interesar