漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-061861
漏洞标题:PageAdmin可绕过验证伪造任意用户身份登录(前台、后台)
相关厂商:pageadmin.net
漏洞作者: wefgod
提交时间:2014-06-30 14:20
修复时间:2014-09-28 14:22
公开时间:2014-09-28 14:22
漏洞类型:非授权访问/权限绕过
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-06-30: 细节已通知厂商并且等待厂商处理中
2014-07-01: 厂商已经确认,细节仅向厂商公开
2014-07-04: 细节向第三方安全合作伙伴开放
2014-08-25: 细节向核心白帽子及相关领域专家公开
2014-09-04: 细节向普通白帽子公开
2014-09-14: 细节向实习白帽子公开
2014-09-28: 细节向公众公开
简要描述:
原来是有一个验证的,但是不小心就想到办法绕过去了
详细说明:
先大概说一下流程:
前台:
初步身份伪造-->获取某项信息-->程序计算-->伪造最终cookie登录成功
后台(特别注意!):
先成功伪造身份登录前台-->打开后台页面(注意让他重新获取cookie)-->程序计算-->利用伪造的cookie打开index
后台的必须按上面的流程走,没有登录前台的话会导致后台校验失败,有太多多余的cookie的话会导致后台登录后报错!
前台
第一步,初步身份伪造
问题代码:
直接从Member里面获取UID的值。
http://demo.pageadmin.net/e/member/index.aspx?s=1&type=mem_idx
cookie添加
Member=UID=2&Valicate=f75efb546591145c2ab152c1194ad10613df3
UID=2啥意思就不解释了,admin默认的uid是2
添加cookie之后访问上面的链接,即可:
测试另外一个网站:
本地测试:
但是在执行部分操作的时候是提示Valicate是无效的,如下图
再说下这个验证的代码:
b是你cookie中的valicate,U8VWxh9WtC是从数据库中读取出来的lastdate(最后登录时间),如下图
好吧,看到这里是不是觉得无解了?无法绕过?最后登录时间怎么搞啊?哈哈
第二步,获取“某项”信息
简单,仔细看登录后的页面:
014-5-22 10:17:18
明白没?虽然我们做不了别的操作,但是关键信息已经获取到了!
第三步,该上程序了!
关键的校验md5生成代码:
呵呵了吗?
用伪造好的东西(eee开头那串),上!
最终步骤!
呵呵了!做任何操作都没有限制!
漏洞证明:
后台
在cookie中直接添加以下字段:
tongji=1; referer=; Master=UID=2&Valicate=d7133f6117b1ccd18ae511e1971851867912516a; SiteId=1
功访问后台!
试试官网:
但做其它操作会还是会提示:
原理和上面是一样的时间也是一样的具体不多说了,简单放几行代码
上神器!
tongji=1; referer=; Master=UID=2&Valicate= eee0fe3b811371209c14611a157133188fee314a; SiteId=1
另外一个网站:
官网demo:
后台拿shell请看之前发布的漏洞
修复方案:
这套程序太经典了,居然可以发现那么多有代表性的漏洞……身份验证应该严格一点啊,这也太松散了
版权声明:转载请注明来源 wefgod@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:10
确认时间:2014-07-01 11:05
厂商回复:
感谢,我司会尽快修复
最新状态:
2014-05-27:由CNVD统一汇总后联系厂商处置。
2014-09-29:已经确定,国庆后将发布最版本修复所有问题。
2014-10-10:PageAdmin 2014-10-10版已经修复次问题,谢谢白帽子