Netfoe/scapegoat

GitHub: Netfoe/scapegoat

Scapegoat 是一个开源软件成分分析平台,专注于 SBOM 管理和供应链安全漏洞扫描。

Stars: 1 | Forks: 0

Scapegoat
# 替罪羊 Scapegoat 是一个开源的软件成分分析(SCA)平台,旨在简化软件物料清单(SBOM)管理和供应链安全。它提供了一个集中式仪表板,供组织跟踪依赖项、识别漏洞,并在其整个软件组合中强制执行合规策略。 ## 主要功能 - **全面的 SBOM 支持:** 导入并分析 CycloneDX、SPDX 和 Syft JSON 格式的 SBOM。 - **自动化漏洞扫描:** 集成 Grype 和 OSV 等行业标准扫描器,以识别依赖项中的已知漏洞(CVEs)。 - **灵活的策略引擎:** 定义并强制执行自定义的安全与合规策略,确保软件符合您组织的标准。 - **GitHub 集成:** 从您的 GitHub 组织无缝导入仓库并直接管理 SBOM。 - **许可证与合规管理:** 跟踪项目中的软件许可证,并通过内置报告确保法律合规性。 - **高级依赖搜索:** 在整个应用程序层次结构中快速定位特定的包和版本。 - **交互式仪表板:** 通过直观的可视化效果和健康指标,实时了解您的安全态势。 ## 项目结构 本项目分为两个主要部分: - `backend/`:一个基于 Go 的 API,用于扫描和分析 SBOM。 - `frontend/`:一个使用 React + TypeScript 构建的仪表板,用于可视化结果。 ## 技术栈 - **后端:** Go 1.25, Gin, GORM, PostgreSQL, Redis。 - **前端:** React 19, TypeScript, Vite, Tailwind CSS, TanStack Query, React Router。 - **基础设施:** Docker, Docker Compose。 ## 入门指南 ### 前置条件 - Docker 和 Docker Compose (V2) ### 运行应用程序 1. 克隆仓库。 2. 初始化环境: chmod +x scripts/init.sh ./scripts/init.sh *注意:此脚本将在 `shared/` 目录中创建必要的文件。根目录下提供了 `.env.example` 供参考。* 3. 在根目录下运行以下命令: docker compose up --build 4. 前端将可通过 `http://localhost:5173` 访问。 5. ZITADEL 将可通过 `http://localhost:8080` 访问。 6. 后端 API 将可通过 `http://localhost:8081` 访问。 ### 手动测试 您可以通过用户界面上传任何有效的 CycloneDX、SPDX (JSON) 或 Syft JSON 文件来测试 SBOM 上传功能。 ### 单元测试 要运行后端测试: ``` cd backend go test ./... ```
标签:Docker, Gin框架, GitHub集成, GORM, Go语言, GPT, PostgreSQL, React, React Router, Redis, SBOM分析, SBOM管理, SBOM管理平台, Svelte, Syscalls, Tailwind CSS, TanStack Query, TLS抓取, TypeScript, Vite, 供应链安全解决方案, 依赖搜索, 依赖追踪, 合规管理, 安全插件, 安全防御评估, 开源SCA工具, 搜索引擎查询, 日志审计, 测试用例, 漏洞管理, 版权保护, 程序破解, 策略引擎, 网络安全挑战, 自动化攻击, 自动化漏洞扫描, 许可证合规, 请求拦截, 软件安全, 软件组成分析