我一直在阅读具有不同域的 Iframe,然后是父文档,我有点困惑。
据我了解,如果 iframe 与其父文档来自同一域,则父文档可以访问 iframe 的文档。看来我可以通过以下技巧来规避这个问题:
- 我在以下位置设置了一个网络服务器
mydomain.com
- 我提供的原始页面来自
mydomain.com/index.html
- 我在我的网络服务器上设置了代理
mydomain.com/othersite -> site2.com
- Add
<iframe src="mydomain.com/othersite">
到mydomain.com/index
page
这似乎会规避同源策略,而用户却一无所知。我有什么遗漏的吗?
是的,你缺少一些东西。
同源策略保护网站访问的客户端。
如果您设置mydomain.com/othersite
被代理给site2.com
那么浏览器将不会发送用户的 cookiesite2.com
到您的网站mydomain.com
。您将得到的只是您网站设置的 cookiemydomain.com
对于该用户。也就是说,你所攻击的只是你的mydomain.com
会话与site2.com
,而不是用户的会话site2.com
(因为你的反向代理有效地使mydomain.com
此连接的客户端)。
如果有不在要规避同源策略,这必须是客户端的操作,以便浏览器将 cookie 发送到您的域。
我意识到我在这里专注于 cookie,但是 cookie 是同源策略保护的客户端对象示例的一个易于理解的概念。你的方法would允许你操作 DOMsite2.com
但它不会在您的访问者访问的范围内site2.com
,这将是在您自己访问的上下文中site2.com
- 访问者访问的任何内容都无法更改,除非他们足够信任您的网站并登录到代理版本site2.com
直接地。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)