安全响应头检测工具

只需输入网站URL,即可检测HSTS、CSP、X-Frame-Options等主要安全响应头的配置情况,列出缺失或设置不当的项目,并提供改进建议。

使用提示

  • 本工具在服务器端获取目标网站的URL,因此不受浏览器CORS限制,可以检测任意网站的响应头。
  • HSTS的max-age基本上设置得越长越安全,但如果计划调整证书运维方式,建议先用较短的值测试后再应用到生产环境。
  • 搭配姊妹工具CSP验证器(dev.server.csp_validator)使用,可对Content-Security-Policy的语法进行更详细的检测。
  • 本工具采用与robots.txt检测工具相同的「输入URL后由服务器端获取」机制,只要是无需认证的公开页面,任意网站都可作为检测对象。
  • 建议定期检测自己的网站,确认CDN或反向代理的配置变更是否在不知不觉中导致某些安全响应头丢失。

常见问题

功能上提供相近的诊断,但Toolbase的检测工具可以用中文确认诊断结果与改进原因。详细的CSP语法检测则由姊妹工具CSP验证器负责。

可以使用,但由于HSTS仅对HTTPS连接有意义,仅使用HTTP的网站的HSTS项目将始终被诊断为不合格。请优先将整个网站迁移至HTTPS。

目前推荐使用Content-Security-Policy的frame-ancestors指令,但由于部分旧版浏览器不支持该指令,实务上通常建议同时设置两者以形成双重防护。

不会。对您输入的URL发起的请求仅在当次检测中进行,获取到的响应头信息不会被保存在服务器端。

不一定。尤其是Permissions-Policy属于非必需的附加防护层,根据网站性质的不同,其优先级也可能较低。建议优先改进HSTS、CSP、X-Frame-Options等影响较大的项目。
ツールくん

闲话 ― securityheaders.com与点击劫持防护的历史

通过HTTP响应头诊断安全设置的服务中,Scott Helme开发的securityheaders.com长期以来被视为事实标准。由于许多海外服务仅提供英文的诊断结果和改进说明,Toolbase作为该领域的替代方案,自行开发了这款可用中文一并确认诊断结果与改进原因的检测工具。

HSTS(HTTP Strict Transport Security)是IETF于2012年作为RFC 6797标准化的响应头。其诞生背景是2009年被实际演示的一种名为"SSL剥离(SSL Stripping)"的攻击手法:当用户省略输入https://时,浏览器会先以HTTP方式连接一瞬间,攻击者正是利用这一瞬间篡改通信内容。HSTS让浏览器记住"该域名必须始终以HTTPS方式访问",从而在首次访问之后防止降级攻击。

X-Frame-Options最初是微软于2009年为Internet Explorer 8引入的专有扩展响应头,后来被其他浏览器采纳并成为事实标准。当时受到关注的问题是"点击劫持"攻击,即将透明的iframe叠加在看似真实的按钮之上,使用户在不知情的情况下完成点击。如今业界正逐步转向更灵活的Content-Security-Policy中的frame-ancestors指令,但为了兼容不支持该指令的旧版浏览器,同时设置两者仍是目前推荐的做法。

→ 查看全部趣味知识