漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2013-046101
漏洞标题:百度贴吧某功能CSRF漏洞callback参数问题
相关厂商:百度
漏洞作者: q601333824
提交时间:2013-12-16 17:35
修复时间:2013-12-16 19:20
公开时间:2013-12-16 19:20
漏洞类型:CSRF
危害等级:低
自评Rank:1
漏洞状态:漏洞已经通知厂商但是厂商忽略漏洞
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2013-12-16: 细节已通知厂商并且等待厂商处理中
2013-12-16: 厂商已经主动忽略漏洞,细节向公众公开
简要描述:
过了一星期,无聊又去看了上星期的连接,虽然表面上没变化,但测试的时候是修复过的,变得有点鸡肋了
详细说明:
1. 虽然表面上没有变化,但是修复过,知道连接被修复过的原因就是,&callback参数后面&_=的参数上星期测试的时候去掉是成功的,但是这星期去掉就失败了,说明&_=参数被修复过了,只要&_=不存在就会失败,如图.....
2.从上面的图片可以看出,同一时间段截获的GET请求,但是去掉&_=参数,失败,加上&_=参数成功,所以我肯定这里判断了&_=的参数
3.这个&callback为了准确,我打开了北京时间,记录第一次截获GET请求的时间,如图
4.接下来每隔几分钟,我就截图一次,如图
(1)
(2)
(3)
(4)
5.根据上面的图片的观察,我并没有去掉&_=的参数,可还是会失败,经过几次测试,发现失败的原因就是&callback过期了,大概在10分钟之内是有效的
6.有的人会说,就算知道这样,设置csrf连接再加上发给对方的时间,早就超过10分钟了,但是因为旧的不去新的不来啊,于是我又新截获一个请求,提取了新连接的&callback的参数,替换掉原来失效连接的&callback的参数,如图
7.然后再把原来失效的连接再访问一次试试看,结果会发现,失效的连接又能用了,如图
8.这10分钟的具体利用方法,就是,首先确定对方是否处于在线状态,如图回复了,说明他在线,然后再构造CSRF连接,这样10分钟不会浪费了.如图
9.如果确认对方在线,就随便找个图片,收藏,截获请求,反正我只需要&callback参数,图片什么我才不管,如图
10.上面的截图有&callback参数,复制参数,替换掉原来连接失效的callback参数,然后再插入图片,只要对方10分钟之内访问这个连接,照样中了CSRF.如图
11.为了测试效果,小号用火狐浏览器登录,因为担心因为是cook缓存的原因,这两个浏览器的cook好像不通用,这样准点.如图
12.然后当卖萌的中二在10分钟之内访问这个连接了,相册出现我刚才收藏图片,如图
漏洞证明:
修复方案:
先判断了&_=被修复过,再测试&callback的数值存在的问题,鸡肋的地方就是10分钟左右连接失效,因为影响因素很多,比如对方掉线,吃饭去了,或者网吧没钱了等等因素,10分钟就可能没访问到,不一定要一开始就插入连接,可以配合社会工程学,和他聊天,不之不觉把连接插入图片,修复的建议就是&callback参数应该使用一次之后就失效保险点,这样换新的&callback参数也没用
版权声明:转载请注明来源 q601333824@乌云
漏洞回应
厂商回应:
危害等级:无影响厂商忽略
忽略时间:2013-12-16 19:20
厂商回复:
产品线的现有策略是如此,暂不做继续处理。
最新状态:
暂无