Une nouvelle vulnérabilité PHP vient d'être découverte par De Eindbazen ce 03 mai 2012. Cette vulnérabilité affecte les installations PHP CGI (tel que le mod_cgid d'Apache).
Si vous passez un chaîne de caractère en paramètre comme un argument de ligne de commande, tel que -s, -d ou -c, il est possible de voir apparaitre le code source de la page PHP.
Un exemple avec la commande -s qui permet à un attaquant de voir le code source de la page index.php :
http://localhost/index.php?-s
Un attaque de ce type permettrait de récupérer de l'information sensible, notemment en ciblant les fichiers de connexion à la base de données ou les fichiers de configuration et d'exécuter du code directement avec les privilèges adéquats sur le server Apache.
Une solution existe : Passez directement à la version 5.3.12 ou à la version 5.4.2 de PHP !
Une autre solution consiste a utiliser les règles de réécritures d'Apache en ajoutant la règle suivante :
RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC]
RewriteRule ^(.*) $1? [L]