网络安全
当前位置: 首页 >> 网络安全 >> 安全事件 >> 正文
Discuz!X漏洞防范
作者:   来源:   日期:2017年12月12日 09:42

一、      事件背景

DiscuzX是康盛公司(Comsenz)推出的一个以社区为基础的专业建站平台,它主要采用PHPMySQL等其他多种数据库构建而成,该平台让论坛(BBS)、社交网络(SNS)、门户(Portal)、群组(Group)、开放平台(Open Platform)应用充分融合于一体。

1月初,互联网上披露了DiscuzX存在存储型XSS漏洞,攻击者可以利用此漏洞盗取各类用户帐号等,后果较为严重。

二、      漏洞复现

首先准备本地服务器phpstudy环境,选择Discuz! X3.3版本作为测试。

用管理员账户登录到后台,开启四方格功能。

开启之后,回到论坛首页,即可看到如下内容:

注册一个普通用户test,然后发表新帖。

在帖子的标题处插入XSS语句: <img src=1 onerror=alert(/test/)>即可。

然后在首页鼠标放在帖子准备点击刚才发表的帖子时,触发onmouseover事件,执行插入的代码。

三、      漏洞分析及危害

1)  漏洞分析

DiscuzX首页四格的功能默认安装是不开启的,但是由于其作用可以让进入网站的读者快速找到网站的最新发布最热门最精华的内容及图片,所以很多网站管理员会选择手动开启此功能。

通过查看源码,当触发onmouseover事件时,调用的showTip函数最终调用到了_showTip函数。

跟进到_showTip函数中,可以发现使用getAtrribute取了tip属性值,然后又放入innerHTML。如下图红框所示:

并且getAtrribute函数获取属性值时会自动解码实体编码后的值,因此才会出现如下图情况:

2)  漏洞危害

恶意攻击者可以利用此漏洞盗取各类用户帐号,如机器登录帐号、用户帐号、管理员帐号。并且还能强制服务器发送电子邮件、进行网站挂马、控制受害者机器向其它网站发起攻击等,后果较为严重。

四、      数据分析

由于DiscuzX主要客户都分布在国内,中国境内使用DiscuzX的论坛网站数量约为1.9万台左右。其中排名前五的省份或地区分别为:浙江省、香港特别行政区、北京市、广东省、上海市。

1)  世界分布

下图为中国范围内使用DiscuzX的论坛的分布情况:

1、世界分布图

下图为中国范围内使用DiscuzX的论坛数量排名前十的省份或地区:

2、世界排名前十

下图为国内使用DiscuzX论坛的运营商排名:

3、国内运营商排名前十

五、      防范建议

1)  漏洞涉及版本

DiscuzX <=3.3

2)  修复建议

1、如果网站有开启四方格功能,建议临时关闭此功能。

2Discuz官方已经发布最新的Discuz! X3.4版本,并修复了此漏洞,请用户及时更新到最新版本。相关链接如下:

http://www.discuz.net/forum.php

上一条:phpMyAdmin CSRF漏洞数据分析 下一条:数据看安全

关闭

办公地点:第四教学楼东侧信息技术服务中心      办公时间:周一至周五 8:00-11:30   14:30-18:00(春夏)   14:00-17:30(秋冬)
*办理个人业务请携带本人身份证件
学校地址:山东省烟台市莱山区滨海中路191号
版权所有:山东工商学院信息技术服务中心