Vigil@nce : phpPgAdmin, lecture de fichier
décembre 2008 par Vigil@nce
SYNTHÈSE
Un attaquant peut employer le paramètre "_language" de phpPgAdmin
afin de lire un fichier de la machine.
Gravité : 2/4
Conséquences : lecture de données
Provenance : client intranet
Moyen d’attaque : 1 attaque
Compétence de l’attaquant : technicien (2/4)
Confiance : confirmé par l’éditeur (5/5)
Diffusion de la configuration vulnérable : élevée (3/3)
Date création : 22/12/2008
PRODUITS CONCERNÉS
– Fedora
– Unix - plateforme
DESCRIPTION
Le serveur phpPgAdmin active un site web pour administrer une base
données PostgreSQL.
La variable $_language de phpPgAdmin permet de sélectionner la
langue de l’interface. Le fichier contenant les messages traduits
est alors inclus via :
include("./lang/recoded/$_language.php") ;
Cette variable peut être définie via un paramètre de l’url si
register_globals est actif.
Si $_language contient "../", le fichier inclus peut être situé
hors de la racine de phpPgAdmin. De plus, l’utilisation du
caractère nul permet d’ouvrir des fichiers ne portant pas
l’extension ".php".
Un attaquant peut donc employer le paramètre "_language" de
phpPgAdmin afin de lire un fichier de la machine, avec les droits
du site web.
CARACTÉRISTIQUES
Références : BID-32670, CVE-2008-5587, FEDORA-2008-11564,
FEDORA-2008-11576, FEDORA-2008-11602, VIGILANCE-VUL-8351