Alerte de sécurité
Bonjour,
Aujourd'hui sur mon blog IT Wars , Thüzhen m'a laissé le message suivant : Je suis désolé de déranger, mais une faille récente a été dévoilée. Je préfère la tester et si elle fonctionne, vous laisser la corriger. bis
Lorsque je clique sur le lien du commentaire, une belle fenêtre javascript apparaît alors, puis redirige vers la page du commentaire !!! Le hack est très simple, il a placé dans l'adresse du site un script javascript. Voilà le contenu du commentaire :
<?xml version='1.0' encoding='UTF-8'?>
<comment>
<author><![CDATA[Thüzhen]]></author>
<type>normal</type>
<ip>x.y.z.w</ip>
<mail><![CDATA[xxxxx@yyy.com]]></mail>
<site><![CDATA[http://www.google.fr"></a><script>alert(1);</script>]]></site>
<content><![CDATA[Je suis désolé de déranger, mais une faille récente a été dévoilée. Je préfère la tester et si elle fonctionne, vous laisser la corriger. bis]]></content>
</comment>
Cette faille ouvre de nombreuses possibilités !!! Je vais regarder de mon côté pour proposer un correctif...
Cordialement.
Aujourd'hui sur mon blog IT Wars , Thüzhen m'a laissé le message suivant : Je suis désolé de déranger, mais une faille récente a été dévoilée. Je préfère la tester et si elle fonctionne, vous laisser la corriger. bis
Lorsque je clique sur le lien du commentaire, une belle fenêtre javascript apparaît alors, puis redirige vers la page du commentaire !!! Le hack est très simple, il a placé dans l'adresse du site un script javascript. Voilà le contenu du commentaire :
<?xml version='1.0' encoding='UTF-8'?>
<comment>
<author><![CDATA[Thüzhen]]></author>
<type>normal</type>
<ip>x.y.z.w</ip>
<mail><![CDATA[xxxxx@yyy.com]]></mail>
<site><![CDATA[http://www.google.fr"></a><script>alert(1);</script>]]></site>
<content><![CDATA[Je suis désolé de déranger, mais une faille récente a été dévoilée. Je préfère la tester et si elle fonctionne, vous laisser la corriger. bis]]></content>
</comment>
Cette faille ouvre de nombreuses possibilités !!! Je vais regarder de mon côté pour proposer un correctif...
Cordialement.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Dans le fichier class.plx.motor.php à la ligne 710 ajouter la ligne en rouge :
# On verifie le site
$site = (plxUtils::checkSite(trim($content)))?trim($content):'';
$site = strip_tags($site);
# On recupere l'adresse IP du posteur
$ip = plxUtils::getIp();
D'une manière générale, je ne comprends pas que notre belle équipe Pluxml, ne strip pas tous les champs de saisie !!!???
Cordialement
Je doute que l'utilisation du strip_tags soit la solution, car l'injection de javascript doit "normalement" être impossible grâce à la fonction plxUtils::checkSite qui vérifie si ce qui est saisi dans le champ site est bien une url. L'attaque est peut etre plus subtile...
Je viens de tester avec: http://www.google.fr"></a><script>alert(1);</script>
Il n'y pas de faille XSS, le filtre est bien appliqué.
Quelle version de PluXml utilises-tu ?
En tout cas merci pour le retour. On va quand meme vérifier tout ça
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)
Dans class.plx.utils.php
Changes en
- Powered by Pluxml 5.0.2
Essaies d'applique le patch que j'ai donné précédemment, ça devrait corriger le problèmes. (D'ailleurs, quelqu'un à retester depuis si ça corrigeait bien ? En tout cas pour la prochaine version c'est ok).
J'ai fait le test c'est ok avec ce correctif
Thx
Consultant PluXml
Ancien responsable et développeur de PluXml (2010 à 2018)