安全测试 - 同源策略

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