Fecha de publicación: Lun, 10/06/2024 - 17:38

Aviso de seguridad

Nivel de peligrosidad: Crítica

Descripción

La vulnerabilidad surge cuando como parte del procesamiento de Unicode, PHP aplica un mapeo de "Best-Fit" para reemplazar caracteres en la línea de comandos, permitiendo a un atacante que ejecute código PHP arbitrario en el servidor, identificado como CVE-2024-4577

Recursos afectados

Las versiones de PHP para Windows:

  • PHP 8.1.* anteriores a 8.1.29
  • PHP 8.2.* anteriores a 8.2.20
  • PHP 8.3.* anteriores a 8.3.8
  • PHP 8.0 (EoL)
  • PHP 7.x (EoL)
  • PHP 5.x (EoL)

Solución

Actualizar a las versiones que incorporan los parches:

  • PHP 8.3.8
  • PHP 8.2.20
  • PHP 8.1.29

Recomendaciones

Para versiones que no se pueden actualizar inmediatamente y usuarios de versiones EoL, se recomienda aplicar una regla mod_rewrite para bloquear ataques, como la siguiente:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^%ad [NC]

RewriteRule .? – [F,L]

Si se usa XAMPP y no se necesita la función PHP CGI, se debe buscar la directiva 'ScriptAlias' en el archivo de configuración de Apache (normalmente en 'C:/xampp/apache/conf/extra/httpd-xampp.conf') y comentarlo.

Migrar de CGI a alternativas más seguras, como FastCGI, PHP-FPM y Mod-PHP.

Referencias

Watchtowr