安全测试 - 同源策略



同源策略 (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 被认为来自同一源,并且不应用任何限制。

广告