vulnérabilités

wscwsc Member
Bonsoir, comme indiqué dans un de mes commentaires sur le blog PluXml.org j'ai réalisé un audit personnel de la plateforme PluXml (5.02 et 5.1) ,l'article est désormais disponible ici, je dénombre une dizaine de vulnérabilités plus ou moins graves.

Celle qui mérite d'être corrigé rapidement est la (N°1) une XSS persistante dans les commentaires.
Comme indiqué sur l'article le javascript n'est pas exécuté sur le billet mais dans la section modération.
(elle est critique sur les blogs disposant de la modération sur les commentaires activé).

C'est la seul vulnérabilité (avec CSRF) qui peut directement être utilisé par un visiteur (les autres sont en rapport avec les nouveaux modes des 5.x "rédacteur" etc)

Si un admin lit l'article, je recommande de prendre en considération la section "Ce qui pourrait être utile sur PluXml:" car pas mal de blogs ont des problèmes de configuration (laissant apparaître le MD5) ( les .htaccess ne servent que pour apache)

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour wsc

    Nous allons prendre en compte toutes tes remarques et pas uniquement celle dans "Ce qui pourrait être utile sur PluXml". ;)

    J'attire toutefois ton attention sur le fait que publier ce genre d'informations, qui certes est d'une grande utilité au projet PluXml, peut mettre en danger les sites de nos utilisateurs en divulgant les failles. Il ne s'agit pas ici de cacher la vérité, il y a des failles comme dans beaucoup d'autres cms ou système informatique, nous somme complètement transparent là dessus, mais attention donc sur la façon de communiquer et sur les détails donnés.

    Un grand merci pour ton travail qui est fait avec beaucoup de pertinence et de connaissances. La sécurité informatique est un vrai domaine qui ne doit pas être négliger et nous sommes très attentifs à celle de PluXml, surtout en période "probatoire" dite beta de la version 5.1

    En espérant pouvoir compter sur toi pour mettre en avant d'autres problèmes et valider ceux qui seront corriger.

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • En effet, nous contactez par mail pour ce genre d'info serais le plus approprié.

    Merci pour tes découvertes quoi qu'il en soit ;)
  • StéphaneStéphane Member, Former PluXml Project Manager
    Par rapport au contenu de ton article wsc, pour la version 5.1 beta 1 uniquement:

    1. ok, problème trouvé et résolu
    2., 3., 4., 6. je n'arrive pas à reproduire la faille avec la 5.1 (avec la 5.02 également d'ailleurs)
    5. ok, problème trouvé et résolu
    10. failles connues on travaille dessus pour avoir un système de token au niveau de la validation des forms

    Peux-tu par mail stp me donner les éléments pour reproduire les failles pour les points évoqués.
    Merci d'avance

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • ok, je vais envoyer un "step by step" par mail.
  • StéphaneStéphane Member, Former PluXml Project Manager
    super, merci

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • wscwsc Member
    septembre 2011 modifié
    C'est toujours pas corrigé !

    La n°1 peut même être exploité sans modération activé (directement sur la page).

    En fait le filtrage est insuffisant.

    Et si celle la est exploitable, je pense que les autres le sont aussi.

    Je pensais que c'était bon, j'ai même fait un texte rapide sur mon weblog, et en fait mon test était un poil trop rapide...

    (testé sur la version dispo en téléchargement actuellement (ven. sept. 16 00:42:28 CEST 2011
    ))

    Voici un ex, en python d'une application que je développe (l'ordre est important)
    v_mail=v_mail.replace('&','&')     #XSS
        v_mail=v_mail.replace('"','"')    #XSS
        v_mail=v_mail.replace("'",''')    #XSS
        v_mail=v_mail.replace(">",'>')      #XSS
        v_mail=v_mail.replace("<",'<')      #XSS
        print(v_htmlauth.format('String Format error:'+v_mail))
    
    (alors pour ceux qui connaissent python, il y a cgi.escape qui est lent mais marche bien)

    Bref toujours retirer le & en premier, le quote doit être remplacer par &x27; sinon l'entity ne passe pas sous IE.

    Retirer le
    < >
    
    n'est pas suffisant dans a majorité des cas.

    Voici ma source après injection:
    <a href="http://bou.com/" onmouseover='alert(123)';" title="flo">flo</a> a dit : <a class="num-com"
    
    L'event est pas important c'est juste pour montrer qu'on peut injecter dans le form "Site" dans commentaire (et probablement ailleurs)
  • Ludo_17Ludo_17 Member
    septembre 2011 modifié
    Bonjour,

    je suis d'avis de signaler les problèmes de vulnérabilité (et surtout les exemples !!) par mail plutôt que sur le forum public.

    Ce serait dommage en effet que celui désireux d'exploiter une faille de pluxml en trouve le détail sur le forum de ... pluxml.

    Cordialement,
    Ludo

    ps: d'ailleurs, lire plus haut :
    J'attire toutefois ton attention sur le fait que publier ce genre d'informations, qui certes est d'une grande utilité au projet PluXml, peut mettre en danger les sites de nos utilisateurs en divulgant les failles.
Connectez-vous ou Inscrivez-vous pour répondre.