了解HTTP安全标头(HTTP Security Headers)
安全标头是指定网络客户端(通常是浏览器)和应用程序服务器之间 HTTP 通信行为和安全相关细节的 HTTP 响应标头,其目的是促进深度防御。一旦设置了这些 HTTP 响应头,就能限制现代浏览器运行到容易预防的漏洞,并增加应用程序的安全层。
每个应用程序中配置以下安全标头:
strict-transport-security: max-age=31536000; includeSubDomains; preload
x-xss-protection: 0
x-frame-options: SAMEORIGIN
x-content-type-options: nosniff
referrer-policy: no-referrer-when-downgrade
permissions-policy: battery=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=()
content-security-policy: frame-ancestors ‘self’; upgrade-insecure-requests; block-all-mixed-content;
strict-transport-security
这个安全标头的全称是HTTP Strict Transport Security(HSTS),它告诉浏览器仅通过HTTPS而不是HTTP来与服务器通信。这可以防止SSL剥离攻击,其中攻击者可能会尝试将用户从安全的HTTPS连接降级到不安全的HTTP连接。通过设置max-age
参数,你可以指定浏览器应该记住网站仅可通过HTTPS访问的时间长度。includeSubDomains
指令确保所有子域也将采用这一策略,而preload
指令意味着你希望你的域名被包含在浏览器的HSTS预加载列表中。
x-xss-protection
这个标头旨在开启特定的浏览器端反射型XSS(跨站脚本)保护机制。然而,由于现代浏览器已经内建了更有效的XSS保护策略,x-xss-protection: 0
实际上是推荐的设置,因为它禁用了浏览器自带的XSS过滤器,以避免其潜在不一致性和漏洞被利用。
x-frame-options
X-Frame-Options
标头可以防止点击劫持攻击,通过指定你的页面是否可以在其他网站的<frame>
、<iframe>
、<embed>
或<object>
中显示。SAMEORIGIN
值指令浏览器只允许来自相同域的页面将当前页面作为frame展示,这样可以防止恶意网站包含你的网页在一个frame中并诱导用户进行不知情的交互。
x-content-type-options
X-Content-Type-Options
标头是为了阻止浏览器去尝试“嗅探”并自动识别错误声明的资源类型,其值为nosniff
。这主要是为了防止基于MIME的攻击,确保在Content-Type
头声明为某种类型时,浏览器也将仅以该方式处理响应的内容。
referrer-policy
Referrer-Policy
标头用来控制HTTP Referer标头的内容,影响浏览器将站点的地址通过Referer标头发送给其他网站的方式。no-referrer-when-downgrade
是默认的行为,意味着当从HTTPS页面导航到HTTP页面时,Referer标头将不会被发送,但在HTTPS到HTTPS的导航中会被发送。
permissions-policy
Permissions-Policy
(以前称为Feature Policy)允许网站作者控制哪些跨域和同域的iframe可以使用哪些特定的Web平台特性。例如,禁用或启用如摄像头、地理位置等功能。在上面的示例中,所有列出的特性都被设置为()
, 意味着这些特性对所有iframe都被禁用。文章来源:https://www.toymoban.com/news/detail-849097.html
content-security-policy
Content-Security-Policy
(CSP) 是一个重要的安全标头,用于减少跨站脚本(XSS)攻击的风险。它可以用来指定哪些动态资源可以被加载和执行。在上面的配置中,frame-ancestors 'self';
指定页面只能被同源域的页面作为frame嵌套,upgrade-insecure-requests;
会将所有通过HTTP加载的资源请求自动升级为HTTPS,而block-all-mixed-content;
阻止页面加载任何混合内容(即同时存在HTTPS和HTTP资源的页面)。文章来源地址https://www.toymoban.com/news/detail-849097.html
参考链接
- MDN Web Docs - HTTP 标头
- Content Security Policy (CSP) 参考文档
- Web.dev - 提高网页安全性的 HTTP 标头
- OWASP - HTTP Strict Transport Security Cheat Sheet
- W3C - Permissions Policy
到了这里,关于了解HTTP安全标头(HTTP Security Headers)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!