PHP 8.5.7 y 8.4.22: Estabilización del JIT y Parches de Seguridad para URI

- 08 Jun 2026 02:07 PM
El equipo de desarrollo de PHP ha lanzado las versiones 8.5.7 y 8.4.22, dos actualizaciones de mantenimiento que se centran en corregir errores y vulnerabilidades de seguridad sin introducir nuevas funcionalidades. Estas versiones incluyen correcciones críticas para cierres inesperados en el compilador JIT de Opcache, solucionan dos vulnerabilidades de seguridad relacionadas con el análisis de URI y añaden compatibilidad con OpenSSL 4.0, consolidando la estabilidad del lenguaje en equipos de cómputo con servidores de producción.
El equipo de desarrollo de PHP ha anunciado la disponibilidad de las versiones 8.5.7 y 8.4.22.
Según el anuncio oficial en el sitio web de PHP (php.net), ambas son versiones de corrección de errores (bug fix releases) y se recomienda a todos los usuarios actualizar a estas versiones.
Correcciones de Seguridad y Estabilidad del Núcleo
Opcache JIT: El Fin de los Cierres Aleatorios
Una de las mejoras más significativas de PHP 8.5.7 es la corrección de múltiples fallos que causaban cierres inesperados en el compilador JIT (Just-In-Time) de Opcache, un problema que afectaba especialmente a servidores con alta carga de trabajo.
-
El problema anterior: El trazado del compilador JIT podía provocar fallos de segmentación (segfaults) cuando se producían interrupciones de la máquina virtual durante llamadas a funciones de usuario o "tailcalls", lo que forzaba el reinicio de los procesos del servidor web.
-
La solución: Las correcciones se centran en el manejo de interrupciones, redirigiéndolas de forma segura a través de la pila auxiliar del sistema.
Vulnerabilidades URI y DOM
El análisis de URI (Uniform Resource Identifier) ha recibido una atención prioritaria en esta versión para prevenir posibles vectores de ataque:
-
CVE en
uriparser: Se han solucionado dos vulnerabilidades relacionadas con la versión anterior de la bibliotecauriparser. La primera implicaba una truncación de diferencias de punteros que podía corromper la memoria, y la segunda permitía que la funciónEqualsUritratara URI diferentes como idénticas, lo que podría romper la lógica de enrutamiento y la validación de sesiones. -
DOM XPath: Se ha parchado una condición de "use-after-free" (uso después de liberar) en funciones personalizadas de XPath del DOM, eliminando una fuga de memoria en cargas pesadas de trabajo de scraping web o procesamiento de XML.
Compatibilidad con Nuevas Plataformas y Corrección de Errores
OpenSSL 4.0 y Nuevas Extensiones
Para garantizar la compatibilidad con las distribuciones Linux más recientes, ambas versiones añaden soporte para OpenSSL 4.0, evitando errores en los "handshakes" de conexiones seguras.
-
URI Extension: Se ha modernizado la extensión para corregir errores heredados.
-
mbstring: Se ha reemplazado la antigua biblioteca de expresiones regulares por
oniguruma5php, eliminando una fuente común de fallos en implementaciones antiguas. - Oracle Instant Client: Se ha actualizado el soporte para Oracle Instant Client 23.26, mejorando la conectividad con bases de datos empresariales.
Mejoras en Extensiones y MySQLnd
Un error persistente en la extensión mysqlnd (MySQL Native Driver) que provocaba una fuga de memoria ha sido finalmente solucionado.
La corrección impide que las consultas fallidas dejen memoria "colgando" (persistent bug), lo que reduce el consumo de RAM a lo largo del tiempo.
Mejoras en Funciones de Fecha y Cálculos
Se ha añadido una corrección de desbordamiento de enteros para evitar la generación de "timestamps" negativos, garantizando que las tareas programadas (cron jobs) se ejecuten correctamente.
Además, la función version_compare ahora maneja correctamente los puntos finales en las cadenas de versión.
Disponibilidad y Cómo Actualizar
Enlaces Oficiales
- Sitio web oficial: php.net
- Descarga de PHP 8.5.7: php.net/downloads#v8.5.7
- Descarga de PHP 8.4.22: php.net/downloads#v8.4.22
Métodos de instalación según tu Sistema Operativo
Distribuciones RHEL (Rocky Linux, AlmaLinux, CentOS, Fedora): Remi Collet ha lanzado paquetes RPM para estas versiones en el repositorio remi-modular.
Es necesario reiniciar el módulo DNF (dnf module reset php) para evitar conflictos con versiones antiguas antes de actualizar.
dnf module reset php dnf module enable php:remi-8.5 dnf update
Distribuciones Debian/Ubuntu (por Ondřej Surý): Los paquetes ya están disponibles en el repositorio deb.sury.org. Después de añadir la fuente y actualizar la caché, se puede instalar con el gestor de paquetes estándar.
apt update apt install php8.5
Windows y código fuente: Los binarios para Windows y el código fuente para compilación manual están disponibles directamente en la página de descargas de PHP.net.
Esta actualización de mantenimiento es particularmente relevante para administradores de sistemas que ejecutan aplicaciones con caché Opcache o que parsean entradas de usuario, ya que las correcciones en el JIT y las vulnerabilidades de URI resueltas mejoran la estabilidad y seguridad en entornos de producción.