
YZMCMS v3.7最新版xss漏洞 CVE-2018-8078
YZMCMS v3.7最新版xss漏洞
YZMCMS V3.7 XSS stocké
这个xss存在于v3.7新增的广告管理模块,如图所示:
Cette xss existe dans le nouveau module de gestion des publicités de v3.7, comme illustré sur la figure :

我们可以在YzmCMS-V3.7\application\advertisement\controller\adver.class.php第55-70行中找到广告管理编辑功能的具体代码,如图所示:
On peut trouver le code spécifique de la fonction d'édition de gestion des publicités dans YzmCMS-V3.7\application\advertisement\controller\adver.class.php, lignes 55-70, comme illustré sur la figure :

其中,在第59行调用了一个名为getcode的方法,用POST方法传递了一组参数,我们继续跟进该方法,该方法返回一个$data[‘title’]没有进行任何的过滤,直接作为参数return到$POST_[‘code’]中,如图所示:
Parmi elles, une méthode nommée getcode est appelée à la ligne 59, un jeu de paramètres est passé en utilisant la méthode POST, et nous continuons à suivre la méthode. Cette méthode retourne un $data['title'] sans aucun filtrage directement. Renvoie le paramètre à $POST_['code'] comme illustré :

我们返回edit继续往下跟进,在edit方法中有include包含了一个名为adver_edit的文件如图所示:
Revenons à edit et continuons à suivre. Dans la méthode edit, include inclut un fichier appelé adver_edit comme illustré dans la figure :

我们可以在YzmCMS-V3.7\application\advertisement\view该路径下找到该文件,可以看到至此,yzmcms并未对数据进行任何过滤,直接输出到页面中,如图所示:
On peut trouver le fichier dans le chemin YzmCMS-V3.7\application\advertisement\view. On voit que yzmcms ne filtre aucune donnée et la sort directement vers la page, comme illustré dans la figure suivante :

我们可以在后台管理界面找到该功能,如图所示:
On peut trouver cette fonction dans l'interface de gestion arrière, comme illustré dans la figure :

点击提交后我们可以用burp拦截该数据包,将title改为">,点击发送,如图所示:
Après soumission, nous pouvons utiliser burp pour intercepter le paquet de données et remplacer le titre par ">. Cliquez sur Envoyer, comme illustré :

我们返回广告管理界面,刷新,此时xss弹框可见,如图所示:
Nous revenons à l'interface de gestion des publicités, actualisons, à ce moment le message xss est visible, comme illustré :
