ibrolord/threatgenix-v1

GitHub: ibrolord/threatgenix-v1

开源安全审查工作台,通过确定性 STRIDE 分析和证据导入将架构设计转化为可审查的威胁模型。

Stars: 1 | Forks: 0

# ThreatGenix v1 ThreatGenix 是一个开源的安全审查工作台,旨在将架构证据转化为可审查的威胁模型。 它将数据流图编辑器、确定性的 STRIDE 规则、证据导入、分析师审查工作流、可选的 AI 辅助分析以及可导出的报告集成在一个本地应用程序中。 ## 包含内容 - 支持组件、数据流和信任边界的交互式 DFD 建模 - 确定性的 STRIDE 威胁生成 - 代码库、IaC、云安全态势和扫描器证据导入 - 分析师决策、风险接受、验证状态和报告导出 - 可选的 LLM 提供商,包括本地 Ollama 和自带 API 密钥 - 精心设计的 Try Sandbox,无需执行实际扫描即可探索工作流 ## 安全默认设置 ThreatGenix 默认以 `try_sandbox` 模式启动。实际的扫描器执行已被禁用。 执行实际的 Nuclei 扫描需要满足以下所有条件: 1. 具有摘要锁定镜像的托管隔离运行器 2. 仅限目标的出站流量限制 3. 绑定到确切目标源的控制权证明 由于未实现隔离的凭证代理,v1 版本中已禁用了经过身份验证的实际扫描。凭证绝不会通过命令行参数传递给扫描器进程。 有关部署边界,请参阅[托管运行器就绪状态](docs/operations/managed-validation-runner-readiness.md)。 ## 快速开始 环境要求: - Docker 及 Compose - 4 GB 可用内存 ``` git clone https://github.com/ibrolord/threatgenix-v1.git cd threatgenix-v1 cp .env.example backend/.env docker compose up --build ``` 打开 [http://localhost:5173](http://localhost:5173)。API 可在 [http://localhost:8000](http://localhost:8000) 访问。 示例配置仅用于本地开发。在进行任何生产或预发布部署之前,请将 `SECRET_KEY`、`SCAN_CREDENTIAL_KEY` 和 `BYOK_ENCRYPTION_KEY` 替换为独立的密钥。两个加密密钥都必须是 base64 编码的 32 字节值。 ## 本地开发 后端: ``` docker compose up -d db python3 -m venv backend/.venv backend/.venv/bin/pip install -r backend/requirements.txt cp .env.example backend/.env cd backend .venv/bin/alembic upgrade head .venv/bin/uvicorn app.main:app --reload --port 8000 ``` 前端,在另一个终端中运行: ``` cd frontend npm ci npm run dev ``` ## 验证 ``` cd backend python -m pytest -q ruff check . cd ../frontend npm test npm run typecheck npm run lint npm run build ``` ## 负责任的使用 仅扫描您拥有或获得明确授权测试的系统。UI 中的确认声明不能替代书面授权。 请按照 [SECURITY.md](SECURITY.md) 中的流程私下报告安全问题。 ## 项目状态 本代码库将首个完整的 ThreatGenix 产品外壳保留为开源的 v1 版本。该项目可用于研究、本地评估和社区协作。在稳定版本发布之前,接口和迁移可能会发生变化。 ## 贡献 欢迎提交 Issue 和针对性的 Pull Request。在提交更改之前,请阅读 [CONTRIBUTING.md](CONTRIBUTING.md)。 ## 许可证 [MIT](LICENSE)
标签:AI风险缓解, STRIDE分析, 反取证, 威胁建模, 安全合规, 安全评估, 数据流图, 暗色界面, 版权保护, 网络代理, 请求拦截, 逆向工具