核心用法
SecureVibes Scanner 是一个AI原生的应用安全扫描平台,通过多子代理流水线(multi-subagent pipeline)实现自动化安全评估。其核心工作流分为五个阶段:架构评估(assessment)→威胁建模(threat-modeling)→代码审计(code-review)→报告生成(report-generator)→可选的动态测试(DAST)。
执行模式:扫描以后台cron任务形式运行(10-30分钟),禁止同步轮询。用户需先克隆目标仓库至本地安全路径,通过scripts/scan.sh包装器脚本(内置路径验证和元字符过滤)触发扫描,使用cron.add调度agentTurn载荷。
关键配置:
- 一次性扫描:
schedule.kind: "at",timeoutSeconds: 2700(45分钟强制) - 周期性扫描:
schedule.kind: "cron"(如每周一早8点) - 输出格式:JSON(结构化对比)、Markdown(叙事报告)、Table(快速概览)
结果管理:扫描结果同步至三处——securevibes-scan-latest.json(滚动基线)、securevibes-scan-YYYY-MM-DD.md(日期归档)、securevibes-scan-history.md(变更追踪)。支持自动diff对比,识别新增/修复/未变漏洞。
显著优点
1. AI深度分析:基于Claude的多阶段推理,相比传统SAST工具能识别业务逻辑漏洞和架构级风险
2. 增量追踪机制:自动维护历史基线,量化安全债务变化趋势
3. 灵活的子代理隔离:可单独执行威胁建模或代码审计阶段,适配不同深度需求
4. 输出格式丰富:JSON便于CI/CD集成,Markdown适合人工审阅
5. DAST集成:支持动态验证,弥补纯静态分析的局限性
潜在缺点与局限性
- 执行成本:完整扫描消耗大量Claude API调用(默认单阶段最多50 turns)
- 时间开销:强制后台异步模式,无法即时反馈(最低30分钟)
- 环境依赖:需预配置
ANTHROPIC_API_KEY,且仅支持本地目录扫描(需手动克隆远程仓库) - 模型限制:威胁建模基于STRIDE框架,对新兴攻击向量覆盖可能不足
- 误报未知:AI生成的发现未经传统规则库校验,需人工复核确认
适合人群
- 安全团队:需要周期性基线对比和趋势报告的中大型项目
- DevSecOps工程师:追求CI/CD集成的JSON输出和自动化差分分析
- 架构师/技术负责人:关注威胁建模和攻击面梳理的宏观安全视角
- 开源维护者:轻量级集成(单Python包
pip install securevibes)
常规风险
| 风险类别 | 说明 | 缓解措施 |
|---------|------|---------|
| 命令注入 | 用户输入直接拼接至shell命令 | 强制使用`scan.sh`包装器,其使用`realpath`解析并拒绝`;\|`&$\`等元字符 |
| 路径遍历 | 恶意路径参数访问敏感文件 | 包装器验证路径为本地目录,禁止远程URL直接扫描 |
| API密钥泄露 | `ANTHROPIC_API_KEY`环境变量暴露 | 遵循标准secret管理,避免日志打印 |
| 扫描干扰 | 长时间后台任务资源占用 | 设置45分钟超时,使用`isolated`会话目标 |
| 基线污染 | `latest.json`被意外覆盖 | 日期归档机制提供恢复点,history.md保留完整记录 |
关键安全提示:绝对禁止绕过scan.sh直接调用securevibes CLI处理用户提供的任意路径。