cognis-digital/headerscan

GitHub: cognis-digital/headerscan

从 HTTP 响应转储中对 CSP、HSTS、X-Frame-Options 等安全头部进行 A-F 评级,支持 CI 门禁和 AI agent 集成的命令行工具。

Stars: 0 | Forks: 0

HEADERSCAN # HEADERSCAN ### 从响应转储中对 HTTP 安全头部(CSP/HSTS/XFO)进行 A-F 评级 [![PyPI](https://img.shields.io/pypi/v/cognis-headerscan.svg?color=6b46c1)](https://pypi.org/project/cognis-headerscan/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/8bbcdd4b92061208.svg)](https://github.com/cognis-digital/headerscan/actions) [![License: COCL 1.0](https://img.shields.io/badge/License-COCL%201.0-2b6cb0.svg)](LICENSE) [![Suite](https://img.shields.io/badge/Cognis-Neural%20Suite-6b46c1.svg)](https://github.com/cognis-digital) *Cognis Neural Suite 的一部分。*
``` pip install cognis-headerscan headerscan scan . # → prioritized findings in seconds ``` ## 使用说明 — 逐步指南 1. **安装:** pip install headerscan 2. **捕获 HTTP 响应**(头部 + 状态行)到文件中 — 例如使用 curl: curl -sD - https://example.com -o /dev/null > response.txt 3. **对头部进行 A-F 评级**(CSP / HSTS / X-Frame-Options ...): headerscan grade response.txt 你会得到一份包含评级、得分(/100)以及各个头部详细发现的报告单。使用 `-` 从 stdin 读取: curl -sD - https://example.com -o /dev/null | headerscan grade - 4. **查看输出** — 机器可读的 JSON: headerscan grade response.txt --format json | jq '.grade' 5. **CI 门禁** — 评级为 A/A+ 时退出代码为 0,当评级降至 B 或更低时为 1,读取错误时为 2: headerscan grade response.txt && echo "headers OK" ## 目录 - [为什么选择 headerscan?](#why) · [功能](#features) · [快速开始](#quick-start) · [示例](#example) · [架构](#architecture) · [AI 技术栈](#ai-stack) · [对比](#how-it-compares) · [集成](#integrations) · [随处安装](#install-anywhere) · [相关工具](#related) · [贡献](#contributing) ## 为什么选择 headerscan? header 报告单 `headerscan` 是单一用途、可脚本化且可自托管的:将其指向目标,即可获得以您的工作流已有的格式(表格 · JSON · SARIF)输出的优先级结果,在 CI 中将其作为门禁,并允许 agent 通过 MCP 驱动它。
↑ 返回顶部
## 功能 - ✅ 解析 Headers - ✅ 评分转换为评级 - ✅ 对 Headers 进行评级 - ✅ 支持 Linux/macOS/Windows · Docker · devcontainer 运行 - ✅ 提供 Python, JavaScript, Go, 和 Rust 移植版 (`ports/`)
↑ 返回顶部
## 快速开始 ``` pip install cognis-headerscan headerscan --version headerscan scan . # scan current project headerscan scan . --format json # machine-readable headerscan scan . --fail-on high # CI gate (non-zero exit) ```
↑ 返回顶部
## 示例 ``` $ headerscan scan . [HIGH ] HEA-001 example finding (./src/app.py) [MEDIUM ] HEA-002 another signal (./config.yaml) 2 findings · risk score 5 · 38ms ```
↑ 返回顶部
## 架构 ``` flowchart LR IN[target / manifest] --> P[headerscan
checks + rules] P --> OUT[findings (JSON / SARIF)] ```
↑ 返回顶部
## 从任何 AI 技术栈中使用 `headerscan` 可以与所有流行的 AI 使用方式互操作: - **MCP server** — `headerscan mcp` (Claude Desktop, Cursor, Cognis.Studio, [uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet)) - **OpenAI 兼容 / JSON** — 将 `headerscan scan . --format json` 管道传输给任何 agent 或 LLM - **LangChain · CrewAI · AutoGen · LlamaIndex** — 一行代码将 CLI/JSON 封装为工具 - **CI / 脚本** — 为非 AI pipeline 提供 exit codes + SARIF
↑ 返回顶部
## 对比 | | **Cognis headerscan** | securityheaders.com | |---|:---:|:---:| | 可自托管,无需账号 | ✅ | 视情况而定 | | 单条命令,零配置 | ✅ | ⚠️ | | 用于 CI 的 JSON + SARIF | ✅ | 视情况而定 | | 原生支持 MCP (AI agents) | ✅ | ❌ | | 多语言移植版 (JS/Go/Rust) | ✅ | ❌ | | 开放许可证 | ✅ COCL | 视情况而定 | *秉承 **securityheaders.com** 的精神,以 Cognis 的方式重新构建。遗漏了致谢?欢迎提交 PR。*
↑ 返回顶部
## 集成 可管道传输至您的技术栈:用于代码扫描的 **SARIF**,用于任何场景的 **JSON**,用于 AI agent 的 **MCP server** (`headerscan mcp`),以及用于 SIEM/Slack/Jira 的 webhook 转发器。详见 [`docs/INTEGRATIONS.md`](docs/INTEGRATIONS.md)。
↑ 返回顶部
## 安装 — 各种方式,全平台支持 ``` pip install "git+https://github.com/cognis-digital/headerscan.git" # pip (works today) pipx install "git+https://github.com/cognis-digital/headerscan.git" # isolated CLI uv tool install "git+https://github.com/cognis-digital/headerscan.git" # uv pip install cognis-headerscan # PyPI (when published) docker run --rm ghcr.io/cognis-digital/headerscan:latest --help # Docker brew install cognis-digital/tap/headerscan # Homebrew tap curl -fsSL https://raw.githubusercontent.com/cognis-digital/headerscan/main/install.sh | sh ``` | Linux | macOS | Windows | Docker | Cloud | |---|---|---|---|---| | `scripts/setup-linux.sh` | `scripts/setup-macos.sh` | `scripts/setup-windows.ps1` | `docker run ghcr.io/cognis-digital/headerscan` | [DEPLOY.md](docs/DEPLOY.md) (AWS/Azure/GCP/k8s) |
↑ 返回顶部
## 相关 Cognis 工具 - [`portfan`](https://github.com/cognis-digital/portfan) — 总结 nmap XML 并将其对比为优先的、可攻击的发现 - [`subhunt`](https://github.com/cognis-digital/subhunt) — 聚合并去重来自多个来源的子域枚举 - [`dirsight`](https://github.com/cognis-digital/dirsight) — 将 Web 内容发现输出(ffuf/gobuster)分析为排名的 endpoint - [`jwtinspect`](https://github.com/cognis-digital/jwtinspect) — 解码 JWT 并对 alg=none、弱密钥和缺失的 claim 进行 lint - [`corsaudit`](https://github.com/cognis-digital/corsaudit) — 从头部或配置中检测宽松/错误配置的 CORS - [`ssltriage`](https://github.com/cognis-digital/ssltriage) — 从 openssl/sslyze 输出中对 TLS 配置(协议/加密算法/过期时间)进行评级 **探索套件 →** [🗂️ 所有 170+ 工具](https://github.com/cognis-digital/cognis-neural-suite) · [⭐ awesome-cognis](https://github.com/cognis-digital/awesome-cognis) · [🔗 cognis-sources](https://github.com/cognis-digital/cognis-sources) · [🤖 uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet) · [🧠 engram](https://github.com/cognis-digital/engram)
↑ 返回顶部
## 互操作性 `{}` 与 300+ 工具的 Cognis 套件组合使用 — JSON 输入/输出以及共享的 OpenAI 兼容的 `/v1` 主干。有关套件映射、组合模式和参考技术栈,请参阅 **[INTEROP.md](INTEROP.md)**。 ## 许可证 在 **Cognis Open Collaboration License (COCL) v1.0** 下提供源代码 — 个人、内部评估、研究和教育用途免费;**商业 / 生产用途需要许可证** (licensing@cognis.digital)。详见 [LICENSE](LICENSE)。
Cognis Digital · Cognis Neural Suite 中 170+ 工具之一 · Making Tomorrow Better Today
标签:CSP, DevSecOps, HTTP安全, Python, 上游代理, 可视化界面, 安全基线检查, 安全标准, 数据可视化, 无后门, 日志审计, 请求拦截, 逆向工具