关于 analyzing-security-headers
用于依据 OWASP 和浏览器安全建议检查 Web 应用的 HTTP 与 HTTPS 响应头。生成安全评级、Cookie 评估、协议对比和修复示例。
主要功能
- 01检查关键及建议的响应头
- 02标记技术与版本信息泄露
- 03评估 Cookie 安全属性
- 04为响应头安全状况评级
- 05提供 Nginx、Apache 和 Cloudflare 修复示例
- 06对比 HTTP 与 HTTPS 响应
适用场景
- 01审计网站安全响应头
- 02比较 HTTP 与 HTTPS 响应头
- 03确定 Cookie 和响应头问题的修复优先级
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jeremylongshore/ tons-of-skills-marketplace --skill analyzing-security-headers安装后在 Claude Code 中输入/analyzing-security-headers确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/README.mdreferences/errors.mdexamples.mdimplementation.mdREADME.mdscripts/analyze_headers.pygenerate_report.pyREADME.md详细介绍
分析安全标头
概述
根据 OWASP Secure Headers Project 的建议和浏览器安全基线,评估 Web 应用的 HTTP 响应标头。识别 HTTP 和 HTTPS 响应中缺失、配置错误或泄露信息的标头。
前提条件
- 可通过网络访问的目标 URL 或域名
- 已获准向目标域名发送 HTTP 请求
- 网络连接支持 HTTP 和 HTTPS 协议
- 可选:对
${CLAUDE_SKILL_DIR}/security-reports/具有写入权限,以保存结果
说明
- 接受目标域名。如果只提供域名,则默认使用
https://。如需批量分析,则接受以换行符分隔的列表。 - 使用
WebFetch获取 HTTP 和 HTTPS 端点的响应标头。记录完整的重定向链和最终目标 URL。 - 评估关键标头——标记任何缺失或配置错误的标头:
Strict-Transport-Security:要求max-age>=31536000、includeSubDomains,并符合预加载条件Content-Security-Policy:检查是否存在unsafe-inline、unsafe-eval、范围过宽的default-src,以及是否缺少frame-ancestorsX-Frame-Options:要求为DENY或SAMEORIGINX-Content-Type-Options:要求为nosniffPermissions-Policy:验证对 camera、microphone、geolocation 的限制
- 评估重要标头——报告状态并提供建议:
Referrer-Policy:建议使用strict-origin-when-cross-origin或no-referrerCross-Origin-Embedder-Policy(COEP)、Cross-Origin-Opener-Policy(COOP)、Cross-Origin-Resource-Policy(CORP)
- 检查信息泄露——标记
Server、X-Powered-By、X-AspNet-Version,以及任何泄露技术栈或版本号的标头。 - 检查
Set-Cookie标头中的 Cookie 属性:验证Secure、HttpOnly、SameSite=Lax|Strict和__Host-/__Secure-前缀的使用情况。 - 计算安全等级:A+(95-100)、A(85-94)、B(75-84)、C(65-74)、D(50-64)、F(<50);根据各标头的加权存在情况和正确性评分。
- 为每个标头生成修复指引,并提供 Nginx、Apache 和 Cloudflare 的配置示例。
请参阅 references/implementation.md,了解五阶段实施工作流。
输出
- 标头分析报告:总体等级、各标头状态(已设置/缺失/配置错误)和风险影响
- 修复清单:按优先级排列的修复项和服务器配置片段
- Cookie 安全评估:每个
Set-Cookie标头的属性合规情况 - 对比表:HTTP 与 HTTPS 标头差异并列展示
错误处理
| 错误 | 原因 | 解决方案 |
|---|---|---|
| 无法连接到域名 | DNS 解析失败、防火墙拦截或域名不可用 | 验证域名拼写和 DNS 记录;测试其他协议 |
| SSL 证书验证失败 | 证书已过期、自签名或不匹配 | 在报告中注明 TLS 问题;这表明 HSTS 未得到正确强制执行 |
| 重定向次数过多 | HTTP 与 HTTPS 之间出现重定向循环 | 报告重定向链,并分析每一跳的标头 |
| HTTP 429 请求过多 | 目标服务实施了速率限制 | 实施退避策略;将域名加入队列,延迟后重新分析 |
| HTTP 和 HTTPS 标头不同 | 服务器配置不一致 | 报告两组标头;突出显示关键差异并标记 HSTS 缺失 |
示例
- “分析
https://tonsofskills.com的安全标头,并说明任何 CSP 或 HSTS 问题。” - “检查
example.com在 HTTP 和 HTTPS 下的标头,并提供 Nginx 修复配置。” - “批量分析五个预发布域名的标头,并按安全等级排序。”
资源
- OWASP 安全标头项目:https://owasp.org/www-project-secure-headers/
- MDN 安全标头指南:https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers#security
- 安全标头扫描器:https://securityheaders.com/
- 内容安全策略参考:https://content-security-policy.com/
- HSTS 预加载提交:https://hstspreload.org/
references/errors.md—— 完整的错误处理参考references/examples.md—— 更多使用示例- https://intentsolutions.io
评论
支持 Markdown