51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 4503|回复: 2
打印 上一主题 下一主题

浏览器cookie安全机制

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-9-6 11:00:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这两天hi群里在讨论关于csrf实现条件的问题,茄子指出了在IE环境下,csrf只是针对session cookie有效,而本地保存的stored cookie在变成当前IE的session cookie前,跨域提交是会被IE阻断的。
通俗来讲就是如果浏览器进程中没有缓存过第三方站点,没访问过,那么使用img/ iframe 标签等跨域访问第三方站点是会被阻断发送cookie的。 这时候的CSRF就会仅仅只是get或者post请求,而不会发送cookie,那么很多需要 验证的提交都会失败。

实际上这里是浏览器的一个cookie安全机制,不光是img 、 iframe等标签,直接 跨域 post或者 get都可能出现这种问题 (使用session cookie和 stored cookie的区别)。
我以前做的一个xss测试, xss成功了3000多次,但 csrf 的一个跨子域的请求却只成功了 100多次, 当时总找不到原因,以为是payload稳定性的问题,现在想来应该就是这个跨域提交被阻断cookie的原因了。
那么根据设想,为了提高csrf的成功率,我们可以在xss后使用一次 window.open(),让用户开个小窗先访问下需要csrf的域,刷出来 一个session cookie,然后就可以csrf了。 不过这个想法还需要测试,而且也不够隐蔽。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-11-9 18:17:04 | 只看该作者
谢谢分享
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2011-11-15 09:53:33 | 只看该作者
说实话,有点不懂,水平有限呀!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-5-1 07:36 , Processed in 0.074145 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表