vigneshoffsec/http-header-analyzer

GitHub: vigneshoffsec/http-header-analyzer

基于 Python 的 HTTP 安全头审计工具,检测 Web 应用安全头配置缺陷并生成 OWASP 标准修复报告。

Stars: 13 | Forks: 2

# 🛡️ HTTP Header Analyzer (高级 AppSec 工具) 一个基于 Python 的 **HTTP 安全头审计工具**,用于识别一个或多个 Web 应用程序中薄弱或缺失的安全头。 它生成 **符合 OWASP 标准的修复建议**、严重性评级,并导出 **JSON + HTML 报告**,适用于 AppSec 团队、漏洞评估和开发人员交接。 该工具自动化了安全头审查流程,并加速了安全评估。


# 📂 项目结构 ``` http-header-analyzer/ │── src/ │ └── header_analyzer.py │── reports/ │ └── .gitkeep │── wordlists/ │ └── .gitkeep │── README.md │── LICENSE ``` # 🚀 功能特性 ### ✔ 完整的安全头评估 检查行业标准的安全头: * **Content-Security-Policy (CSP)** * **Strict-Transport-Security (HSTS)** * **X-Frame-Options** * **X-Content-Type-Options** * **Referrer-Policy** * **Permissions-Policy** ### ✔ 符合 OWASP 标准的修复建议 每个缺失的头包含: * 严重性 (HIGH / MEDIUM / LOW) * 描述 * 符合 OWASP 最佳实践的建议修复方案 ### ✔ 多目标扫描 支持扫描: * 单个 URL * 多个 URL * 包含 URL 列表的 `.txt` 文件 ### ✔ JSON + HTML 报告 自动生成: * JSON 报告 (`header-report-*.json`) * HTML 报告 (`header-report-*.html`) 非常适合作为交付给客户的文档。 ### ✔ 彩色 CLI 输出 清晰易读的终端输出,带有基于严重性的高亮显示。 ### ✔ 域名规范化 URL 在需要时会自动更正为 `https://`。 # 🧪 使用方法 ### **扫描单个目标** ``` python3 src/header_analyzer.py https://example.com ``` ### **扫描多个目标** ``` python3 src/header_analyzer.py https://site1.com https://site2.org https://site3.net ``` ### **从 URL 列表文件扫描** `targets.txt`: ``` https://example.com https://app.test.com https://login.internal ``` 运行: ``` python3 src/header_analyzer.py targets.txt ``` # 📤 示例控制台输出 ``` === https://example.com === Status: 200 [+] Content-Security-Policy (OK) [-] Strict-Transport-Security MISSING | Severity: HIGH [-] X-Frame-Options MISSING | Severity: MEDIUM ``` # 🧾 示例报告文件 在 `/reports/` 目录中: ``` header-report-20251114-153210.json header-report-20251114-153210.html ``` # 🛠 工作原理 (内部机制) ### 1. 规范化 URL 确保自动应用 `http://` 或 `https://` 前缀。 ### 2. 获取 HTTP 响应 使用现代 User-Agent 和超时保护。 ### 3. 头部评估 对于 6 个关键安全头中的每一个: * 检查是否存在 * 识别严重性 * 提供 OWASP 修复文本 ### 4. 结构化结果 存储: * 存在的头 * 缺失的头 * 原始头部转储 * 状态码 ### 5. 报告生成 创建: * JSON 结构化报告 * 带有严重性颜色标记的 HTML 格式表格 # 📈 严重性评级 | Severity | Meaning | | ---------- | ------------------------------------------------------------- | | **HIGH** | 关键头缺失;高可利用性 (CSP, HSTS) | | **MEDIUM** | 重要但非关键 (XFO, X-Content-Type-Options) | | **LOW** | 最佳实践加固 (Referrer-Policy, Permissions-Policy) | # 🧩 OWASP 修复映射 该工具遵循 OWASP 关于头部的最佳实践: * **CSP:** 防止 XSS 和注入 * **HSTS:** 防止降级攻击 * **XFO:** 阻止点击劫持 * **XCTO:** 防止 MIME 嗅探 * **Referrer-Policy:** 减少数据泄露 * **Permissions-Policy:** 限制浏览器功能 # 📌 HTML 报告预览示例 (自动生成) ``` +--------------------------------------------------------------+ | HTTP Security Header Report | +--------------------------------------------------------------+ | URL: https://example.com | | Status: 200 | |--------------------------------------------------------------| | Missing Headers: | | HSTS – HIGH severity – remediation text... | | X-Frame-Options – MEDIUM severity – remediation text... | | Present Headers: | | Content-Security-Policy – HIGH severity (OK) | +--------------------------------------------------------------+ ``` # 📌 路线图 / 未来增强 * 通过 sitemap 发现的页面进行递归扫描 * CSP 质量评分 * 响应头熵检查 * 策略配置错误检测 * 被动指纹检测 # 🧑‍⚖️ 道德免责声明 本工具仅用于**授权的安全测试和教育用途**。 未经许可分析系统是**非法**且不道德的。 # 👨‍💻 作者 **Vignesh Mani** 攻击性安全研究员 GitHub: [https://github.com/vigneshoffsec](https://github.com/vigneshoffsec) LinkedIn: [https://linkedin.com/in/vignesh-m17](https://linkedin.com/in/vignesh-m17)
标签:C++17, CSP检测, DevSecOps, GitHub Advanced Security, Homebrew安装, HSTS, HTTP头分析, Python, Web安全, X-Frame-Options, 上游代理, 云安全监控, 内容安全策略, 多模态安全, 安全加固, 密码管理, 无后门, 无服务器架构, 渗透测试辅助, 网络安全, 自动化安全工具, 蓝队分析, 规则仓库, 逆向工具, 隐私保护, 静态分析