Une vulnérabilité a été détectée dans PHP (CVE-2024-4577), permettant l'exécution de code arbitraire sur le serveur ou l'accÚs au code source des scripts PHP lorsqu'ils sont exécutés en mode CGI sur la plateforme Windows (les configurations avec mod_php, php-fpm et FastCGI ne sont pas vulnérables). Le problÚme a été corrigé dans les versions PHP 8.3.8, 8.2.20 et 8.1.29.
La vulnérabilité est une variante d'un problÚme corrigé en 2012, CVE-2012-1823, pour lequel les protections mises en place se sont avérées insuffisantes pour bloquer l'attaque sur la plateforme Windows. La méthode d'attaque consiste à substituer un argument de ligne de commande lors du lancement de l'interpréteur PHP en manipulant les paramÚtres de la demande envoyée au script PHP.
Dans la vulnĂ©rabilitĂ© ancienne CVE-2012-1823, il suffisait de spĂ©cifier des options de ligne de commande au lieu de paramĂštres de requĂȘte, par exemple, «http://localhost/index.php?-s» pour afficher le code source du script. La nouvelle vulnĂ©rabilitĂ© repose sur le fait que la plateforme Windows effectue une conversion automatique des caractĂšres, permettant ainsi de contourner la protection ajoutĂ©e prĂ©cĂ©demment en spĂ©cifiant des caractĂšres prĂ©sents dans certaines codifications et qui sont remplacĂ©s par le symbole «-» (par exemple, http://localhost/index.php?s).
La vulnĂ©rabilitĂ© a Ă©tĂ© confirmĂ©e dans des configurations avec des locales pour le chinois traditionnel (cp950), le chinois simplifiĂ© (cp936) et japonais (cp932), mais peut Ă©galement se manifester avec d'autres locales. Le problĂšme apparaĂźt par dĂ©faut dans l'ensemble XAMPP (Apache + MariaDB + PHP + Perl), ainsi que dans toutes les configurations Apache oĂč php-cgi est configurĂ© comme gestionnaire de scripts CGI via la configuration
âAction cgi-script «/cgi-bin/php-cgi.exe»â ou âAction application/x-httpd-php-cgi «/php-cgi/php-cgi.exe»â, ou par le placement direct de l'interprĂ©teur php dans «/cgi-bin» et dans tous les autres rĂ©pertoires oĂč l'exĂ©cution de scripts CGI est autorisĂ©e via la directive ScriptAlias.
De plus, les mises à jour PHP 8.3.8, 8.2.20 et 8.1.29 corrigent trois autres vulnérabilités :
- CVE-2024-5458 â possibilitĂ© de contourner le filtre
FILTER_VALIDATE_URL, utilisĂ© lors de l'appel de la fonction filter_var. - CVE-2024-5585 â vecteur d'attaque alternatif contre la vulnĂ©rabilitĂ© CVE-2024-1874, permettant de contourner les protections prĂ©cĂ©demment mises en place et d'effectuer une substitution de commandes lors de l'appel de fichiers bat et cmd via la fonction proc_open sur la plateforme Windows (vulnĂ©rabilitĂ© BatBadBut).
- La fonction openssl_private_decrypt est vulnérable à l'attaque Marvin.
Source : opennet.ru
