ALERTE CERTFR - 2019 - ALE - 014
Publié le 29 octobre 2019 à 18h14 - Mis à jour le 31 janvier 2025 à 11h55
Objet
Vulnérabilité dans PHP
Référence
CERTFR-2019-ALE-014
Risque(s)
- Exécution de code arbitraire à distance
Systèmes affectés
- PHP versions 7.3.x antérieures à 7.3.11
- PHP versions 7.2.x antérieures à 7.2.24
- PHP versions 7.1.x antérieures à 7.1.33
Résumé
Le CERT-FR a publié un avis concernant la CVE-2019-11043 qui affecte PHP et permet l'exécution de code arbitraire à distance.
Un code d'exploitation est maintenant disponible sur internet, facilitant l'utilisation de cette vulnérabilité.
Ce code d'exploitation nécessite une configuration communément recommandée de nginx et php-fpm utilisant fastcgi_split_path_info.
Voici un exemple de configuration vulnérable :
location ~ [^/]\.php(/|$) {
...
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass php:9000;
...
}Il est possible que d'autres chemins d'exploitation non connus à ce jour permettent d'abuser de la vulnérabilité.
Le CERT-FR recommande fortement la mise à jour de php vers une version non vulnérable, et ce dans les plus brefs délais si votre configuration nginx utilise fastcgi_split_path_info.
Les versions de PHP antérieures à 7.1 peuvent être également affectées, et ne bénéficieront pas de mise à jour. Il est primordial d'utiliser une version supportée par l'éditeur.
Contournement provisoire
Il semble possible de se prémunir contre ce code d'exploitation en vérifiant si le fichier existe ou non (par exemple, avec try_files). Des détails sont disponibles dans l'article de Tenable (cf. section Documentation).
Solution
Le CERT-FR recommande de mettre à jour PHP vers une version non vulnérable sans attendre.
Documentation
- Avis du CertFR du 24 octobre 2019 : https://www.cert.ssi.gouv.fr/avis/CERTFR-2019-AVI-534/
- Bulletin de sécurité PHP 7.3.11 du 24 octobre 2019 : https://www.php.net/ChangeLog-7.php#7.3.11
- Bulletin de sécurité PHP 7.2.24 du 24 octobre 2019 : https://www.php.net/ChangeLog-7.php#7.2.24
- Bulletin de sécurité PHP 7.1.33 du 24 octobre 2019 : https://www.php.net/ChangeLog-7.php#7.1.33
- Référence CVE CVE-2019-11043 : http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-11043
- Article de la société Tenable du 24 octobre 2019 : https://www.tenable.com/blog/cve-2019-11043-vulnerability-in-php-fpm-could-lead-to-remote-code-execution-on-nginx