Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2012-1823 — CVE-2012-1823 - Injection d'arguments CGI PHP - Exécution de code à distance (RCE) | Kitploit
Outils/GitHubGitHub/k3ystr0k3r/cve-2012-1823
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationDéveloppement de Charges Utiles
GitHubk3ystr0k3r/cve-2012-1823

CVE-2012-1823

CVE-2012-1823 - Injection d'arguments CGI PHP - Exécution de code à distance (RCE)

Voir le dépôt
15il y a 3 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2012-1823 - Injection d'arguments CGI PHP - Exécution de code à distance (RCE)

Sévérité : Critique (CVSS 9.8)

CVE : CVE-2012-1823
Publié : 11 mai 2012
Logiciel affecté : PHP fonctionnant en mode CGI (php-cgi)
Type de vulnérabilité : Injection d'arguments / Exécution de code à distance (RCE)
Vecteur d'attaque : Réseau
Authentification requise : Aucune


CVE-2012-1823 est l'une des vulnérabilités d'exécution de code à distance les plus importantes jamais découvertes dans PHP. La vulnérabilité affecte les installations de PHP configurées pour s'exécuter via la Common Gateway Interface (CGI), permettant à un attaquant non authentifié d'exécuter du code PHP arbitraire à distance.

Contrairement aux vulnérabilités qui nécessitent des failles au sein d'une application web, ce problème existe au sein de PHP lui-même lorsqu'il est déployé avec php-cgi. Étant donné que la vulnérabilité existe au niveau de l'interpréteur, toute application PHP hébergée sur un serveur affecté devient vulnérable, indépendamment de la présence de défauts de codage dans l'application.

La vulnérabilité a été largement médiatisée en 2012 en raison de sa simplicité, de sa fiabilité et de son exploitation répandue sur Internet. Même des années après sa divulgation, des scans à l'échelle d'Internet continuent d'identifier des systèmes vulnérables, et la vulnérabilité reste incluse dans les frameworks d'exploitation et les outils de détection défensive. :contentReference[oaicite:0]{index=0}


Résumé technique

La vulnérabilité se trouve dans l'implémentation CGI de PHP (php-cgi).

Normalement, les paramètres de requête HTTP sont destinés à être transmis aux scripts PHP en tant qu'entrée utilisateur.

Cependant, PHP traite incorrectement des chaînes de requête spécialement conçues qui ne contiennent pas de caractère égal (=).

Au lieu de traiter la chaîne de requête uniquement comme des données utilisateur, PHP interprète par erreur certaines parties de celle-ci comme des arguments de ligne de commande passés directement à l'exécutable PHP.

Étant donné que PHP prend en charge de nombreux commutateurs de ligne de commande (tels que -d), un attaquant peut remplacer les options de configuration de l'environnement d'exécution PHP pendant le traitement de la requête.

Cela permet à l'attaquant de :

  • Activer des directives PHP dangereuses
  • Désactiver les restrictions de sécurité
  • Préfixer automatiquement du code PHP contrôlé par l'attaquant
  • Exécuter des commandes PHP arbitraires
  • Obtenir un contrôle total sur le processus du serveur web

La cause racine est une gestion inappropriée de php_getopt() dans :

sapi/cgi/cgi_main.c

Plus précisément, PHP ne parvenait pas à ignorer correctement l'analyse des arguments de ligne de commande lors du traitement de chaînes de requête malveillantes dépourvues de signe égal (=). :contentReference[oaicite:1]{index=1}


Cause racine

L'exécutable CGI accepte des paramètres de ligne de commande.

Par exemple :

php-cgi -d allow_url_include=1

Normalement, ces paramètres devraient provenir uniquement du système d'exploitation.

Au lieu de cela, PHP permettait à tort aux requêtes HTTP d'injecter ces paramètres via des URL spécialement conçues.

L'attaquant pouvait donc manipuler la configuration de l'environnement d'exécution PHP avant que le script cible ne s'exécute.

Cela transformait effectivement une simple requête HTTP en exécution de ligne de commande contre php-cgi.


Versions affectées

Les versions de PHP suivantes sont vulnérables :

VersionStatut
PHP < 5.3.12Vulnérable
PHP 5.4.x < 5.4.2Vulnérable

Seules les installations utilisant le mode CGI (php-cgi) sont concernées.

PHP s'exécutant en tant que :

  • Module Apache (mod_php)
  • PHP-FPM
  • Implémentations FastCGI qui ne sont pas vulnérables à ce défaut d'analyse

n'est généralement pas affecté par CVE-2012-1823 lui-même. :contentReference[oaicite:2]{index=2}


Exigences d'attaque

Un attaquant a uniquement besoin de :

  • Connectivité réseau vers la cible
  • PHP fonctionnant en mode CGI
  • Aucune authentification
  • Aucun compte utilisateur valide
  • Aucune interaction d'une victime

La vulnérabilité est entièrement exploitable à distance.


Processus d'exploitation

L'attaque suit généralement ces étapes :

  1. Découvrir le point de terminaison PHP CGI.
  2. Envoyer une requête HTTP spécialement conçue.
  3. Injecter des arguments de ligne de commande PHP.
  4. Remplacer les paramètres d'exécution de PHP.
  5. Exécuter du code PHP contrôlé par l'attaquant.
  6. Obtenir une exécution de code à distance.

Une fois l'exécution de code obtenue, les attaquants procèdent couramment à :

  • Téléverser des web shells
  • Exécuter des commandes système
  • Lire des fichiers sensibles
  • Extraire des bases de données
  • Installer des logiciels malveillants
  • Établir une persistance
  • Pivoter plus profondément dans les réseaux internes

Impact

Une exploitation réussie entraîne la compromission totale de l'application PHP.

Les conséquences potentielles incluent :

  • Exécution de code à distance
  • Compromission complète du site web
  • Vol de bases de données
  • Divulgation d'identifiants
  • Déploiement de logiciels malveillants
  • Installation de web shells
  • Prise de contrôle du serveur
  • Mouvement latéral
  • Élévation de privilèges (selon la configuration du serveur)

Si PHP s'exécute avec des privilèges élevés, une compromission au niveau du système peut également être possible.


CVSS v3.1

MétriqueValeur
Score de base9.8
SévéritéCritique
Vecteur d'attaqueRéseau
Complexité de l'attaqueFaible
Privilèges requisAucun
Interaction de l'utilisateurAucune
ConfidentialitéÉlevée
IntégritéÉlevée
DisponibilitéÉlevée

Pourquoi cette vulnérabilité était si dangereuse

Plusieurs caractéristiques ont rendu CVE-2012-1823 particulièrement impactant :

  • Exploitable sur HTTP.
  • Aucune authentification requise.
  • Exploitation fiable.
  • Vulnérabilité au niveau de l'interpréteur.
  • Affecte toutes les applications PHP hébergées.
  • Un code d'exploitation public est devenu disponible peu après la divulgation.
  • Prise en charge par les frameworks de tests d'intrusion.
  • Largement utilisée dans des campagnes automatisées de scan d'Internet.

Sa combinaison de facilité d'exploitation et d'impact sévère a conduit à de nombreuses attaques réelles et à son inclusion dans le catalogue Known Exploited Vulnerabilities (KEV) de la CISA. :contentReference[oaicite:4]{index=4}


Détection

Les administrateurs doivent vérifier :

  • La version de PHP
  • Le mode de déploiement
  • La présence de php-cgi
  • La configuration du serveur web

Les indicateurs incluent :

  • Exécutable CGI exposé via HTTP
  • Directives d'exécution PHP inattendues
  • Requêtes suspectes contenant des commutateurs de ligne de commande encodés
  • Requêtes sans '=' dans les chaînes de requête

Les scanners de sécurité tels que Nuclei, Nessus, OpenVAS et les modules Metasploit peuvent détecter les configurations vulnérables. :contentReference[oaicite:5]{index=5}


Atténuation

Les mesures d'atténuation recommandées incluent :

  • Mettre à niveau PHP vers :
    • 5.3.12 ou plus récent
    • 5.4.2 ou plus récent
  • Désactiver le mode CGI lorsque c'est possible.
  • Migrer vers PHP-FPM.
  • Restreindre l'accès aux exécutables php-cgi.
  • Appliquer les correctifs de sécurité fournisseurs.
  • Déployer un pare-feu applicatif web (WAF) capable de bloquer les tentatives malveillantes d'injection d'arguments CGI.

Chronologie

Télécharger l’outil