漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-060316
漏洞标题:SAE用户越权操作随机用户代码仓库
相关厂商:新浪
漏洞作者: 路人甲
提交时间:2014-05-11 18:16
修复时间:2014-06-25 18:16
公开时间:2014-06-25 18:16
漏洞类型:未授权访问/权限绕过
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-05-11: 细节已通知厂商并且等待厂商处理中
2014-05-12: 厂商已经确认,细节仅向厂商公开
2014-05-22: 细节向核心白帽子及相关领域专家公开
2014-06-01: 细节向普通白帽子公开
2014-06-11: 细节向实习白帽子公开
2014-06-25: 细节向公众公开
简要描述:
SAE用户越权操作随机用户代码仓库,可导致平台大量随机用户的某版本应用无法使用。
详细说明:
诶,问题描述不敢多写啊,怕看了标题和描述就猜到了,影响平台用户使用呀~嘿嘿。
漏洞证明:
进入SAE控制面板
在代码管理中,创建一个新版本,并获取其VerID
为了不对正常用户的使用造成影响,我们这里使用一个用户A创建一个代码仓库,其版本ID为977091,该ID将作为将要被其他用户删除的VerID
Hacking Start…….(^_^)
使用一个新的用户身份登录系统,并随机找到一个应用,点击删除操作,并截取数据包,修改VerID为随机的版本库ID(此处为不影响正常用户,修改为用户A的版本ID 977091)
App_id=my***,为用户B的应用,VerId为用户A刚刚创建的应用。提交该请求之后提示【删除成功】,由于bootstrap的那个窗口很快就关闭了,没来得及截图删除成功的提示窗口。
此时再到用户A得到代码管理位置看代码仓库的版本,发现已经被删除了。
此时再查看用户管理记录,发现【管理记录】中有删除这个应用版本的用户的安全邮箱,但是这个用户真真的不是应用管理员啊!!!!!呜呜~~
--------------------------------------------------割----------------------------------------------
然后如果在删除应用的地方,遍历VerId,应该可以将SAE上所有用户的版本库删掉吧?!!这个没试,危害性太大,理论上是可行的。
--------------------------------------------------割----------------------------------------------
修复方案:
对用户权限的校验不应该只校验app_id,如果是全局id比如VerId也应该做校验;或者前后台对ID进行转换对应,比如前台app_id和用户自己的版本号user_ver_id对应数据库全局用户的VerId.
[不知道说得清不清楚,我不是做开发的~~~~ ^_^]
SAE是国内起步最早的App Engine,是率先支持PHP Runtime的云计算提供商,相对于国内其他App Engine,SAE拥有更大的优势和更好的稳定性,希望越做越好!
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:20
确认时间:2014-05-12 10:03
厂商回复:
感谢关注新浪安全,目前漏洞已经修复上线
最新状态:
暂无