Síntesis

El equipo de seguridad de PHP, el lenguaje en que se basa la mayoría de los sitios web, corrigió dos vulnerabilidades críticas conocidas como PHP2Shell. Los detalles se filtraron un día antes de lo previsto y ya hubo ataques tempranos, por lo que equipos de seguridad de todo el mundo pidieron actualizar sin demora.

  • Las fallas permiten ejecutar código en un servidor sin usuario ni contraseña.
  • Están en riesgo todas las instalaciones de PHP que atienden solicitudes web.
  • Las versiones 8.1 y anteriores no recibirán parches oficiales.
  • La ANCI emitió una alerta crítica para servicios esenciales y operadores de importancia vital.

Noticia

El equipo de seguridad de PHP publicó este miércoles 21 de octubre actualizaciones de emergencia para dos vulnerabilidades críticas, identificadas como CVE-2026-109618 y CVE-2026-109619 y conocidas como PHP2Shell. Ambas permiten ejecutar código de forma remota sin autenticación y recibieron una calificación de 9,2 sobre 10 en la escala de gravedad CVSS v4.0. Las versiones corregidas son las 8.5.12, 8.4.27, 8.3.36 y la 8.2.35.

Según el aviso oficial, están en riesgo todas las instalaciones de PHP que atienden solicitudes web, incluidas PHP-FPM, Apache con mod_php, php-cgi, FrankenPHP y LiteSpeed. De acuerdo con lo indicado por el sitio BleepingComputer, se estima que PHP está detrás de entre el 75% y el 80% de los sitios web, incluidos los que usan WordPress, Joomla y Drupal.

El equipo de seguridad de PHP señaló que “consideramos que el riesgo es mayor para mod_php”. En esa configuración ya existe un exploit demostrado, en el que una sola solicitud sin autenticar puede activar el ataque antes de que se ejecute el código de la aplicación.

La entidad indicó que las dos fallas tienen el mismo origen: PHP puede dejar su memoria en un estado corrupto cuando una solicitud termina de forma anormal. En un caso, un error por falta de memoria interrumpe el proceso con datos a medio inicializar. En el otro, un estado interno sobrevive a la memoria liberada y una solicitud posterior lo reutiliza.

Según la empresa de seguridad en la nube Wiz, todas las versiones desde PHP 5.4, lanzada en 2012, están afectadas por al menos una de las fallas. La compañía demostró ataques exitosos contra WordPress, Drupal y Joomla, y también logró leer la memoria del servidor, donde pueden quedar contraseñas, tokens y claves de acceso.

Por su parte, CrowdStrike verificó que una sola solicitud anónima basta para que un servidor con mod_php abra una consola y ejecute comandos del atacante. Según la empresa, el proceso no se cae y el servidor responde con normalidad, por lo que el ataque resulta difícil de notar.

Las vulnerabilidades fueron descubiertas por investigadores de la firma de seguridad Calif, Wiz  y OpenAI. Según la PHP Foundation (organización sin fines de lucro que mantiene el lenguaje), una de ellas ya había aparecido en una auditoría externa el año 2024, pero en ese momento no se tomaron medidas. El 11 de agosto Calif reportó los errores, y desde entonces corregirlos pasó a ser la prioridad del equipo.

De acuerdo con lo señalado por el medio especializado The Record, la fundación explicó que la dificultad para corregirlas está en su ubicación, ya que ambas “se encuentran en partes de PHP que casi todas las solicitudes tocan”. Por eso, cualquier cambio arriesgaba romper la compatibilidad o afectar el rendimiento.

El 20 de octubre, una publicación en el foro Hacker News, que luego fue eliminada, reveló los identificadores de las fallas antes de la fecha acordada. Esa tarde, PHP emitió un aviso anticipado y fijó la publicación de los parches para el día siguiente a las 14:00 UTC (11:00 en Chile). También advirtió que podía adelantarla si se conocían detalles o aparecía evidencia de explotación.

La fundación señaló además que Calif publicó por error un video con su prueba de concepto, lo que aceleró el desarrollo de exploits. De acuerdo a la nota de The Record,, la fundación acusó a Chainguard (empresa que distribuye imágenes de software) de romper el embargo al publicar imágenes con la corrección antes de tiempo.

Antes de que salieran los parches, el proveedor de infraestructura de internet Cloudflare, desplegó reglas de firewall para bloquear los métodos de explotación conocidos. Su director de tecnología, Dane Knecht, confirmó a BleepingComputer que ya se observaban ataques tempranos, aunque recalcó que esas protecciones eran temporales. Amazon detectó un intento de explotación en su red de señuelos el 17 de octubre, cuatro días antes de la divulgación, y recomendó revisar los sistemas desde esa fecha.  

PHP 8.1 y las versiones anteriores ya no reciben actualizaciones del proyecto. Por la gravedad del caso, el equipo publicó correcciones mínimas en código fuente para las versiones 7.4, 8.0 y 8.1. También recordó que la rama 8.2 dejará de recibir parches el 31 de diciembre de este año.

Por otra parte, Palo Alto confirmó que todas las versiones de sus sistemas PAN-OS y Panorama están afectadas, aún sin corrección disponible.

Según VirusTotal, más de 5,1 millones de servidores con PHP están expuestos en internet, y al menos 758 mil de ellos declaran versiones sin soporte. Cisco Talos estima que cerca de la mitad de los sistemas vulnerables podrían quedarse sin parche.

PHP compartió medidas temporales para quienes no puedan actualizar, como desactivar el progreso de carga de sesiones o limitar el tamaño de las solicitudes. Aun así, aclaró que estas medidas reducen la exposición a ciertas rutas de ataque, pero no vuelven segura una instalación.

En nuestro país, la ANCI publicó ayer 21 de octubre, a través del CSIRT Nacional, la alerta AVC26-00740, que clasifica a PHP2Shell como vulnerabilidad crítica. El organismo advirtió que las fallas podrían afectar seriamente a proveedores de servicios esenciales y operadores de importancia vital. También indicó que ya se publicaron pruebas de concepto, lo que aumenta el riesgo de explotación.

Para quienes usan PHP 8.1 o versiones anteriores, el CSIRT recomienda migrar a una versión con soporte o consultar con su proveedor si existen parches específicos. Además, pidió revisar los registros de los servidores web, de PHP y de los equipos de seguridad para detectar solicitudes sospechosas o errores de memoria anómalos. Según la alerta, actualizar es “la única medida que proporciona protección completa frente a estas vulnerabilidades”.

En Colombia, el COLCERT (equipo de respuesta a emergencias cibernéticas del país) emitió una alerta crítica e identificó 8.699 servicios con PHP expuestos a internet, aunque aclaró que no todos son vulnerables. En Brasil, el CTIRGOV (centro de respuesta a incidentes del gobierno federal) recomendó priorizar la actualización, y la Anatel (agencia reguladora de telecomunicaciones) sacó de línea temporalmente su sistema electrónico de información.

En los Estados Unidos, CISA (agencia de ciberseguridad del país) instó a parchear de inmediato y a desconectar los sistemas con PHP 8.1 o anterior que no puedan actualizarse. En Europa, el NCSC británico (Centro Nacional de Ciberseguridad del Reino Unido) pidió actualizar o desconectar los sistemas, y el CERT-EU (equipo de respuesta a incidentes de las instituciones europeas) recomendó aislar las aplicaciones expuestas que no puedan corregirse.