WordPress Plugin Quizlord 2.0 XSS漏洞复现与分析

前言

WordPress是使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。

WordPress经常爆出漏洞基本都是它的插件存在安全问题。

漏洞复现

首先搭建worepress,我的版本是4.4。然后进入后台下载插件Quizlord,版本是2.0。

下载、安装完成后,需要点击启用插件。

根据exploit-db给出的漏洞详情,找到触发漏洞的位置。

进入后台选择Quizlord插件

此时浏览器的地址栏正好对应poc中的referer内容,现在只要使用火狐插件hackbar并根据POC构造POST请求。

点击execute即可发送该POST请求。

请求成功后,返回是一个空白页。

返回上一页并刷新即可触发该漏洞。

通过复现这个漏洞,我们可以知道它属于后台存储型XSS,且它的危害其实并不是很大。

需要进入后台,因此必须得知道后台用户的账号和密码。

下面我们来简单分析一下漏洞的成因。

漏洞成因分析

WordPress插件源码位置:

进入Quizlord插件目录,找到quizlord.php文件。

下图是quizlord.php文件的内容

根据POC快速定位到函数。发现POST传入的数据并没有被程序过滤就写入了数据库中。

修复方案

利用htmlentities()函数转义html实体。

再次提交POC后,无法触发XSS漏洞。

*本文作者:看不尽的尘埃,转载请注明来自FreeBuf.COM

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181125B1599Q00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券