Faille dans le guestbook TazBook ******************************** Produit: ******** TazBook http://www.tazdany.com Versions : ********** 1.2 et moins Date : ****** 14/02/02 Probleme : ********** - Accès aux commandes admin. Developpement : *************** --------------------------------------------------------------------------------------------- switch ($op){ // si la valeur de $op case "write": // est write menu(); write(); // on lance la partie read("all"); // on affiche les messages break; case "admin": // si la valeur de $op est admin : if (!$pwd or $pwd != $admin_pass){ // si il n'y a pas de mot de passe ou que le mot de passe // n'est pas égal au pass admin formpassword(); // on demande la pass } else { // sinon $logged = "yes"; // $logged vaut yes menu(); read("all"); } break; case "edit": // si la valeur de $op est edit if ($logged = "yes"){ // on vérifie que c'est l'admin loggé menu(); edit($id); // si c'est la cas, on affiche l'edition du message numero $id } else { menu(); read("all"); // sinon on affiche les messages. } break; --------------------------------------------------------------------------------------------- Le code de guestbook.php est bien sûr plus détaillé. J'ai pris la première partie evidemment pour montrer où se trouve la faille : dans l'authentification de l'admin, et la deuxieme partie, case "edit", parce qu'il fallait un exemple d'option normalement reservée à l'admin. Bon, il suffira donc d'une url comme : http://www.host.com/guestbook.php?logged=yes&op=edit&id=1 pour editer le message numéro 1 du guestbook. En faisant un petit test avec mon ami H3zEN, j'ai vu que la faille est encore plus grande que prévu (pourtant c'etait deja pas mal...), même pas besoin du logged=yes pour acceder à la commande admin "edit". Le créateur a été avertit. Patch : ******* / Greetz : ******** H3zEN Credits : ********* frog-m@n (leseulfrog@hotmail.com)