Mientras te tomas un café: qué actualizar en PHP, Node.js, WordPress y tu almacén de certificados

Domingo por la mañana, tiempo para tomar un café tranquilamente y repasar una semana muy movida en cuanto a temas de seguridad web.

Voy a empezar por el que parece que ha tenido menos impacto, pero fue el que me puso alerta. Utilizo de manera gratuita el plugin de WordPress UpdraftPlus y en pocos días recibió varias actualizaciones. Es lo que me hizo investigar y empezar a estar atento a páginas sobre seguridad.

Lamentablemente, no ha sido ni el primero, ni el último, ha sido una semana movidita para los departamentos de ciberseguridad de las empresas y los miles de administradores de servidores web. Dos de las principales tecnologías utilizadas para servir contenido en la web se han visto afectadas: PHP y Node.js.

Por si todo ésto no fuera suficiente, un incidente con eMudhra, una entidad certificadora, comprometió ocho de sus certificados intermedios, abriendo la puerta a múltiples suplantaciones en webs y otros servicios. ¡Fantasia!

El ataque a UpdraftCentral Cloud

TeamUpdraft, desarrollador de UpdraftPlus, comunicó un acceso no autorizado a sus sistemas entre los días 17 y 18 de octubre. A raíz de ello los atacantes se hicieron con las claves de conexión de UpdraftCentral Cloud, su servicio de pago. El siguiente paso fue utilizarlas para enviar comandos firmados y legítimos a sitios WordPress conectados.

No llegaron a modificar los paquetes del plugin, pero sí que aprovecharon para enviar otros falsos plugins que se instalaban en los servidores y facilitaban el acceso e incluso la toma de control de las instancias WordPress afectadas.

En principio, los sitios que usamos el plugin de manera gratuita y con almacenamiento gestionado por nosotros mismos no estamos afectados, pero conviene actualizar a la última versión de UpdraftPlus y cambiar las claves de conexión al servicio de UpdraftCentral.

La versión recomendable es la 2.26.13 o posterior. Para refrescar la claves hay que ir a los ajustes del plugin y buscar la sección de UpdraftCentral.

El problema con los certificados de eMudhra

Sin lugar a dudas el caso más silencioso y que podría haber pasado inadvertido por completo. El 20 de octubre se hizo publicó que la entidad certificadora eMudhra tenía comprometidos ocho de sus certificados intermedios.

Esto implicaba que cualquiera pudiera duplicarlos y generar certificados falsos, pudiendo a su vez duplicar servicios y páginas web certificadas.

El origen del problema fue que las claves privadas de eMudhra fueron generadas incorrectamente, de modo que cualquier persona podía recuperarlas desde los propios certificados. Un atacante podría generar sus propios certificados.

Ya no hablamos de páginas web que imitan a otras, si no del escenario más grave de suplantación. Quién verifica que estás conectando al servidor correcto no es la entidad que esperas, rompiendo la confianza de la conexión.

Afortunadamente, a nivel de usuario, la actualización del navegador es suficiente. Por otro lado, los administradores de sistemas y desarrolladores deberán actualizar librerías y aplicaciones. Node.js, aplicaciones como Docker, Python, Rust, Java, VS Code.. aplicaciones construidas sobre Electron.

Para probar que nuestro navegador está actualizado se puede visitar esta URL. De momento la gran mayoría se han actualizado correctamente. Si ves algo diferente a un Error de privacidad actualiza.

Node.js: Brotli y el riesgo de descomprimir lo que otros envían

El 21 de octubre llegaba el turno de Node.js, se lanzaron parches de seguridad para tres de sus versiones. Afortunadamente, el problema es bastante concreto y acotado. La descompresión de datos desde ficheros Brotli podía comprometer la seguridad de los servidores.

Un paquete corrompido puede hacer que el descompresor escriba información fuera del espacio que le corresponde. Eso puede romper el programa, exponer fragmentos de su memoria o, si el atacante lo aprovecha bien, darle control del proceso.

Afortunadamente, la actualización y redespliegue de las aplicaciones que usan Node.js y paquetes Brotli soluciona la exposición a este fallo. Mientras tanto, revisar la gestión de ficheros Brotli debe mitigar el alcance de este fallo.

Las estrategias de compresión de datos suelen incluir alternativas a Brotli, como GZIP.

PHP2Shell, cuando PHP salió en las noticias

Casi el 70% de los sitios web corren sobre servidores con PHP, así que el impacto de este error ha sido bastante grande. Su aparición en las noticias ha hecho, además, que todo el mundo se haya enterado.

PHP2Shell agrupa dos vulnerabilidades del núcleo de PHP. Ambas pueden permitir ejecución remota de código sin autenticación en cualquier servicio que atienda peticiones web con PHP.

La alarma vino, porque desde Amazon se avisó el 17 de octubre de intentos de aprovechar estas vulnerabilidades, cuando todavía no se habían hecho públicas.

Rápidamente, se han actualizado cuatro de las ramas principales de PHP: 8.2.35, 8.3.36, 8.4.27 y 8.5.12.

Indudablemente, en este caso, el trabajo de actualizar queda en manos de los administradores de sistemas.

Seguramente, después de leer todo esto, si tienes algún servidor con estas tecnologías no hayas podido acabar el café sin ponerte a actualizarlo.

Aquí una tabla resumen que la IA, amablemente ha generado.

ComponenteIncidenciaVersión segura / acciónPrioridad
PHP 8.5PHP2Shell (CVE-2026-109618, CVE-2026-109619)Actualizar a 8.5.12 y reiniciar workersCrítica tenable
PHP 8.4PHP2ShellActualizar a 8.4.27 y reiniciar workersCrítica tenable
PHP 8.3PHP2ShellActualizar a 8.3.36 y reiniciar workersCrítica tenable
PHP 8.2PHP2ShellActualizar a 8.2.35 y reiniciar workersCrítica tenable
PHP 8.1, 8.0 y 7.xPHP2ShellMigrar a una rama soportada y parcheada; no hay release oficial completaCrítica tenable
Node.js 26.xBrotli RCE, DNS, TLS y otros fallosActualizar a 26.12.1 y redesplegarAlta
Node.js 24.xBrotli RCE, DNS, TLS y otros fallosActualizar a 24.22.1 y redesplegarAlta
Node.js 22.xBrotli RCE, DNS, TLS y otros fallosActualizar a 22.23.4 y redesplegarAlta
UpdraftPlus gratuitoClaves UpdraftCentral robadas y plugins backdoorActualizar a 1.26.13 o posteriorCrítica si usas UpdraftCentral Cloud nodejs
UpdraftPlus PremiumClaves UpdraftCentral robadas y plugins backdoorActualizar a 2.26.13 o posteriorCrítica si usas UpdraftCentral Cloud nodejs
Claves UpdraftCentralPosible uso de claves comprometidas para instalar pluginsRevocar claves antiguas en cada WordPress conectadoCrítica si usas UpdraftCentral Cloud nodejs
NavegadoresCertificados intermedios de eMudhra comprometidosActualizar Chrome, Firefox, Edge/Safari y confiar en los bloqueos publicadosAlta bleepingcomputer
Node.js / Python / Go / Rust / JavaAlmacén propio de CA afectado por eMudhraActualizar a versiones que incorporen el almacén de confianza corregidoAlta bleepingcomputer
CLI y herramientascurl, Git para Windows, Docker, VS Code, etc.Actualizar cada herramienta si incluye su propio bundle de CAAlta bleepingcomputer

Foto de Daniil Komov en Unsplash

Deja una respuesta