Vulnérabilité Critique dans PHP-CGI

La CISA met en Garde sur l’Exploitation d’une Vulnérabilité Critique dans le système PHP-CGI.

Le 12 juin 2024, la Cybersecurity and Infrastructure Security Agency (CISA) a publié une alerte concernant une vulnérabilité critique dans le module PHP-CGI.

Connue sous le code CVE-2024-4577, cette vulnérabilité permet une injection de commande du système d’exploitation, exposant les systèmes utilisant PHP-CGI à de graves risques de sécurité.

Description de la Vulnérabilité

Selon le National Institute of Standards and Technology (NIST), la vulnérabilité CVE-2024-4577 permet à un attaquant d’injecter des commandes malveillantes dans le système d’exploitation via le module PHP-CGI. Cette faille est due à une mauvaise interprétation des caractères dans la ligne de commande donnée aux fonctions de l’API Win32 lorsque certaines pages de codes sont utilisées sous Windows. Le module PHP-CGI peut alors interpréter à tort ces caractères comme des options PHP, permettant ainsi à un attaquant de transmettre des options au binaire PHP en cours d’exécution. Les conséquences peuvent inclure la divulgation du code source des scripts et l’exécution de code PHP arbitraire sur le serveur.

Cette vulnérabilité constitue un contournement du correctif précédemment appliqué pour la vulnérabilité CVE-2012-1823.

Versions Affectées

Les versions de PHP concernées sont les suivantes :

PHP 8.1.* avant 8.1.29
PHP 8.2.* avant 8.2.20
PHP 8.3.* avant 8.3.8
Ces versions sont vulnérables lors de l’utilisation d’Apache et PHP-CGI sous Windows.

Détails Techniques

Les chercheurs de l’équipe de sécurité de StormShield ont révélé que cette vulnérabilité peut être exploitée par la simple insertion d’un caractère « Soft Hyphen » dans les paramètres d’une URL. Ce caractère est automatiquement converti en trait d’union classique via la fonctionnalité « Best-Fit » de Windows, contournant ainsi un mécanisme de vérification de PHP et permettant l’exécution de code malveillant via l’exécutable « php.exe ».

Actuellement, seuls les systèmes d’exploitation Windows localisés en japonais, chinois traditionnel et simplifié ont été confirmés vulnérables. Toutefois, des tentatives d’exploitations ont déjà été repérées dans le monde entier.

Actions Recommandées

La CISA recommande les mesures suivantes avant la date d’échéance du 3 juillet 2024 :

  • Appliquer les mesures d’atténuation fournies par le fournisseur.
  • Cesser d’utiliser le produit si les mesures d’atténuation ne sont pas disponibles.

Les firewalls Stormshield Network Security (SNS) détectent et bloquent par défaut l’exploitation de la CVE-2024-4577 via leur analyse protocolaire HTTP de l’IPS. Cette protection nécessite également le déchiffrement du flux SSL pour les requêtes HTTPS.

Historique des Vulnérabilités de PHP-CGI

PHP-CGI a connu plusieurs vulnérabilités critiques dans le passé, notamment :

  • CVE-2012-1823 : Une vulnérabilité permettant l’exécution de code arbitraire via l’injection de paramètres dans la ligne de commande de PHP-CGI. Cette faille a permis à des attaquants d’exécuter des commandes malveillantes et de compromettre des serveurs.
  • CVE-2019-11043 : Une vulnérabilité de dépassement de tampon dans le fichier env_path_info de PHP-FPM. Cette faille pouvait être exploitée pour exécuter du code arbitraire à distance, affectant les serveurs exécutant PHP sous certaines configurations.
  • CVE-2020-7067 : Une faille dans PHP-FPM permettant à un attaquant de provoquer un déni de service (DoS) via une requête HTTP malformée.
  • CVE-2021-21703 : Une vulnérabilité de type « Path Traversal » dans PHP-FPM, permettant à des attaquants de lire des fichiers sensibles sur le serveur.

Ces exemples soulignent l’importance de maintenir PHP à jour et de surveiller les nouvelles vulnérabilités signalées.

Conclusion

La vulnérabilité CVE-2024-4577 est une menace sérieuse pour les systèmes utilisant PHP-CGI sous Windows, nécessitant une action immédiate. Les administrateurs doivent appliquer les correctifs disponibles et suivre les recommandations de la CISA pour protéger leurs systèmes contre cette faille critique. La vigilance et la proactivité restent essentielles pour sécuriser les environnements web utilisant PHP.

A propos de l'auteur

Retour en haut