Actualizaciones críticas de seguridad para PHP y Node.js: qué hemos hecho y qué debes hacer tú

Patrick Wunderlin
Patrick Wunderlin
Actualizaciones críticas de seguridad para PHP y Node.js: qué hemos hecho y qué debes hacer tú

Hoy, 21 de octubre de 2026, PHP y Node.js han publicado actualizaciones de seguridad. Las de PHP son especialmente importantes: corrigen dos vulnerabilidades críticas que permiten ejecutar código en un servidor web sin autenticación. Ya se habían detectado ataques antes de que se publicara el parche.

WireBoard ya está actualizado. No hubo interrupciones del servicio y no tienes que hacer nada en tu cuenta de WireBoard ni en el script de seguimiento.

Pero si tu web o aplicación utiliza PHP o Node.js, sigue leyendo y actualiza hoy mismo.

En resumen

Actualiza a

Gravedad

PHP

8.5.12, 8.4.27, 8.3.36 o 8.2.35 (o al paquete corregido de tu proveedor)

Crítica (CVSS 9,2), ejecución remota de código sin autenticación

Node.js

26.12.1, 24.22.1 o 22.23.4

Alta

  • ¿Usas WordPress, Magento, Drupal, Laravel u otra aplicación basada en PHP? Entonces usas PHP. Actualiza ya.

  • ¿Tienes alojamiento compartido o gestionado? Tu proveedor se encarga de aplicar la corrección de PHP. Confirma que lo haya hecho.

  • Después de actualizar PHP, reinicia PHP-FPM o Apache. Si no lo haces, seguirá ejecutándose la versión anterior.

  • ¿Usas una versión sin soporte (PHP 8.1 o anterior, Node.js 25, 23, 20 o anterior)? No recibirás una corrección oficial. Planifica el cambio a una versión con soporte.


Qué ha pasado

PHP: "PHP2Shell" (CVE-2026-109618 y CVE-2026-109619)

El equipo de PHP ha publicado correcciones para dos vulnerabilidades críticas, ambas con una puntuación de 9,2 en la escala CVSS v4.0:

  • CVE-2026-109618: ejecución remota de código por corrupción de memoria cuando PHP se queda sin memoria mientras procesa una petición.

  • CVE-2026-109619: ejecución remota de código a través de un estado global obsoleto.

Ambas pueden explotarse de forma remota, sin autenticación y con la configuración predeterminada. Los detalles se filtraron en internet un día antes de la publicación prevista. Varias empresas de seguridad detectaron ataques y sondeos contra sitios PHP antes de que el parche estuviera disponible. Algunas empresas incluso desconectaron sus servicios por precaución hasta poder actualizarlos.

Todas las ramas de PHP con soporte están afectadas en las versiones anteriores a 8.2.35, 8.3.36, 8.4.27 y 8.5.12.

Node.js: actualización de seguridad de octubre de 2026

Node.js ha publicado correcciones para las ramas 26.x, 24.x y 22.x que resuelven 10 vulnerabilidades, 4 de ellas de gravedad alta. Estas son las más destacadas:

  • CVE-2026-111497: una escritura fuera de los límites de memoria en el descompresor Brotli que podría permitir la ejecución remota de código. Basta con que tu aplicación haga una llamada a fetch() a un servidor que devuelva datos comprimidos con Brotli.

  • CVE-2026-105483 / CVE-2026-106069: permiten eludir la verificación del nombre de host en TLS mediante representaciones poco habituales de direcciones IP.

  • CVE-2026-105482: dns.resolve podía resolver un nombre distinto del que había validado tu código.

Qué hemos hecho

Hoy hemos aplicado ambas actualizaciones en toda la infraestructura de WireBoard. El despliegue se completó sin interrupciones ni datos afectados. Puedes seguir usando WireBoard como siempre.

¿Te afecta?

Debes actuar si tu web, aplicación o servidor utiliza:

  • PHP, directamente o a través de un CMS o un framework como WordPress, WooCommerce, Magento, Drupal, Joomla, Laravel o Symfony.

  • Node.js, por ejemplo, en una aplicación de Next.js, Nuxt, Express o NestJS, o en cualquier servicio de backend o servidor de compilación que ejecute Node.

¿No lo tienes claro? Consulta a tu desarrollador o proveedor de alojamiento. Basta con preguntar: "¿Nuestra web usa PHP o Node.js? ¿Se ha aplicado la actualización de seguridad de hoy?".

Cómo comprobar tu versión

PHP

La versión que importa es la que utiliza tu servidor web. El comando php -v muestra la versión de PHP de la línea de comandos, que puede ser distinta.

  1. Crea un archivo llamado info.php en el directorio raíz de tu web con este contenido: <?php phpinfo();

  2. Ábrelo en el navegador y comprueba el valor de PHP Version en la parte superior.

  3. Elimina el archivo en cuanto termines: deja expuesta toda la configuración de tu servidor.

Muchos paneles de alojamiento, como cPanel o Plesk, también muestran la versión de PHP.

Nota sobre los paquetes de las distribuciones Linux: Ubuntu, Debian, RHEL y otras distribuciones suelen incorporar la corrección a sus paquetes sin cambiar el número de versión. En ese caso, busca los identificadores CVE en el registro de cambios del paquete (te explicamos cómo más abajo).

Node.js

node -v

La corrección está aplicada si aparece v26.12.1, v24.22.1, v22.23.4 o una versión posterior de la misma rama.

Cómo actualizar PHP

Sigue las instrucciones que correspondan a tu instalación de PHP.

Alojamiento compartido o gestionado

Tu proveedor gestiona PHP y se encarga de aplicar la corrección. Consulta su página de estado o sus avisos y comprueba la versión con phpinfo(), como se explica arriba. Si tu panel permite elegir la versión de PHP y usas la 8.1 o una anterior, cambia a la 8.2 o posterior. Antes, confirma que tu CMS y tus plugins sean compatibles.

Ubuntu / Debian

sudo apt update
# replace 8.3 with the PHP branch you use
sudo apt install --only-upgrade 'php8.3-*'

# confirm the fix is included
apt changelog php8.3-fpm | grep -E 'CVE-2026-10961(8|9)'

Si el último comando no muestra nada, la corrección aún no ha llegado al repositorio de tu distribución. Consulta los avisos de seguridad de Ubuntu o el registro de seguridad de Debian y vuelve a intentarlo más tarde. Si usas los paquetes PHP de Ondřej Surý, actualiza desde ese repositorio del mismo modo.

RHEL / AlmaLinux / Rocky Linux

dnf module list php          # see which PHP stream you're on
sudo dnf upgrade 'php*'

# confirm the fix is included
rpm -q --changelog php-fpm | grep -E 'CVE-2026-10961(8|9)'

Si usas el repositorio Remi, actualiza desde ahí.

Docker

Descargar una imagen nueva no actualiza los contenedores que ya están en ejecución. Descarga la imagen, vuelve a compilar y recrea los contenedores:

docker pull php:8.3-fpm        # use your tag
docker compose build --pull
docker compose up -d

Para asegurarte, fija la versión corregida en tu Dockerfile (por ejemplo, FROM php:8.3.36-fpm).

Instalación desde el código fuente o en Windows

Descarga la versión corregida desde php.net/downloads.

Después, reinicia PHP

Es fácil olvidarse de este paso. Los procesos en ejecución seguirán usando la versión anterior de PHP hasta que los reinicies:

# PHP-FPM (Debian/Ubuntu; replace 8.3 with your branch)
sudo systemctl restart php8.3-fpm

# PHP-FPM (RHEL family)
sudo systemctl restart php-fpm

# Apache with mod_php
sudo systemctl restart apache2   # or httpd on RHEL

Vuelve a consultar phpinfo() para confirmar que ya se está ejecutando la nueva versión.

"¿Basta con cambiar algún ajuste?"

No. Al principio circularon soluciones provisionales, como desactivar session.upload_progress.enabled, pero solo reducen el riesgo. Un desarrollador del núcleo de PHP afirmó públicamente que la única medida realmente eficaz es actualizar PHP. Si has aplicado una solución provisional, mantenla hasta que actualices, pero no dejes de actualizar.

Cómo actualizar Node.js

Método de instalación

Cómo actualizar

nvm

nvm install 24 (o 22 / 26) y después nvm alias default 24

Instalador oficial

Descarga la última versión de tu rama desde nodejs.org/en/download

Docker

Fija la etiqueta de la versión corregida, por ejemplo, FROM node:24.22.1. Después ejecuta docker pull y vuelve a compilar. Una etiqueta sin versión exacta, como node:24, puede seguir usando una imagen antigua si compilas desde la caché.

Homebrew

brew update && brew upgrade node (o node@24 / node@22). La actualización puede tardar unas horas en llegar a Homebrew. Si necesitas actualizar ya, usa nvm o el instalador.

Gestor de paquetes de Linux

Actualiza desde el repositorio de tu distribución o de NodeSource como de costumbre.

Plataforma de alojamiento (Vercel, Netlify, Heroku, Render, etc.)

Revisa la configuración del entorno de ejecución y los avisos de tu plataforma. La mayoría aplica las correcciones automáticamente, pero puede que tengas que volver a desplegar.

Después de actualizar, reinicia tu aplicación (o vuelve a desplegarla) y confirma la versión con node -v.

Si usas una versión sin soporte

Solo se publican correcciones oficiales para las versiones con soporte:

  • PHP: 8.2, 8.3, 8.4 y 8.5. PHP 8.1 y las versiones anteriores no reciben actualizaciones oficiales. Algunas distribuciones Linux y proveedores de soporte de pago a largo plazo adaptan las correcciones a versiones antiguas. Consulta con tu proveedor. Si no es tu caso, lo seguro es pasar a una rama con soporte. Ten en cuenta que PHP 8.2 solo recibirá correcciones de seguridad hasta el 31 de diciembre de 2026.

  • Node.js: 22.x, 24.x y 26.x. Las ramas 25, 23 y 20, entre otras, ya no tienen soporte ni recibirán esta corrección.

Si no puedes actualizar de inmediato, considera proteger la web con un cortafuegos de aplicaciones web o restringir el acceso hasta que puedas hacerlo.

Más información

Avisos oficiales

Guías útiles

Compartir artículo
¡Copiado!
Patrick Wunderlin

Escrito por

Patrick Wunderlin

Fundador de WireBoard.io. Ingeniero informático (EPFL), apasionado por la analítica web, el procesamiento de datos en tiempo real y la creación de herramientas que ayudan a las empresas a crecer.

WireBoard

Analiza tu web en tiempo real

Dashboards en tiempo real a tu manera. Empieza gratis. Sin tarjeta, sin complicaciones.