roqueribeiro/more4cai

GitHub: roqueribeiro/more4cai

CAI 是一个持续 AI 安全平台,编排多种安全扫描器并通过 AI 分拣生成可被 AI 编程工具自动消费的修复建议包。

Stars: 1 | Forks: 0

# CAI — 持续 AI 安全 [![License: Apache 2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE) [![Python 3.13](https://img.shields.io/badge/python-3.13-blue.svg)](https://www.python.org/downloads/release/python-3130/) [![CI](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/07efb3c8b4183026.svg)](https://github.com/roqueribeiro/more4cai/actions/workflows/ci.yml) [![Status: alpha](https://img.shields.io/badge/status-alpha-orange.svg)](#status) **其他语言的文档:** [Português (Brasil)](README.pt-BR.md) CAI 是一个开源平台,它编排了 15 款安全扫描器(Nmap、OWASP ZAP、Nuclei、Trivy、Greenbone、Gitleaks、Trufflehog、dnstwist、Checkov、kube-bench、Shodan、Censys、GitHub Code Search、Subdomain Takeover 以及一个基础的 Protocol),将它们的输出标准化为规范的 `Finding` schema,并在导出 **AI Fix Bundle JSON** 之前运行注重隐私的 AI 分拣步骤,其他 AI 代理(Claude Code、Cursor、Copilot)可以消费该 JSON,从而为目标代码库提出补丁建议。 目标是:为受监管的环境(银行、金融科技、医疗保健)**闭环扫描与修复之间的脱节**,在这些环境中,漏洞发现不能泄露到公共互联网,但人工渗透测试人员无法扩展到每一个代码库。 ## 状态 CAI 处于 **alpha (pre-1.0)** 阶段。接口和 DB schema 可能会发生破坏性变更。针对真实资产的生产环境使用受限于 [SECURITY.md](SECURITY.md) 中记录的合规性检查以及 [docs/threat-model.md](docs/threat-model.md) 中的威胁模型。 ## 工作原理 ``` Operator AI Patcher (CLI / REST / UI) (Claude Code, Cursor, ...) | ^ v | +-------------------+ +----------------+ | | CAI Orchestrator |----->| Canonical | | | - 15 adapters | | Finding (v2) | | | - PII scrubber | +-------+--------+ | | - litellm AI | v | | triage | +----------------+ | | - Audit log |----->| AI Triage | | | (append-only) | | (OWASP/CWE) | | +---------+---------+ +-------+--------+ | | v | | +----------------+ | | | AI Fix Bundle |---+ | | JSON (1.0.0) | | +----------------+ v +-------------------+ | HTML reports + | | Dashboard UI | +-------------------+ ``` ## 快速开始(5 分钟) 前置条件:Docker Desktop(Windows 上使用 WSL2)或 Docker Engine,8 GB 空闲内存,以及可选的 Claude/OpenAI API key。 ``` git clone https://github.com/roqueribeiro/more4cai.git cd more4cai cp .env.example .env # 填写 APP_TOKEN, POSTGRES_PASSWORD, ZAP_API_KEY (任意随机字符串) # 可选: ANTHROPIC_API_KEY 或 OPENAI_API_KEY make build # build the orchestrator image make up # bring up postgres + redis + orchestrator + worker + zap + lab make migrate # alembic upgrade head make smoke # E2E: scan Juice Shop and produce an HTML report ``` 打开 `http://127.0.0.1:8080/ui/` 查看仪表板,或打开 `http://127.0.0.1:8080/docs` 查看 OpenAPI 规范。所有端点都要求提供您在 `.env` 中设置的 `X-API-Token` header。 ## 功能特性 - **15 个扫描器适配器**遵循统一的 `ScannerAdapter` Protocol —— 易于添加新适配器(参见 [CONTRIBUTING.md](CONTRIBUTING.md) 和 [`orchestrator/adapters/base.py`](orchestrator/adapters/base.py))。 - **规范的 `Finding` schema**,包含去重、严重性、OWASP/CWE 映射、证据和修复提示。 - **PII / PCI 清洗器**,在*任何数据*离开编排器*之前*,涂改 CPF、CNPJ、卡号、JWT、AWS key 和巴西电话号码。 - **通过 [litellm](https://github.com/BerriAI/litellm) 进行 AI 分拣** —— 可在单一配置下兼容 Anthropic、OpenAI、OpenRouter、Ollama 和 LM Studio。本地模型可将敏感发现保留在本地。 - **AI Fix Bundle JSON 导出器 (schema 1.0.0)** —— 专为移交给 AI 补丁工具而设计,可针对被扫描的项目提出代码修改建议。 - **仅追加审计日志**,在应用程序层和 Postgres 触发器层强制执行。 - **HTML 技术和执行报告** + 可选的 DefectDojo 导出。 - **模块化 Docker Compose** —— 根据需要选择配置文件(`default`、`scanners`、`lab`、`greenbone`、`obs`、`proxy`、`ai-agent`)。 ## 适配器 | 适配器 | 扫描器 | 类型 | |---|---|---| | `nmap_adapter` | Nmap | 网络 | | `zap_adapter` | OWASP ZAP | Web 应用 (DAST) | | `nuclei_adapter` | Nuclei | 模板化漏洞扫描 | | `trivy_adapter` | Trivy | 容器 / IaC / FS | | `checkov_adapter` | Checkov | IaC 配置不当 | | `gitleaks_adapter` | Gitleaks | 密钥扫描 | | `trufflehog_adapter` | Trufflehog | 已验证密钥扫描 | | `dnstwist_adapter` | dnstwist | Typosquatting / 域名权限 | | `kube_bench_adapter` | kube-bench | CIS Kubernetes | | `greenbone_adapter` | Greenbone / OpenVAS | 网络漏洞 | | `shodan_adapter` | Shodan | 互联网暴露面 (OSINT) | | `github_exposure_adapter` | GitHub Search | 代码 / 密钥泄露 | | `censys_adapter` | Censys | 互联网暴露面 (可选) | | `subdomain_takeover_adapter` | subfinder + httpx + nuclei | 子域名接管 | ## 深入文档 目前完整的项目文档为**葡萄牙语(巴西)**。非常欢迎翻译方面的帮助 —— 请参阅标记为 `good first issue` + `docs` 的 issue。 - [README.pt-BR.md](README.pt-BR.md) — 完整功能演示 (PT-BR) - [docs/architecture.md](docs/architecture.md) — 内部结构 - [docs/runbook.md](docs/runbook.md) — 运维、故障排除和常见陷阱 - [docs/threat-model.md](docs/threat-model.md) — 威胁模型与合规门控 - [docs/usage.md](docs/usage.md) — 端到端使用示例 - [docs/testing.md](docs/testing.md) — 测试策略 ## 贡献 欢迎提交 issue 和 PR —— 请先阅读 [CONTRIBUTING.md](CONTRIBUTING.md) 和[行为准则](CODE_OF_CONDUCT.md)。如需报告安全问题,请遵循 [SECURITY.md](SECURITY.md)(私密渠道)。 ## 许可证 Apache License 2.0 — 参见 [LICENSE](LICENSE) 和 [NOTICE](NOTICE)。 CAI 捆绑或调用的第三方软件受其各自的许可证约束;请参阅 `NOTICE` 和 `pyproject.toml`。
标签:AI大模型集成, DevSecOps, FTP漏洞扫描, Python, 上游代理, 安全编排, 密码管理, 插件系统, 搜索引擎查询, 无后门, 测试用例, 自动化漏洞扫描, 请求拦截, 逆向工具