La vulnerabilidad CVE-2024-4577 afecta a todas las versiones de PHP desde la 5.x hasta la 8.x. Esta vulnerabilidad permite la ejecución remota de código (RCE) en servidores Windows. El error aprovecha la conversión de caracteres de Unicode a ASCII utilizando la función 'Best-Fit' de Windows cuando PHP se utiliza en modo CGI.
Exploitabilidad mediante petición POST con guion suave
Los atacantes pueden evadir el proceso de escape usando un guion suave (0xAD) en lugar de un guion normal (0x2D) en una petición POST. La vulnerabilidad fue descubierta por Orange Tsai de Devcore.
Detección temprana de intentos de explotación
Shadowserver detectó intentos de explotación contra sus servidores honeypot dentro de las 24 horas posteriores a la divulgación pública.
Parches disponibles para versiones específicas de PHP
Los parches están disponibles para PHP 8.3.8, PHP 8.2.20 y PHP 8.1.29. La configuración predeterminada de XAMPP para Windows es vulnerable, especialmente bajo configuraciones regionales en chino tradicional, chino simplificado y japonés.
Recomendaciones de mitigación
- Actualizar a PHP 8.3.8, PHP 8.2.20 o PHP 8.1.29.
- Implementar reglas de mod_rewrite para bloquear ataques.
- Comentar la directiva 'ScriptAlias' en el archivo de configuración de Apache para usuarios de XAMPP que no necesitan CGI.