CVE-2024-4577 : faille de sécurité critique dans PHP

Remédiation, aide en ligne, support et résolution d'incident sur votre infrastructure ou votre parc informatique.

Modérateur : estocade

Répondre
estocade
Messages : 22
Enregistré le : 22 mai 2024, 12:27

CVE-2024-4577 : faille de sécurité critique dans PHP

Message par estocade »

Dans les versions PHP 8.1.* avant 8.1.29, 8.2.* avant 8.2.20, 8.3.* avant 8.3.8,
lors de l'utilisation d'Apache et PHP-CGI sous Windows, si le système est configuré pour utiliser certaines pages de codes, Windows peut utiliser le comportement « Best-Fit » pour remplacer les caractères dans la ligne de commande donnée aux fonctions de l'API Win32.

Le module PHP CGI peut interpréter à tort ces caractères comme des options PHP, ce qui peut permettre à un utilisateur malveillant de transmettre des options au binaire PHP en cours d'exécution, et ainsi de révéler le code source des scripts, d'exécuter du code PHP arbitraire sur le serveur, etc.

Lors de l'implémentation de PHP, l'équipe n'a pas remarqué la fonctionnalité Best-Fit de conversion d'encodage dans le système d'exploitation Windows. Cette omission permet à des attaquants non authentifiés de contourner la protection précédente de CVE-2012-1823 par des séquences de caractères spécifiques.

Comment se protéger de la CVE-2024-4577 ?

La meilleure manière de se protéger contre cette vulnérabilité est de mettre à jour PHP vers les versions les plus récentes, publiées il y a quelques jours, qui incluent un correctif. Ces versions sont : PHP 8.3.8, PHP 8.2.20, et PHP 8.1.29.

Si vous ne pouvez pas mettre à jour PHP immédiatement ou si vous utilisez une version de PHP qui n'est plus supportée, il existe une alternative. Une règle de réécriture d'URL utilisant le module PHP "mod_rewrite" peut bloquer les attaques (cependant, cette solution ne s'applique qu'aux versions mentionnées ci-dessus).

RewriteEngine On
RewriteCond %{QUERY_STRING} ^%ad [NC]
RewriteRule .? – [F,L]


Par ailleurs, au lieu d'appliquer cette règle, si vous êtes certain de ne pas utiliser PHP-CGI et que vous utilisez XAMPP, vous pouvez désactiver cette fonctionnalité sur votre serveur Web. Pour ce faire, éditez le fichier suivant :

C:/xampp/apache/conf/extra/httpd-xampp.conf

Commentez la ligne présentée ci-dessous en ajoutant un "#" au début de la ligne :

#ScriptAlias /php-cgi/ "C:/xampp/php/"

Enfin, sachez qu'un exploit de preuve de concept (PoC) est déjà disponible à l'adresse ci-dessous :

https://github.com/watchtowrlabs/CVE-2024-4577

Cette vulnérabilité représente un risque important, il est donc fortement recommandé de mettre à jour dès que possible.
Répondre