ZynkSec/zynksec
GitHub: ZynkSec/zynksec
ZynkSec 是一个面向现代 SaaS 应用的开源 DAST 优先安全平台,通过编排 OWASP ZAP、Nuclei 等扫描引擎为中小团队提供免费的、可自托管的漏洞检测与修复指导能力。
Stars: 0 | Forks: 0
# Zynksec
Zynksec 是一个面向现代 SaaS 应用的开源安全平台。其目标是将当今被锁定在昂贵商业工具中的漏洞检测能力释放出来,并将它们重构为任何人都可以自行托管 (self-host) 的、对 DevSecOps 友好的平台。
## 什么是 Zynksec
Zynksec 是一个 **以 DAST 优先** (动态应用安全测试,Dynamic Application Security Testing) 的平台:它像真实攻击者那样,从外部测试运行中的 Web 应用和 API,并报告所发现的问题,同时附带您真正可以信任的证据、修复指南和优先级评分。
在底层,Zynksec 编排了业界领先的开源扫描器——以 [OWASP ZAP](https://www.zaproxy.org/) 作为核心 DAST 引擎,使用 [ProjectDiscovery](https://projectdiscovery.io/) 工具集进行侦察,使用 [Nuclei](https://nuclei.projectdiscovery.io/) 进行模板化检查,使用 [Interactsh](https://github.com/projectdiscovery/interactsh) 进行带外 (out-of-band) 检测等等。
其差异化优势体现在这些扫描器之上:
- **统一的发现结果 schema**,使不同的扫描引擎使用同一种“语言”。
- **降噪与关联**,避免三个扫描器发现同一个漏洞却产生 400 个重复结果。
- **通俗语言的修复建议**,与工具实际观察到的情况紧密挂钩,而不是泛泛的 CWE 手册。
- **框架感知扫描**——首个配置文件针对的是 Next.js + Vercel,这也是现代“氛围编码 (vibe-coded)” SaaS 所处的真实环境。
- 在进行任何主动扫描之前进行**所有权验证**,确保该项目不会被武器化用于攻击第三方。
后续阶段将增加 SAST、秘密扫描、依赖项/SBOM 分析、运行时保护,以及 AI 辅助的修复和分诊层(优先考虑自行托管的开源权重模型)。
## 为什么创建这个项目
现代 SaaS 的构建速度前所未有——Next.js + Vercel + Supabase + Clerk + Stripe 可以在几小时内将一个周末的想法变成生产环境。这种速度通常会把安全甩在身后。解决此问题的商业工具每年花费数万美元,并且是为大型企业构建的,而不是针对独立开发者或早期团队。
Zynksec 是独立创始人、小型团队或对安全感兴趣的开发者在第一天就应该能够使用的工具——免费、可自行托管,并专门针对现代技术栈实际容易犯的安全错误而设计。
## 当前状态
| 阶段 | 范围 | 状态 |
| --- | --- | --- |
| 阶段 0 — 基础 | Monorepo 布局,Docker Compose,针对本地目标的最小化 ZAP 基线扫描 | 进行中 |
| 阶段 1 — DAST MVP | ZAP 编排,Nuclei 集成,统一发现结果 schema,基础 UI,所有权验证 | 已规划 |
| 阶段 2 — 侦察 + API | Subfinder/httpx/Katana 发现,OpenAPI/GraphQL 测试,通过 Interactsh 进行 OAST | 已规划 |
| 阶段 3 — SAST / 秘密 / 依赖项 | Semgrep, Gitleaks, Trivy, OSV-Scanner, Syft, Grype | 已规划 |
| 阶段 4 — AI 辅助修复 | 自托管开源权重模型(Mistral Small 3.1, Qwen3 级别) | 已规划 |
| 阶段 5 — 托管扫描编排 | 单 VPS 部署,多租户托管选项 | 已规划 |
| 阶段 6 — 主动防御 | Coraza/ModSecurity + CRS,使用 Falco 进行运行时防御 | 已规划 |
| 阶段 7 — 商业可行性 | 专业规则包,托管 SaaS,企业功能 | 已规划 |
详细的范围界定和路线图位于 [`docs/01_scoping_and_roadmap.md`](docs/01_scoping_and_roadmap.md) 中。
## 架构概览
- **后端:** Python 3.12, FastAPI, Celery, Redis, PostgreSQL。
- **前端:** Next.js, Tailwind, shadcn/ui, Auth.js + GitHub OAuth。
- **扫描器:** 容器化的 Worker (OWASP ZAP, Nuclei, ProjectDiscovery 套件等)。
- **部署:** 本地开发使用 Docker Compose,阶段 5 使用廉价单 VPS,仅在需要时使用 Kubernetes。
- **Schema:** 在自定义的 PostgreSQL schema 上进行 Alembic 迁移——而不是 DefectDojo。
完整架构请参阅 [`docs/03_architecture.md`](docs/03_architecture.md)。
## 文档
| 文档 | 涵盖内容 |
| --- | --- |
| [`docs/01_scoping_and_roadmap.md`](docs/01_scoping_and_roadmap.md) | 产品范围、阶段、部署拓扑、风险缓解 |
| [`docs/02_product_strength_and_foundations.md`](docs/02_product_strength_and_foundations.md) | 现代 SaaS 现状、扩展的漏洞分类、设计决策 |
| [`docs/03_architecture.md`](docs/03_architecture.md) | 系统架构、数据 schema、插件契约、状态机 |
## 安全
请不要将安全问题作为公开的 Issue 提交。关于如何报告漏洞,请参阅 [`SECURITY.md`](SECURITY.md)。
## 贡献
请先阅读 [`CONTRIBUTING.md`](CONTRIBUTING.md)。简短版:Zynksec 尚未准备好接受代码贡献;目前最有帮助的做法是开启一个 Discussion,讨论您希望 Zynksec 最能妥善处理的 SaaS 技术栈或漏洞类型。
## 许可证
Zynksec 基于 **GNU Affero General Public License v3.0** 授权。请参阅 [`LICENSE`](LICENSE)。
选择 AGPLv3 是经过深思熟虑的:如果有人将修改后的 Zynksec 版本作为托管服务运行,他们必须在相同的许可证下发布其修改。这保持了开源项目的持久性,防止了那些否则只会吸收社区工作而不给予任何回报的商业分叉。
## 致谢
Zynksec 站在 OWASP ZAP、ProjectDiscovery、Semgrep、Trivy、OSV-Scanner、Coraza、Falco 等巨人的肩膀上。正是这些项目让这一切成为可能。
标签:API安全, Attack Surface Management, CISA项目, DAST, DevSecOps, FTP漏洞扫描, Google, Interactsh, JSON输出, Nuclei, OSV, OWASP ZAP, ProjectDiscovery, SaaS安全, SBOM分析, Svelte, Vercel, Web安全, 上游代理, 修复建议, 动态应用安全测试, 去重降噪, 安全合规, 安全测试, 安全编排, 开源安全平台, 恶意软件分析, 搜索引擎查询, 攻击性安全, 数据保护, 测试用例, 网络代理, 自托管, 蓝队分析, 请求拦截, 逆向工具, 防武器化, 预发布版本