用途:在发布前对 diff 或整个仓库运行真实的静态分析,并对结果做分诊,区分真正需要处理的漏洞与噪声。
主要能力:优先扫描 diff,其次扫描仓库;支持 Semgrep、CodeQL、密钥扫描与依赖 CVE 扫描;将每个发现归入四类:立即修复(如注入、认证绕过、仓库内密钥、反序列化、路径遍历、SSRF)、稍后修复、已审阅但不适用、噪声(测试固件、生成文件、vendored 代码)。对立即修复项要求先证明可达性,说明入口点、数据路径与汇聚点。
使用方式:Semgrep 可用 semgrep --config=auto --error --quiet . 扫描仓库,或 semgrep --config=auto --quiet --baseline-commit=origin/main 只扫 diff;密钥扫描用 gitleaks detect --no-banner --redact 等;依赖 CVE 用 npm audit --audit-level=high 2>&1 | tail -40 或 pip-audit 2>&1 | tail -40;CodeQL 需构建,用 codeql database create db --language=javascript --overwrite 与 codeql database analyze db --format=sarif-latest --output=results.sarif,更适合发布分支而非每个 PR。
限制:工具未安装时应说明并运行可用工具,不静默跳过;若发现有效凭证,立即告知用户并优先轮换,且不得完整回显密钥;报告按严重度而非文件顺序排列,无真实发现时用一行说明,不填充非问题。