依赖漏洞扫描是什么
依赖漏洞扫描(SCA)对第三方依赖清单做已知漏洞比对:npm audit、pip-audit、OWASP Dependency-Check、Trivy fs 等工具可离线接入 CI,按严重级决定阻断。策略通常是高危阻断、中低危记录并跟踪;扫描对象是锁文件对应的依赖闭包——锁文件缺失或不更新时,结果不可信。扫描要覆盖直接依赖与传递依赖,闭包之外的开发依赖按团队策略裁剪。
基本信息
| 工具 | npm audit、pip-audit、OWASP Dependency-Check、Trivy fs 等 |
|---|---|
| 数据源 | 各工具自带的漏洞库或 OSV 等公开数据 |
| 策略 | 高危阻断、中低危记录并跟踪 |
| 前置 | 锁文件最新且入库,扫描基于解析后的依赖闭包 |
| 豁免 | 带原因与到期时间的白名单,到期自动重新评估 |
漏洞处置节奏
| 严重级 | 时限参考 | 处理 |
|---|---|---|
| 严重与高危 | 尽快 | 阻断合并且安排修复或缓解 |
| 中危 | 限期 | 排期升级,跟踪到期 |
| 低危 | 批量 | 随例行升级消化 |
| 无修复版本 | 评估 | 临时缓解并跟踪上游 |
典型使用场景
- 合并门禁:新增依赖引入高危漏洞时阻断,防止欠债入库
- 例行巡检:对存量依赖定期全量扫描,输出治理清单
- 应急响应:公开漏洞爆发时批量比对哪些服务受影响
- 采购评估:引入新依赖前核对漏洞与维护活跃度
- 合规材料:认证要求提供依赖漏洞治理流程与记录
- 修复节奏:小步升级与锁定版本结合,避免一次跳跃过大引入兼容风险
Node
Node
npm audit --audit-level=highPython
Python
pip-audit --strict扫描对象是锁文件对应的闭包依赖;锁文件缺失时结果不可信。CI 里先校验锁文件与清单一致再扫描。
误报与无修复版本要有豁免流程:登记原因、责任人与复核时间,避免一刀切把团队逼去绕过。