当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2014-078286

漏洞标题:UCenter存在多处CSRF(可备份数据、删除应用、删除管理员等)

相关厂商:Discuz!

漏洞作者: zph

提交时间:2014-10-13 10:15

修复时间:2015-01-11 10:16

公开时间:2015-01-11 10:16

漏洞类型:CSRF

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2014-10-13: 细节已通知厂商并且等待厂商处理中
2014-10-13: 厂商已经确认,细节仅向厂商公开
2014-10-16: 细节向第三方安全合作伙伴开放
2014-12-07: 细节向核心白帽子及相关领域专家公开
2014-12-17: 细节向普通白帽子公开
2014-12-27: 细节向实习白帽子公开
2015-01-11: 细节向公众公开

简要描述:

UCenter存在多处CSRF(可备份数据、删除应用、删除管理员等)

详细说明:

UCenter有很多处没有判断formhash啊……都可以CSRF……

漏洞证明:

#1 删除应用

1.png


formhash为空,成功提交

2.png


#2 删除管理员

3.png


formhash为空,成功删除

4.png


#3 备份数据

5.png


无formhash,目录名可控

61.png


如果是windows用户,基本上就能拖下来了……

6.png

修复方案:

首先判断formhash
windows短文件名解决策略:
1.首先要想的是改变存储文件名的策略(而不是把所有责任都推给用win主机的用户),毕竟用windows服务器的用户还不占少数。
windows文件名大于8个字符就可以用过短文件名访问到。
因为短文件名取前6个字符加上"~数字",那么为什么不让文件名前六位毫无规律,变复杂呢?

如果前六位是纯数字,那么有1000000(10^6)种可能性,一夜就可以轻松获取你的备份数据库。
如果前六位是字母+纯数字,那么有1544804416(36^6)种可能性,至少要跑1544.804416夜才能获取你的数据库。
如果还有特殊字符呢?
如果加上文件夹名的可能性组合呢?


这样一来,可以跑出来的几率就几乎为0了。
2.既然你知道windows主机只要大于8位就可以通过短文件名访问,那为什么要让文件和文件夹名大于8位呢?
所以可以(只是个人建议)判断下用户是windows主机还是linux,如果是windows主机就不用考虑文件名多长多长了,只要把8位的复杂度搞好,其他都是浮云。

8位数字+字母可能性:2821109907456(34^8)


3.教育用户安全性,设置服务器防盗链,禁止zip等文件下载。

版权声明:转载请注明来源 zph@乌云


漏洞回应

厂商回应:

危害等级:高

漏洞Rank:20

确认时间:2014-10-13 10:49

厂商回复:

感谢您提出此产品的问题,尤其是同时给出了解决方案的建议。希望今后继续合作。

最新状态:

暂无


漏洞评价:

评论

  1. 2014-10-13 12:15 | Coffee ( 普通白帽子 | Rank:144 漏洞数:15 | Corie, a student of RDFZ.)

    同学你不上课吗……

  2. 2014-10-13 13:46 | zph ( 普通白帽子 | Rank:235 漏洞数:43 )

    @Coffee 这个洞十一期间就提交了……刚刚审核

  3. 2014-10-13 15:40 | Haswell ( 普通白帽子 | Rank:167 漏洞数:18 | HorizonSec @ RDFZ)

  4. 2014-10-19 20:00 | zph ( 普通白帽子 | Rank:235 漏洞数:43 )

    @疯狗 @Finger 这个前台隐藏的“高危漏洞”有奖金么?