cognis-digital/apiseclint

GitHub: cognis-digital/apiseclint

一款用于扫描 OpenAPI 规范文件以检测认证授权、速率限制和数据暴露等 API 安全漏洞的 CLI 静态分析工具。

Stars: 0 | Forks: 0

APISECLINT # APISECLINT ### Lint OpenAPI 规范以检测安全漏洞(authz、rate-limit、数据暴露) [![PyPI](https://img.shields.io/pypi/v/cognis-apiseclint.svg?color=6b46c1)](https://pypi.org/project/cognis-apiseclint/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/fdeb775ad7073114.svg)](https://github.com/cognis-digital/apiseclint/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-apiseclint apiseclint scan . # → prioritized findings in seconds ``` ## 使用说明 — 逐步指南 `apiseclint` 用于 lint OpenAPI 规范,以检测 API 安全漏洞(authn/authz、rate limiting、数据暴露)。 1. **安装** (Python 3.10+): pip install -e . # 或者:pipx install apiseclint 2. **Lint 规范**(人类可读表格): apiseclint lint openapi.yaml 3. **生成报告**,以 JSON 或 HTML 格式写入文件: apiseclint lint openapi.yaml --format html -o api-security-report.html apiseclint lint openapi.json --format json -o report.json 4. **读取输出**为 JSON,以便通过管道传输或用于仪表盘: apiseclint lint openapi.yaml --format json | jq '.findings' 5. **CI 门禁** — 发现问题时退出代码为 `1`,无问题时为 `0`,读取/解析错误时为 `2`。使用 `--exit-zero` 可以仅生成报告而不中断构建: - 运行:pip install -e . && apiseclint lint openapi.yaml # 非 0 退出代码将导致任务失败 ## 目录 - [为什么选择 apiseclint?](#why) · [功能](#features) · [快速开始](#quick-start) · [示例](#example) · [架构](#architecture) · [AI 技术栈](#ai-stack) · [横向对比](#how-it-compares) · [集成](#integrations) · [随处安装](#install-anywhere) · [相关工具](#related) · [贡献指南](#contributing) ## 为什么选择 apiseclint? 对 OpenAPI 规范进行 lint 以检测安全漏洞(authz、rate-limit、数据暴露)—— 无需搭建繁重的基础设施。 `apiseclint` 是单一用途、可脚本化且可自托管的:将其指向目标,即可获取符合您现有工作流格式的优先级排序结果(表格 · JSON · SARIF),据此设置 CI 门禁,并允许代理通过 MCP 驱动它。
↑ 返回顶部
## 功能 - ✅ 加载 Spec - ✅ Lint Spec - ✅ 渲染表格 - ✅ 渲染 Json - ✅ 渲染 Html - ✅ 可在 Linux/macOS/Windows · Docker · devcontainer 上运行 - ✅ 提供 Python、JavaScript、Go 和 Rust 移植版本 (`ports/`)
↑ 返回顶部
## 快速开始 ``` pip install cognis-apiseclint apiseclint --version apiseclint scan . # scan current project apiseclint scan . --format json # machine-readable apiseclint scan . --fail-on high # CI gate (non-zero exit) ```
↑ 返回顶部
## 示例 ``` $ apiseclint scan . [HIGH ] API-001 example finding (./src/app.py) [MEDIUM ] API-002 another signal (./config.yaml) 2 findings · risk score 5 · 38ms ```
↑ 返回顶部
## 架构 ``` flowchart LR IN[target / manifest] --> P[apiseclint
checks + rules] P --> OUT[findings (JSON / SARIF)] ```
↑ 返回顶部
## 在任何 AI 技术栈中使用 `apiseclint` 能够与所有主流的 AI 使用方式实现互操作: - **MCP 服务器** — `apiseclint mcp` (Claude Desktop, Cursor, Cognis.Studio, [uncensored-fleet](https://github.com/cognis-digital/uncensored-fleet)) - **兼容 OpenAI / JSON** — 通过管道将 `apiseclint scan . --format json` 输出传递给任何代理或 LLM - **LangChain · CrewAI · AutoGen · LlamaIndex** — 只需一行代码即可将 CLI/JSON 封装为工具 - **CI / 脚本** — 提供退出代码 + SARIF,适用于非 AI 流水线
↑ 返回顶部
## 横向对比 | | **Cognis apiseclint** | 典型工具 | |---|:---:|:---:| | 可自托管,无需账号 | ✅ | 视情况而定 | | 单一命令,零配置 | ✅ | ⚠️ | | 支持用于 CI 的 JSON + SARIF | ✅ | 视情况而定 | | MCP 原生支持 (AI 代理) | ✅ | ❌ | | 多语言移植版本 (JS/Go/Rust) | ✅ | ❌ | | 开放许可协议 | ✅ COCL | 视情况而定 |
↑ 返回顶部
## 集成 可整合至您的现有技术栈:提供用于代码扫描的 **SARIF**,用于一切的 **JSON**,用于 AI 代理的 **MCP 服务器** (`apiseclint mcp`),以及用于 SIEM/Slack/Jira 的 webhook 转发器。详情请参阅 [`docs/INTEGRATIONS.md`](docs/INTEGRATIONS.md)。
↑ 返回顶部
## 安装 — 各种方式、各个平台 ``` pip install "git+https://github.com/cognis-digital/apiseclint.git" # pip (works today) pipx install "git+https://github.com/cognis-digital/apiseclint.git" # isolated CLI uv tool install "git+https://github.com/cognis-digital/apiseclint.git" # uv pip install cognis-apiseclint # PyPI (when published) docker run --rm ghcr.io/cognis-digital/apiseclint:latest --help # Docker brew install cognis-digital/tap/apiseclint # Homebrew tap curl -fsSL https://raw.githubusercontent.com/cognis-digital/apiseclint/main/install.sh | sh ``` | Linux | macOS | Windows | Docker | 云平台 | |---|---|---|---|---| | `scripts/setup-linux.sh` | `scripts/setup-macos.sh` | `scripts/setup-windows.ps1` | `docker run ghcr.io/cognis-digital/apiseclint` | [DEPLOY.md](docs/DEPLOY.md) (AWS/Azure/GCP/k8s) |
↑ 返回顶部
## 相关的 Cognis 工具 **探索全套工具 →** [🗂️ 全部 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
标签:API安全, JSON输出, OpenAPI, Python, 可视化界面, 安全合规, 数据可视化, 无后门, 日志审计, 网络代理, 请求拦截, 逆向工具, 静态应用安全测试(SAST)