10 juin 2024 : Vulnérabilité d'injection d'arguments dans PHP-CGI pouvant conduire à l'exécution de code à distance
Partager
11 mars 2025 (mise à jour) : Suite aux nombreux rapports d'exploitation massive, nous avons mené une enquête sur les instances vulnérables récemment exposées. Nos conclusions ont révélé que 19 439 instances utilisent des versions de PHP qui restent potentiellement vulnérables à l'exploit.
Censys Requête de recherche :
services.software: (product: PHP and (version: [8.3.0 to 8.3.7] or version: [8.2.0 to 8.2.19] or version: [8.1.0 to 8.1.28])) and operating_system.product: Windows
Censys Requête ASM :
host.services.software: (product: PHP and (version: [8.3.0 to 8.3.7] or version: [8.2.0 to 8.2.19] or version: [8.1.0 to 8.1.28])) and host.operating_system.product: Windows
- Nom et description du problème : Vulnérabilité d'injection d'argument PHP-CGI. Il s'agit d'une vulnérabilité critique d'injection d'arguments dans PHP qui peut être exploitée pour réaliser une exécution de code à distance (RCE) sur les systèmes affectés.
- Date de publication : 6 juin 2024
- CVE-ID et score CVSS : CVE-2024-4577, score CVSS : 9.8 (Critique)
- CWE : CWE-78 Neutralisation incorrecte des éléments spéciaux utilisés dans une commande OS
- Description de l'actif: La vulnérabilité affecte les installations PHP fonctionnant sur les systèmes d'exploitation Windows avec PHP fonctionnant en mode CGI ou exposant le binaire PHP dans les versions suivantes :
- PHP 8.3 < 8.3.8
- PHP 8.2 < 8.2.20
- PHP 8.1 < 8.1.29
- Impact de la vulnérabilité: Une exploitation réussie de cette vulnérabilité pourrait permettre à un attaquant non authentifié d'exécuter un code arbitraire sur le serveur PHP vulnérable, conduisant à une compromission complète du système.
- Détails de l'exploitation : La vulnérabilité est le résultat d'erreurs dans les conversions d'encodage de caractères, affectant spécifiquement la fonction "Best Fit" sur Windows. Elle permet à un attaquant de contourner les protections précédentes telles que CVE-2012-1823 par le biais de séquences de caractères spécifiques, permettant ainsi des attaques par injection d'arguments. Ce problème n'est actuellement pas dans CISA KEV, bien que ShadowServer ait observé des tentatives d'exploitation sur ses capteurs(https://infosec.exchange/@shadowserver/112575314920464732).
- Disponibilité du correctif : Les versions 8.3.8, 8.2.20, et 8.1.29 ont été publiées par PHP le 6 Juin 2024 pour corriger cette vulnérabilité : https://www.php.net/. La mise à jour vers ces versions est la solution recommandée. Pour les systèmes qui ne peuvent pas être mis à jour immédiatement, des mesures d'atténuation temporaires telles que la modification des règles de réécriture d'Apache ou la désactivation de la fonctionnalité PHP-CGI sont fournies.
- Empreinte mondiale : Censys observe environ 458 800 expositions d'instances PHP potentiellement vulnérables au 9 juin 2024 - bien qu'il faille noter qu'il s 'agit probablement d'une surestimation de l'impact réel de cette vulnérabilité, étant donné que nous ne pouvons pas détecter si le mode CGI est activé. La plupart de ces expositions sont géolocalisées aux États-Unis, suivies par l'Allemagne.

Carte des instances PHP potentiellement vulnérables Censys-Visible le 9 juin 2024 - Notez que cette carte ne tient pas compte de l'activation ou non des CGI (créée avec kepler.gl)
- Détection avec Censys: Les requêtes suivantes peuvent être utilisées pour identifier toutes les instances PHP publiques visibles sur Censys. Veuillez noter que nous ne pouvons pas détecter si PHP est en mode CGI.
- Recherche de l'exposition pour toutes les instances Censys-visible public-facing PHP exécutant des versions potentiellement vulnérables sur Windows : services.software : (product : PHP et (version : [8.3.0 to 8.3.7] ou version : [8.2.0 to 8.2.19] ou version : [8.1.0 to 8.1.28] ou version : [8.0.0 à 8.1.0] ou version : [7.0.0 à 8.0.0] ou version : [5.0.0 à 6.0.0])) et operating_system.product : Windows
- Requête d'exposition ASM pour toutes les instances Censys-visible public-facing PHP exécutant des versions potentiellement vulnérables sur Windows : host.services.software : (product : PHP et (version : [8.3.0 to 8.3.7] ou version : [8.2.0 to 8.2.19] ou version : [8.1.0 to 8.1.28] ou version : [8.0.0 à 8.1.0] ou version : [7.0.0 à 8.0.0] ou version : [5.0.0 à 6.0.0])) et host.operating_system.product : Windows
- Références :
- https://nvd.nist.gov/vuln/detail/CVE-2024-4577
- https://devco.re/blog/2024/06/06/security-alert-cve-2024-4577-php-cgi-argument-injection-vulnerability-en/
- https://github.com/watchtowrlabs/CVE-2024-4577
- https://www.tenable.com/blog/cve-2024-4577-proof-of-concept-available-for-php-cgi-argument-injection-vulnerability