
Respuesta rápida
La respuesta corta
PHP2Shell es el nombre de dos vulnerabilidades críticas en el propio motor de PHP (CVE-2026-109618 y CVE-2026-109619, CVSS 9.2) que permiten ejecutar código remoto sin autenticación. PHP publicó parches de emergencia el 21 de octubre de 2026: hay que actualizar a 8.5.12, 8.4.27, 8.3.36 o 8.2.35 (o superior), reiniciar todos los procesos de PHP y reconstruir contenedores. Un firewall no basta.
Puntos clave
- PHP2Shell afecta al motor de PHP, no a un plugin: no importa qué CMS o framework uses.
- La única solución completa es actualizar PHP y reiniciar cada proceso que lo ejecuta.
- Ya hay intentos de explotación activa: los servidores expuestos a internet van primero.
- Las versiones 7.3 o anteriores no tienen corrección: hay que migrar.
Qué es PHP2Shell, en palabras simples
PHP2Shell es el nombre que la industria le dio a dos fallas críticas descubiertas en el corazón de PHP, el lenguaje con el que funcionan WordPress, WooCommerce, Laravel, Magento, PrestaShop, Moodle y una enorme cantidad de sistemas a la medida. No es un plugin vulnerable ni una mala configuración de un sitio en particular: es el intérprete mismo.
Ambas fallas permiten la ejecución remota de código (RCE) sin necesidad de usuario ni contraseña. En la práctica, un atacante que logra explotarlas puede ejecutar instrucciones en tu servidor como si fuera el propio sitio: leer la base de datos, robar credenciales, instalar puertas traseras o usar tu servidor para enviar spam o atacar a terceros.
No es un plugin. Es PHP. Si tu sitio corre en PHP y no se ha actualizado desde el 21 de octubre, trátalo como vulnerable.
Los dos fallos: CVE-2026-109618 y CVE-2026-109619
El equipo de seguridad de PHP publicó el 21 de octubre de 2026 parches de emergencia para dos vulnerabilidades con calificación CVSS de 9.2, el rango crítico. Ese mismo día, investigadores independientes confirmaron que eran reales y poco después se detectaron intentos de explotación en internet.
Tipo
- CVE-2026-109618
- Corrupción de memoria al agotarse la memoria
- CVE-2026-109619
- Estado global obsoleto tras liberar memoria
Impacto
- CVE-2026-109618
- Ejecución remota de código
- CVE-2026-109619
- Ejecución remota de código
Requiere login
- CVE-2026-109618
- No
- CVE-2026-109619
- No
Severidad
- CVE-2026-109618
- Crítica (CVSS 9.2)
- CVE-2026-109619
- Crítica (CVSS 9.2)
Solución
- CVE-2026-109618
- Actualizar PHP
- CVE-2026-109619
- Actualizar PHP
Qué versiones de PHP están afectadas
La regla de oro del aviso oficial: cualquier versión de PHP sin parchear debe considerarse afectada. Estas son las versiones mínimas seguras por rama:
PHP 8.5
- Vulnerable hasta
- 8.5.11
- Versión corregida
- 8.5.12 o superior
PHP 8.4
- Vulnerable hasta
- 8.4.26
- Versión corregida
- 8.4.27 o superior
PHP 8.3
- Vulnerable hasta
- 8.3.35
- Versión corregida
- 8.3.36 o superior
PHP 8.2
- Vulnerable hasta
- 8.2.34
- Versión corregida
- 8.2.35 o superior
PHP 7.4, 8.0 y 8.1
- Vulnerable hasta
- Todas
- Versión corregida
- Solo parches de código fuente o soporte extendido
PHP 7.3 o anterior
- Vulnerable hasta
- Todas
- Versión corregida
- Sin corrección: migrar
A quién afecta realmente
PHP identifica como expuesta cualquier instalación que atienda peticiones web. Eso incluye las formas más comunes de servir un sitio:
- PHP-FPM con Nginx o Apache (la configuración más habitual en VPS y servidores dedicados).
- Apache con mod_php.
- php-cgi, FrankenPHP y LiteSpeed.
- Hosting compartido y servidores con cPanel/WHM, Plesk o CyberPanel.
- Contenedores Docker con imágenes oficiales o propias de PHP.
- Sistemas internos y paneles administrativos aunque “nadie los conozca”: si tienen una URL pública, son alcanzables.
Si no sabes en qué versión de PHP corre tu sitio, ese es el primer problema que hay que resolver.
Cómo saber si tu sitio está expuesto
No basta con revisar la versión de PHP en la terminal: el comando php -v muestra el binario de línea de comandos, que puede ser distinto del PHP-FPM o del módulo de Apache que realmente sirve tu sitio. La revisión correcta tiene tres partes:
- 01Identifica la versión que sirve la web, no solo la de la terminal: desde el panel de tu hosting, desde el administrador de paquetes o con una página de diagnóstico privada que se elimina al terminar.
- 02En servidores Linux, confirma que el paquete instalado ya incluye la corrección revisando el changelog del paquete de PHP en busca de los dos CVE.
- 03Verifica que ningún proceso siga ejecutando la versión anterior: pools de PHP-FPM, Apache y workers de colas o tareas programadas.
Cómo parchear PHP2Shell paso a paso
El propio aviso de PHP lo dice sin rodeos: no hay mitigaciones completas, actualizar es la única opción segura. Bloquear IPs o poner un firewall delante ayuda a reducir ruido, pero no corrige la falla.
- 01Prioriza: primero los servidores expuestos a internet, después los internos.
- 02Respalda: copia de archivos, base de datos y configuración antes de tocar nada.
- 03Actualiza PHP con los paquetes de tu distribución. En Debian y Ubuntu, con apt; en AlmaLinux, Rocky o RHEL, con dnf. Las distribuciones recibieron los parches por adelantado.
- 04Reinicia todo lo que ejecuta PHP: PHP-FPM, Apache, LiteSpeed y cualquier worker persistente. Sin reinicio, el proceso viejo sigue en memoria y sigue vulnerable.
- 05En contenedores, reconstruye la imagen con la versión corregida y vuelve a desplegar. Parchear un contenedor en ejecución deja la imagen expuesta para el siguiente despliegue.
- 06En hosting compartido o gestionado, confirma por escrito con tu proveedor que ya aplicó el parche y revisa la versión en tu panel.
- 07Mantén desactivada la función heredada de progreso de carga de sesiones (session.upload_progress.enabled en 0): es poco usada y es una vía confirmada hacia uno de los fallos.
- 08Prueba el sitio completo: formularios, pagos, carritos, áreas privadas y tareas programadas.
Si no puedes actualizar hoy mismo
Hay medidas temporales publicadas para cada CVE que reducen rutas de ataque específicas, pero no hacen segura una instalación y cada una cubre un solo fallo. Son un puente de horas, no una solución. Si tu servidor usa una versión sin soporte, el puente se acaba rápido: la salida real es migrar a una rama soportada.
Ojo con el calendario: la rama 8.2 termina su soporte de seguridad el 31 de diciembre de 2026. Si estás actualizando dentro de 8.2, aprovecha la ventana para planear el salto a 8.4 o 8.5.
Una mitigación temporal sin fecha de actualización es solo una forma elegante de posponer el problema.
Qué hacer si sospechas que ya te atacaron
Actualizar cierra la puerta, pero no saca a quien ya entró. Si tu servidor estuvo expuesto con tráfico sospechoso entre el 21 de octubre y la fecha del parche, conviene una revisión:
- Busca archivos PHP nuevos o modificados recientemente en carpetas de subida, caché y temporales.
- Revisa usuarios administradores nuevos en el CMS y en la base de datos.
- Revisa tareas programadas (cron) y procesos que no reconoces.
- Rota credenciales: base de datos, panel, SSH, claves de API, SMTP y pasarelas de pago.
- Revisa los registros del servidor web en busca de picos de errores o peticiones inusuales.
- Si confirmas un compromiso, restaura desde un respaldo limpio anterior al incidente y después parchea.
WordPress, WooCommerce y cPanel: casos frecuentes en México
En Querétaro, la CDMX y el Bajío vemos el mismo patrón: sitios de WordPress en hostings baratos con versiones de PHP de hace años, servidores con cPanel que nadie administra desde que se lanzó el sitio y tiendas WooCommerce con datos de clientes y pagos. PHP2Shell no distingue entre una pyme y un corporativo.
En WordPress, actualizar plugins no corrige PHP2Shell: el parche va en el servidor. En cPanel/WHM, la versión de PHP se cambia desde MultiPHP o EasyApache, y puede haber varias versiones instaladas a la vez: todas las que sirvan sitios deben quedar corregidas.
La lección: el servidor también necesita mantenimiento
Un sitio web no termina el día que se lanza. El servidor, el lenguaje, la base de datos y los certificados necesitan actualizaciones, monitoreo y respaldos. PHP2Shell no será la última falla crítica del año; la diferencia entre un susto y un desastre es tener a alguien que aplique el parche el mismo día.
- Inventario de servidores y versiones de PHP de todos tus sitios.
- Actualizaciones de seguridad con ventana definida y reinicio controlado.
- Respaldos automáticos fuera del servidor, probados.
- Monitoreo de disponibilidad, recursos y registros.
- Firewall y protección contra fuerza bruta como capa extra, no como sustituto del parche.
Cómo lo atendemos en QRETARIA
Administramos servidores Linux con AlmaLinux, Ubuntu, Nginx, Apache, PHP-FPM, cPanel/WHM y Docker. Ante PHP2Shell hacemos el diagnóstico de versiones, el parche con respaldo previo, el reinicio controlado, la revisión de indicios de compromiso y el reporte por escrito. Todo por videollamada y WhatsApp, también en marca blanca para agencias que tienen sitios de sus clientes en servidores propios.
Preguntas frecuentes
¿Qué es PHP2Shell?
Es el nombre de dos vulnerabilidades críticas en el motor de PHP, CVE-2026-109618 y CVE-2026-109619, con CVSS 9.2, que permiten ejecutar código remoto sin autenticación. PHP publicó los parches el 21 de octubre de 2026.
¿Qué versión de PHP corrige PHP2Shell?
PHP 8.5.12, 8.4.27, 8.3.36 y 8.2.35 o superiores. Para 7.4, 8.0 y 8.1 solo hay parches de código fuente o soporte extendido; 7.3 y anteriores no tienen corrección.
¿Basta con actualizar el paquete de PHP?
No. Hay que reiniciar PHP-FPM, Apache, LiteSpeed y cualquier worker que ejecute PHP, y reconstruir las imágenes de contenedores. Mientras siga corriendo un proceso con la versión anterior, el servidor sigue expuesto.
¿Un firewall o WAF me protege de PHP2Shell?
Reduce algunas rutas de ataque, pero no corrige la falla. El aviso oficial de PHP indica que actualizar es la única solución completa.
¿Actualizar WordPress o sus plugins corrige PHP2Shell?
No. La falla está en PHP, el lenguaje del servidor. El parche se aplica en el servidor o lo aplica tu proveedor de hosting.
¿Mi hosting compartido ya está protegido?
Depende del proveedor. En hosting compartido o gestionado, el parche lo aplica el proveedor: pide confirmación por escrito y revisa la versión de PHP en tu panel.
Gabriel Medina Meneses
Ingeniería digital y marketing de rendimiento
Sigue leyendo

Performance
Tendencias SEM para 2027: la IA ya decide dónde aparece tu anuncio. Así se gana con ella

Seguridad
Seguridad informática para empresas: el checklist que evita que tu sitio, tu correo y tus datos terminen en manos equivocadas

Agencias
