Para mitigar esta vulnerabilidad, se debe realizar una actualización a PHP en RHEL.
A continuación, los pasos a realizar (el servidor deberá tener salida a internet).
Primera opción: si PHP 8.1 o 8.2 están en la lista al ejecutar el paso 2
Paso 1: Verificar la versión actual. Ejecuta en la terminal lo siguiente, esto mostrará la versión instalada.
php -v
Paso 2: Verificar las versiones disponibles.
dnf module list php
Ejemplo de salida esperada:
Name Stream Profiles Summary php 7.2 common [d], devel PHP scripting language php 7.3 common, devel PHP scripting language php 7.4 common, devel PHP scripting language php 8.0 common, devel PHP scripting language php 8.1 common, devel PHP scripting language php 8.2 common, devel PHP scripting language
El [d] indica la versión predeterminada. Si PHP 8.1 o 8.2 están en la lista, continúa al paso 3.
Paso 3: Habilitar el módulo de la nueva versión de PHP. Si deseas instalar PHP 8.2, primero debes deshabilitar el módulo actual y luego habilitar el nuevo.
sudo dnf module reset php -y sudo dnf module enable php:8.2 -y
Paso 4: Instalar PHP y sus módulos. Instala PHP y los módulos necesarios.
sudo dnf install -y php php-cli php-fpm php-mysqlnd php-xml php-curl php-mbstring php-zip php-gd php-bcmath
Paso 5: Verificar la versión instalada. Después de la instalación, confirma la nueva versión.
php -v
Paso 6: Reiniciar servicio Apache. Si usas Apache, reinicia el demonio.
sudo systemctl restart httpd
Segunda opción: si PHP 8.1 o 8.2 no están en la lista al ejecutar el paso 2
Paso 1: Verificar la versión actual. Ejecuta en la terminal lo siguiente, esto mostrará la versión instalada.
php -v
Paso 2: Verificar las versiones disponibles.
dnf module list php
Ejemplo de salida esperada:
Name Stream Profiles Summary php 7.2 common [d], devel PHP scripting language php 7.3 common, devel PHP scripting language php 7.4 common, devel PHP scripting language php 8.0 common, devel PHP scripting language
El [d] indica la versión predeterminada. Si PHP 8.1 o 8.2 no están en la lista, instala EPEL y Remi (Paso 3).
Paso 3: Habilitar Repositorio Remi (Para PHP 8.1 o 8.2). Si necesitas PHP 8.1 o 8.2, instala los repositorios EPEL y Remi.
sudo dnf install -y epel-release sudo dnf install -y dnf-utils sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm sudo dnf module reset php -y
Paso 4: Habilita la versión deseada.
Para PHP 8.1:
sudo dnf module enable php:remi-8.1 -y
Para PHP 8.2:
sudo dnf module enable php:remi-8.2 -y
Paso 5: Instalar o actualizar PHP. Ejecutar lo siguiente.
sudo dnf install -y php php-cli php-fpm php-mysqlnd php-json php-opcache php-xml php-mbstring
Si ya tienes PHP instalado y solo deseas actualizarlo, ejecuta lo siguiente.
sudo dnf update -y php\*
Paso 6: Verificar la nueva versión.
php -v
Debe mostrar la versión instalada, por ejemplo:
PHP 8.2.7 (cli) (built: Nov 14 2023 12:15:23) ( NTS )
Paso 7: Reiniciar servicio Apache. Reinicia el demonio.
sudo systemctl restart httpd