Mixeway/Flow
GitHub: Mixeway/Flow
一个集成 SAST、SCA、IaC 和敏感信息扫描的 DevSecOps 安全扫描平台,通过 Webhook 自动触发并在统一仪表盘中管理所有安全发现。
Stars: 80 | Forks: 6
# Mixeway Flow — DevSecOps 瑞士军刀 🔐⚙️
[](LICENSE.md)

[](https://discord.gg/76RY2Y82)
[](CONTRIBUTING.md)
可用演示:https://flow.mixeway.io
## 目录
- [为什么选择 Mixeway Flow?](#why-mixeway-flow)
- [工作原理](#how-it-works)
- [扫描内容](#whats-scanned)
- [SAST (Bearer)](#sast-bearer)
- [SCA (SBOM + OWASP Dependency-Track)](#sca-sbom--owasp-dependency-track)
- [IaC (KICS)](#iac-kics)
- [秘密信息泄露 (gitleaks)](#secret-leaks-gitleaks)
- [GitLab 仓库扫描器 (Mixeway 规则集)](#gitlab-repository-scanner-mixeway-ruleset)
- [AI/LLM 验证 — 正在开发中](#aillm-verification--under-development)
- [快速开始](#quick-start)
- [初始设置](#initial-setup)
- [截图](#screenshots)
- [文档](#documentation)
- [贡献](#contributing)
- [社区](#community)
- [许可证](#license)
## 为什么选择 Mixeway Flow?
- **一个仪表盘掌控全局** — 集成 SAST、SCA、IaC 和秘密信息扫描于一体。
- **零 CI 摩擦** — Git webhooks 自动触发扫描;无需复杂的流水线配置。
- **聚焦关键点** — 结合上下文进行抑制/忽略,减少噪音并优先处理真实风险。
- **快速展现价值** — Docker Compose 安装;几分钟内即可启动并审查发现的问题。
- **为下一步而生** — 旨在接入 AI/LLM 验证层,直接在您的代码库中验证可利用性。
## 工作原理

1. **注册 Git 仓库**(URL + 访问令牌)。系统将对默认分支的最新 commit 运行初始扫描。
2. **配置 webhook**(GitHub/GitLab)。每次 push 或 PR/MR 都会触发扫描;必要时事件将进入队列。
3. 在统一仪表盘中**查看结果**并采取行动。
## 扫描内容
从开发者/CI/CD 的角度来看,每次扫描过程都是透明的。您无需额外操作即可获得一致的结果。
### SAST (Bearer)
对团队源代码进行静态分析,检测注入漏洞、不安全模式等。
**要求:** 无 — 每次更改都会运行。
引擎:https://github.com/Bearer/bearer
### SCA (SBOM + OWASP Dependency-Track)
通过 SBOM 接入查找已知漏洞、许可证问题和过时的库。
**要求:** 将 `sbom.json` 放在仓库根目录以启用 SCA 扫描。
引擎:https://github.com/DependencyTrack/dependency-track
### IaC (KICS)
扫描 Terraform、Kubernetes manifests、Dockerfiles 及其他模板中的错误配置。
**要求:** 无 — 每次更改都会运行。
引擎:https://github.com/Checkmarx/kics
检测意外提交的凭证(API 密钥、令牌、密码),防止其演变成安全事件。
**要求:** 无 — 每次更改都会运行。
引擎:https://github.com/gitleaks/gitleaks
### 秘密信息泄露 (gitleaks)
检测意外提交的凭证(API 密钥、令牌、密码),防止其演变成安全事件。
**要求:** 无 — 每次更改都会运行。
引擎:https://github.com/gitleaks/gitleaks
### GitLab 仓库扫描器 (Mixeway 规则集)
使用我们精心策划的规则集,对 **15 种以上的 GitLab 仓库/安全错误配置**进行一流检查。
**检测示例:**
- 默认分支上没有或仅有微弱的**分支保护**(允许 force-push,缺少批准)。
- 注册到项目/组的**未知或不受信任的 runner**。
- **密码或令牌等敏感信息存储在 GitLab CI/CD 变量中**,且未进行遮掩/保护等秘密信息。
- 不安全的 **merge request** 设置(缺少代码审查/批准)。
- 通过**继承的可见性**或不正确的共享导致私有项目的公开暴露。
- 缺失或宽松的 **Protected Tags** / **Protected Branches** 配置。
- 具有过度宽泛权限的 **Pipeline triggers** 和 webhooks。
- Artifact 暴露 / 保留策略错误配置。
**工作原理:** Mixeway 查询仓库和项目元数据、CI 设置以及保护规则,以评估策略合规性,并通过**可操作的修复建议**突出显示高风险缺口。
## **要求:** 仓库访问权限,需具备读取项目设置和 CI/CD 配置的权限(token 或 PAT)。
## AI/LLM 验证 — 正在开发中
我们正在构建一个互补的 **AI 辅助验证层**,它在您的扫描结果之上运行,以**判断漏洞在您的代码库中是否真正可被利用**。该项目结合了三大支柱:
1. **检测到的发现**
摄入并规范化来自 Mixeway Flow 的 SAST、SCA (SBOM)、IaC 和秘密信息扫描输出。
2. **扩展的漏洞情报**
利用结构化威胁情报(例如,CVE 元数据、CWE、CVSS、KEV/“已知被利用”、类似 EPSS 的概率、exploit-exists 信号、公告、参考)丰富发现结果。
3. **具备代码意识的 AI/LLM 推理**
使用大型语言模型和特定领域的规则来分析**您仓库的源代码**,并验证是否存在利用所需的条件。
- 为每个漏洞生成一份**约束清单**(例如,可达的 sink、不受信任的数据流、缺少输入验证、存在漏洞的库版本及调用点使用情况)。
- 将验证结果映射到**具体的代码位置**(文件、函数、行)和**执行路径**。
- **减少误报**,并提升满足可利用性条件的关键问题级别。
- 输出与确切代码上下文一致的**可操作的修复**步骤。
**成果与目标**
- **目标:** 为开发者和 AppSec 提供 **100% 准确且妥善排序**的结果。
- **状态:** 正在积极开发中;将作为 Mixeway Flow 的**未来版本**发布。
- **早期访问:** 如果您有兴趣测试此功能,请提交 Issue 或在 Discord 上联系我们。
## 快速开始
### 选项 A — 克隆并运行
```
git clone https://github.com/Mixeway/flow
cd flow
docker-compose up
```
### 选项 B — 单文件 `docker-compose.yml`
```
cat <<'EOF' > docker-compose.yml
version: '3.8'
services:
backend:
image: mixeway/flow-api:latest
container_name: flowapi_backend
ports:
- "8888:8888"
- "8443:8443"
environment:
SSL: "TRUE"
volumes:
- pki_data:/etc/pki
- dependency_track_data:/root/.dependency-track
depends_on:
- flowdb
flowdb:
image: postgres:latest
container_name: flowdb
ports:
- "5432:5432"
environment:
POSTGRES_DB: flow
POSTGRES_USER: flow_user
POSTGRES_PASSWORD: flow_pass
volumes:
- flowdb_data:/var/lib/postgresql/data
flow:
image: mixeway/flow:latest
container_name: flow_frontend
ports:
- "443:443"
volumes:
- flow_data:/etc/nginx/ssl
depends_on:
- backend
volumes:
flowdb_data:
flow_data:
pki_data:
dependency_track_data:
EOF
docker-compose up
```
**将会启动:**
1. Postgres 数据库
2. 带有自签名 TLS 的后端 + Dependency-Track
3. 前端 (nginx)
**应用 URL:** `https://localhost:443`
**默认登录:** `admin / admin` → 首次登录时系统会提示您更改密码。
## 初始设置
1. 创建一个 **Team**
2. **导入**您的仓库
3. 在您的 Git 提供商(GitLab/GitHub)上**注册** webhook
然后在 **Vulnerabilities** 视图中开始探索发现的问题。
## 截图
- Webhook 配置

- 漏洞概览

- 扫描概览

## 文档
正在建设中 — 欢迎贡献者协助规划和编写第一批文档页面(设置、配置、SBOM 生成提示、故障排除)。
## 社区
- **Discord:** https://discord.gg/76RY2Y82
- **Issues:** 使用 GitHub Issues 提交 Bug 和功能请求
- **安全性:** 请避免在公开工单中发布敏感细节。对于疑似漏洞,请私下联系维护者。
## 许可证
该项目基于 **FlowLicense** 授权。有关详细信息,请参阅 **[LICENSE.md](LICENSE.md)**。
标签:CISA项目, DevSecOps, Docker, EC2, Git集成, IaC, SAST, SBOM, WebSocket, 上游代理, 代码安全, 依赖分析, 域名枚举, 安全网关, 安全防御评估, 测试用例, 漏洞枚举, 版权保护, 盲注攻击, 硬件无关, 网络安全, 请求拦截, 跌倒检测, 软件物料清单, 隐私保护