安全测试 - 同源策略
同源策略 (SOP) 是 Web 应用程序安全模型中的一个重要概念。
什么是同源策略?
根据此策略,它允许脚本在来自同一站点的页面上运行,这些页面可以是以下组合 −
- 域
- 协议
- 端口
示例
此行为背后的原因是安全性。如果您在一个窗口中有 try.com,而在另一个窗口中有 gmail.com,那么您不希望来自 try.com 的脚本访问或修改 gmail.com 的内容或代表您在 gmail 上下文中运行操作。
以下是来自同一来源的网页。如前所述,同源考虑了域/协议/端口。
- http://website.com
- http://website.com/
- http://website.com/my/contact.html
以下是来自不同来源的网页。
- http://www.site.co.uk(另一个域)
- http://site.org(另一个域)
- https://site.com(另一个协议)
- http://site.com:8080(另一个端口)
IE 的同源策略例外
Internet Explorer 对 SOP 有两个主要例外。
第一个与"受信任区域。如果两个域都位于高度信任区域,则同源策略不完全适用。
IE 中的第二个例外与端口有关。IE 不将端口纳入同源策略,因此 http://website.com 和 http://wesite.com:4444 被视为来自同一来源,不应用任何限制。