yuelihe2-svg/cloud-sast-scanner

GitHub: yuelihe2-svg/cloud-sast-scanner

这是一个基于云的源代码漏洞扫描平台,利用 SAST 工具和生成式 AI 技术,通过 Go 后端与 Python 扫描引擎协同工作,自动化检测代码中的安全风险。

Stars: 0 | Forks: 0

# cloud-sast-scanner 一个由 SAST 工具和 GenAI 驱动的基于云的源代码漏洞扫描器。 ## 项目布局 **技术栈:** Go Backend API(编排)· Python Scanner Worker · Vite + React + TypeScript 前端。 | 路径 | 角色 | |------|------| | `backend/cmd/server/` | `main` 包:进程入口,连接 HTTP 服务器和依赖项 | | `backend/internal/api/` | HTTP 处理程序和路由(健康检查、扫描、报告) | | `backend/internal/config/` | 配置加载(环境变量、默认值、密钥) | | `backend/internal/service/` | 编排:验证请求、创建作业 ID、将作业发布到队列、查询状态、返回报告元数据 | | `worker/` | Python 扫描器 Worker 服务(队列消费者) | | `worker/scanner/` | Worker 使用的可复用 Python 扫描引擎(AST/regex 规则) | | `worker/scanner/rules/` | 检测器:SQL 注入、XSS、硬编码密钥、…… | | `frontend/` | Web UI:提交仓库 URL、轮询状态、显示发现结果 | | `infra/docker/` | 用于本地/云端部署的容器镜像和 compose 配置 | | `scripts/` | 一次性开发/运维辅助脚本 | | `workspace/` | 用于克隆仓库的本地目录(内容被 gitignore) | Go 模块根目录:`backend/go.mod`;在 `backend/` 目录下使用 `go run ./cmd/server` 运行 API。 `internal/` 布局确保包**仅在此模块内私有**(符合 Go 语言习惯)。 ### 架构(高层) - **Go Backend API**:接收请求,验证输入,创建扫描作业,将其发布到队列(例如 SQS),并提供状态/结果查询服务。 - **Python Worker**:从队列消费作业,将目标仓库克隆到 `workspace/`,对 Python 文件运行 SAST 规则,存储报告(例如 S3 / DB),并更新作业状态。 ### 关于 `internal/` 的说明 `backend/internal/` 下的代码无法被其他模块导入——只能被 `backend/` 内的包导入。这符合单一后端 monorepo 的结构;仅在必要时再提取共享库。 ### 前端 保持不变:`frontend/` 使用 Vite + React + TypeScript(在搭建 UI 时添加 `package.json`)。
标签:DevSecOps, Docker, DOE合作, GenAI, Go后端, GraphQL安全矩阵, Python, React, SAST, SQL注入检测, Syscalls, TypeScript, Vite, XSS检测, 上游代理, 安全扫描器, 安全插件, 安全防御评估, 微服务架构, 无后门, 日志审计, 源代码漏洞扫描, 漏洞探索, 生成式AI, 盲注攻击, 硬编码密钥, 索引, 请求拦截, 逆向工具, 错误基检测, 队列, 静态代码分析