我正在学习 Web 应用程序的渗透测试。我发现漏洞跨域referrer泄漏非常有趣。谁能告诉我如何在任何 Web 应用程序上检查此漏洞?
如何检查跨域引荐来源网址泄漏?
信息安全
渗透测试
跨域
推荐人
2021-08-15 02:19:45
1个回答
您的浏览器将向来自网页的大多数资源请求添加 HTTP Referer 标头(从某种意义上说,它表示“原始”URL)(例外包括从 HTTPS 网站加载 HTTP 内容和刷新)。
因此,自动化测试的最简单方法是爬取/蜘蛛/猴子您的 Web 应用程序并记录对其他网站的所有请求。然后收集所有的HTTP Referer,看看有没有敏感信息被泄露。
您应该寻找的是这些引用者的 GET 参数中的任何敏感数据(例如会话 ID、帐号等)。这在任何地方都是一种不好的做法,不仅仅是因为它允许跨域引用者泄漏,因为这意味着用户浏览器历史记录和共享 URL 直接与他们的会话/帐户相关联。我听说这种情况被普遍报道用于密码重置(在 edx和Mozilla 上),其中 URL 允许社交媒体插件启动“重置密码”,从而有效地赋予其所有者接管帐户的能力。
只需避免在 GET 字段中包含敏感数据,使用 POST 执行所有操作,并使用良好的一次性令牌来生成指向关键操作的链接。