“同源策略”的安全性如何?
How secure is the "same origin policy"?
我知道要读取iframe的内容,域、协议和端口必须匹配。
然而,这是否足以保证一个"未知的恶意网站"将无法通过此限制?
基本上我担心一个非常聪明的匿名黑客将能够在他的网站上有一个iframe,指向iframe的url到我的网页,并提取我的网页的内容。
这是您要查找的资源:
https://code.google.com/p/browsersec/wiki/Part2 Same-origin_policy
这是相当详细的,但这是重点。它实际上已经过时几年了,所以你也不会在里面找到IE9。
详细介绍了主要的浏览器/供应商以及他们特定的SOP规则的要求。比如DOM控件,HTTP标头,cookie等等
同源策略只适用于在浏览器中启用了同源策略的用户。如果用户禁用安全功能,浏览器允许跨域访问。
如果你使用帧破坏器,你可以限制攻击,但是当用户删除安全性时,没有办法100%保护你自己。
同源策略是非常安全的,正如我们所知,如果没有它,互联网就会崩溃。你所描述的显然违反了Origin继承规则。为了增加安全性,我会设置x帧选项来防止小鸡劫持。
同样的原始策略在历史上很好地保护了与域名相关的机密,但是XSS和其他注入攻击在某些类型的网站中很普遍,特别是那些混合了不同来源内容的社交网站。HTTPOnly cookie是一种不错的方式来防止一种通过注入的凭证盗窃,但仅适用于相对较新的浏览器。
同源策略不能阻止与域相关的秘密无关的权限滥用。
- 驱动由恶意软件下载,如那些影响纽约时报
- 嗅探历史记录以建立浏览器上的私有信息档案。
- 内网端口扫描,了解本地网络。
- 网络钓鱼重定向到一个虚假的网站版本来窃取凭证。
这些攻击可以组合使用。聪明的攻击者可以使用历史嗅探来检测用户使用您的网站,然后对该用户进行网络钓鱼,以获得访问您网站的凭据。同源策略不会阻止这种情况,尽管一些浏览器已经实现了特定的保护;Mozilla实现了历史嗅探保护。
同源策略旨在保护访问其他站点的用户免受针对您的站点的xsrf式攻击。它不打算以任何方式保护您网站上的内容(例如,iframes或代理将允许您的内容加载到另一个网页)。
例如,如果您正在运行一个银行网站,它将保护访问evil.com的人不会通过AJAX请求自动将所有资金转移到离岸账户,因为请求可能来自不同的域。
因此,重要的是要理解该策略是由浏览器执行的,而不是服务器。如果用户在自己的浏览器中禁用该策略,那么他们只会让自己面临潜在的攻击。但是,它对内容的安全性没有影响。
- 内容安全策略:页面's设置阻止加载资源
- $https请求的安全性
- 导致内容安全策略(CSP)冲突错误的本地jquery.js文件
- java,javascript签名的小程序(文件选择,ftp上传)安全性/套接字异常
- 旋转木马;启用内容安全策略时无法工作
- 同源策略目的|用户数据与基本页面数据|客户端页面抓取
- 什么是谷歌地图'的javascript加载策略
- JavaScript代码中的安全性
- Extjs、Chrome扩展和内容安全策略
- Meteor针对唯一客户端集合的发布/订阅策略
- 使用外部模块继承Jade模板的好策略,在Express上
- 在同一主机上对PHP文件使用XMLHTTP请求的Javascript违反了同源策略
- 内容安全策略指令:;脚本src'self'blob:文件系统:chrome扩展资源:“;获取是否时
- 如何将Sails.js挂钩路由连接到策略
- 禁用Mobile Safari中的同源策略
- 内容安全策略:无法在Chrome扩展中加载Google API
- 移动设备上本地存储(html5)的安全性
- 绕过同源策略,从跨域iframe中获取页面的顶部URL
- 没有同源连接策略的WebSocket的安全性
- “同源策略”的安全性如何?