Web安全 - “Referrer Policy“ Security 头值不安全
创作时间:
作者:
@小白创作中心
Web安全 - “Referrer Policy“ Security 头值不安全
引用
CSDN
1.
https://m.blog.csdn.net/yangshangwei/article/details/144816687
概述
Referrer Policy是Web应用程序的一个关键配置,用于定义浏览器在向目标网站发送请求时,如何处理并发送Referer头信息。Referer头可能包含敏感信息(例如:用户名、密码、文件路径、页面URL等),如果没有正确配置Referrer-Policy,这些信息可能被暴露给跨站点(第三方)请求,从而导致安全漏洞。
不正确的配置(例如使用no-referrer-when-downgrade或unsafe-url)可能会导致:
- 敏感信息泄露:例如,包含敏感信息的URL可能会被无意间暴露给第三方网站。
- 跨站点泄漏:如果不适当地泄露了Referer,其他站点可能会获得该敏感数据。
- 攻击者利用信息:例如,攻击者通过分析泄露的Referer信息,可能会获得关于用户身份、账户、甚至敏感资源的线索,从而进行攻击。
风险说明
- 敏感数据泄露:
- 如果Referrer-Policy配置不当,用户在浏览页面时,URL地址中可能会暴露敏感信息(如用户名、密码、身份标识符、路径信息等),这些信息可能会通过Referer头发送到外部站点。
- 特别是在HTTP到HTTPS跳转或跨站点请求时,URL中的敏感数据可以被泄露,进一步加大了信息泄露的风险。
- 用户信任受损:
- 防备心不强的用户在网站上提供敏感信息(如信用卡号、社会保险号等)时,若系统没有正确保护其数据隐私(如通过不安全的Referer配置泄露了敏感信息),可能会引发信任危机。
- 潜在的跨站点攻击:
- 不正确的Referrer-Policy使得敏感信息可以通过Referer头泄漏给不受信任的第三方站点,这可能会为攻击者提供利用跨站点漏洞(如CSRF、XSS等)的机会。
Referrer-Policy头配置选项
"no-referrer-when-downgrade"和"unsafe-url"是泄露第三方网站完整URL的策略,它们可能导致敏感信息泄漏。
1. 不安全的策略
no-referrer-when-downgrade
- 定义:当请求从HTTPS协议降级到HTTP时,不会发送Referer头;但在其他情况下(包括HTTPS到HTTPS,HTTP到HTTP),仍会发送完整的Referer头。
- 风险:
- 当从HTTPS页面跳转到HTTP页面时,浏览器不会发送Referer头,以防泄露信息。
- 然而,在HTTPS到HTTPS或HTTP到HTTP的情况下,Referer头会包含完整的URL(包括路径和查询参数),这可能会泄露敏感数据。
- 该策略不能完全保护隐私,尤其是跨站点的情况。
unsafe-url
- 定义:始终发送完整的Referer头,包括URL的协议、主机、路径和查询参数,无论目标页面的协议如何。
- 风险:
- 这种配置会导致Referer头泄漏所有请求的详细信息,包括路径和查询字符串。
- 即使请求从HTTPS页面跳转到HTTP页面,浏览器仍会发送完整的URL,这可能会导致敏感信息(如会话ID、用户数据等)泄漏。
- 强烈不建议使用该策略,尤其在涉及敏感数据的站点上。
2. 安全的策略
与上述不安全的策略相比,以下是一些更为安全的Referrer-Policy配置,能够有效防止敏感信息泄漏。
no-referrer
- 定义:完全禁止浏览器发送Referer头。
- 优点:
- 提供最高级别的隐私保护,不会泄露任何来源信息。
- 防止所有跨站点的Referer泄露。
- 缺点:
- 对某些需要依赖Referer信息的功能(例如,分析或日志记录)会有影响。
- 如果网站内部的某些操作依赖于Referer,则需要考虑是否适合使用该策略。
origin
- 定义:仅发送请求的源(域名),而不包含路径和查询参数。
- 例如,Referer: https://example.com/而不是https://example.com/path?query=param。
- 优点:
- 只泄露源(域名),不泄露路径或查询字符串,适合保护用户隐私。
- 缺点:
- 适用于需要保护隐私的跨站点请求,但在某些情况下,源信息可能不足以满足需要跟踪源的应用程序需求。
origin-when-cross-origin
- 定义:当请求是同源请求时,发送完整的Referer头(包括路径和查询参数);当请求是跨站点请求时,仅发送源(域名)。
- 优点:
- 为同源请求提供完全的Referer信息,而对于跨站点请求则仅泄露源信息,最大限度地减少跨站点泄露敏感信息的风险。
- 推荐用于保护隐私并确保同源请求的正常运作。
- 缺点:
- 对跨站点请求仍然可能会限制某些分析或跟踪功能,但在隐私和安全性方面提供了更好的平衡。
same-origin
- 定义:只有在请求目标与当前页面同源时,才会发送Referer头。跨站点请求将不发送Referer。
- 优点:
- 最大限度地保护跨站点隐私,完全防止了跨站点泄漏Referer信息。
- 缺点:
- 对于跨站点请求(如API调用),无法发送Referer信息,这可能影响一些站点功能(如跨站点资源共享等)。
strict-origin
- 定义:只有在请求的目标是安全站点(即HTTPS)并且协议一致时,才发送Referer头。对跨站点请求的保护比origin更严格。
- 优点:
- 对跨站点请求有更强的隐私保护,确保只有同协议的请求会发送源信息。
- 缺点:
- 如果目标站点使用的是HTTP协议,甚至源信息也不会被发送。
strict-origin-when-cross-origin
- 定义:如果请求是同源请求,则发送完整的Referer头;如果请求是跨站点请求,则仅发送源(域名);且目标站点需要使用HTTPS协议时才会发送Referer。
- 优点:
- 这是目前最为推荐的策略,在保证跨站点隐私的同时,允许同源请求发送完整的Referer信息。即使是跨站点请求,也只会泄露源信息,并且只有目标是安全的HTTPS网站时,才会发送Referer信息。
- 提供了对隐私的最大保护,同时不会干扰正常功能。
- 缺点:
- 对于不使用HTTPS的目标站点,Referer信息将不被发送。
推荐配置
对于大多数站点,strict-origin-when-cross-origin是最佳选择,因为它在保障隐私和安全的同时,不会对大多数跨站点请求产生负面影响。
Nginx配置示例
http {
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
}
- 不安全的策略(如no-referrer-when-downgrade和unsafe-url)会泄漏敏感信息,尤其是在跨站点请求时。
- 推荐的策略(如strict-origin-when-cross-origin、origin-when-cross-origin)能够在保持功能正常的同时,最大限度地保护用户隐私。
- 配置Referrer-Policy头是Web安全的重要措施,确保适当配置可以降低泄漏敏感数据的风险。
在Nginx中配置Referrer-Policy
可以通过在Nginx配置中设置适当的Referrer-Policy来避免泄漏敏感信息。
配置示例
- 全局设置:
http {
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
}
- 虚拟主机设置:
server {
listen 80;
server_name example.com;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
# 其他配置...
}
- 特定路径设置:
server {
listen 80;
server_name example.com;
location /some-path/ {
add_header Referrer-Policy "no-referrer" always;
}
# 其他配置...
}
总结
- Referrer-Policy头是防止敏感数据泄露的有效工具。合理配置此头可以保护用户隐私,防止跨站点泄露敏感信息。
- 避免使用不安全的策略,如no-referrer-when-downgrade和unsafe-url,并优选使用strict-origin-when-cross-origin或更严格的策略。
- 定期检查并更新你的Web应用配置,确保所有安全头都已正确设置,以减少潜在的安全风险。
热门推荐
新市古镇最美拍摄点推荐:状元桥&太平桥
新市古镇:千年水乡里的古刹与美食
李白的月亮,照亮唐朝的浪漫
甲泼尼龙治疗抗核抗体阳性疾病:疗效显著需遵医嘱
11.27%健康人抗核抗体阳性,专家详解原因与应对
试管婴儿后遇抗核抗体阳性,专家详解饮食管理方案
《动物庄园》中的莫丽:自私与虚荣的象征
简单快速的新冠检测:胶体金法抗体检测原理
脑出血康复期,如何走出心理阴霾?
脑出血康复全攻略:从方法到注意事项
脑出血患者办理残疾证全攻略:从病情稳定到领取证件
备孕期间感冒了怎么办?酚麻美敏片等常见感冒药使用指南
酚麻美敏片用药后影响备孕吗
酚麻美敏片用药后影响备孕吗
画蛇添足:一个关于技艺与克制的古代寓言
锂盐设备智能化管理:故障率降30%,效率提15%
农村五保户:无劳动能力者可享吃穿医住葬保障
保吃保穿保医疗:农村五保户制度详解
上下杭文化休闲旅游景区
时空区梦幻西游手游鬼么:揭秘抓鬼背后的奥秘与收益
专家推荐:呼吸训练缓解气短,这些方法最有效
八珍汤配膻中穴,中医调理胸闷气短有妙招
在线问诊平台:解决气短烦恼
小心木马病毒!微信安全中心紧急发布防护措施
安全员必知:施工现场安全管理五大体系与八大要点
宋伊人新剧开机,古装甜宠剧引爆期待
高通骁龙8至尊版出货量超天玑9400近两倍,AI性能成制胜关键
太原市中医院特色疗法走红:葫芦灸和火龙罐综合灸受追捧
ARCA发现史上最强中微子,能量高达数十PeV
江门中微子实验:揭秘宇宙奥秘的“中国慧眼”