1.1. Synopsis
Ce document présente une
vulnérabilité découverte dans le produit CMS « eZ Publish ». Cette vulnérabilité est de type « Cross Site
Scripting » réfléchi et permet d’exécuter du code dans le navigateur d’un
utilisateur lorsque celui-ci est invité à consulter un lien malicieux.
1.2. Impacts
Cette vulnérabilité permet
d’exécuter du code dans le navigateur d’un utilisateur lorsque celui-ci est
invité à consulter un lien malicieux forgé par une personne malveillante. Il
est possible par exemple de récupérer son identifiant de session, ou de
rediriger l’utilisateur piégé vers un site malveillant.
1.3. Versions affectées
« eZ Publish » comporte le module « ezjscore » depuis la
version 4.2.0. Les versions affectées sont donc :
Ainsi que les versions 4.0 et
4.1 d’« eZ Publish » où
le module « ezjscore »
a été manuellement installés.
1.4. Description
Pour que le site publié sous
« eZ Publish »
soit vulnérable, il faut que les fichiers de configuration « module.ini »
et/ou « site.ini » comportent :
Figure 1
- site.ini
Figure 2
- Module.ini
Si ces prérequis sont satisfaits à savoir :
8
Activation du
module « ezjscore » ;
8
Autorisation
d’accès à la méthode « ezjscnode » ;
8
Pas de traitement
des caractères spéciaux par le « template » de présentation des
erreurs type « mauvaise vue »;
Il est alors possible d’injecter
du code javascript dans l’URL au niveau de l’appel d’une action « Ezjscnode » [HELLO|CALL|RUN].
Dans l’exemple qui suit, nous avons utilisé la méthode « ezjsc ::time », activée par défaut pour exploiter la
vulnérabilité.
http://www.monsite.fr/ezjscore/call<XSS>/ezjsc::time
où :
8 <XSS>est le code javascript que l’on veut faire exécuter
par le client.
8 Afin de pouvoir facilement injecter du code
javascript, nous allons utiliser la balise simple :
<IMG SRC=lienonerror= « code javascript »
>où les caractères spéciaux seront
encodes.
|
L’URL suivante permet donc d’afficher
le cookie de l’utilisateur :
1.5. Recommandation
Il est recommandé de nettoyer
les caractères spéciaux lors du traitement du type d’action [HELLO|CALL|RUN] par lemodule « ezjscore ».
1.6. Crédits
Cette vulnérabilité a été
découverte par Yann MICHARD de la société OPPIDA.
Cette information fait suite à l'annonce officielle de l'éditeur.
Cette information fait suite à l'annonce officielle de l'éditeur.
Aucun commentaire:
Enregistrer un commentaire