依赖漏洞扫描器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/dependency-vulnerability-scanner-agent。
技能介绍
痛点:依赖树中的 CVE 难以追踪
现代项目的依赖往往成百上千,npm、PyPI、Maven 和 Go 模块生态更新极快。一个间接引入的底层库爆出 CVE,你的服务可能受影响,而你甚至不知道它的存在。手工排查 package-lock.json、go.sum 或 pom.xml 里的条目既不现实也不可靠。
工作原理与核心步骤
该技能结合两条通道进行漏洞匹配,并生成软件物料清单(SBOM):
- OSV.dev API:作为基准扫描通道,利用 Google 维护的开源漏洞数据库,覆盖上述主流生态。
- Snyk CLI:作为第二引擎交叉验证,利用其私有库和修复建议进行补充。
- syft:扫描项目并生成 CycloneDX 格式的 SBOM,固化依赖清单。
流程为:确认 Snyk CLI 已认证后,用 syft 生成 SBOM,再由两条通道分别匹配已知 CVE 并汇总。
适用边界与注意事项
- 前置条件:Snyk CLI 通道需本机安装并完成账户验证,OSV.dev 通道无此限制。
- 结果快照:SBOM 和扫描结果仅为时间点快照,不自动追踪升级后的变化,需定期重扫。
- 范围局限:仅覆盖清单中已声明的依赖,动态加载或未登记的二进制依赖不在检测范围内。
使用场景
- CI/CD 流水线提交代码前自动扫描依赖中是否存在已知 CVE,避免把有漏洞的代码合入主干。
- 发布新版本前用 syft 生成 CycloneDX SBOM 并随产物一起归档,满足安全审计要求。
- 接手遗留项目时,快速摸清 npm 或 PyPI 依赖中是否存在已知漏洞,评估技术债风险。
- 对比 OSV.dev 与 Snyk 两套漏洞库的结果,确认同一依赖的 CVE 状态是否一致。
适合人员
- 后端工程师:发布新服务前需要确认 npm 或 PyPI 依赖中不存在已知 CVE,避免把有漏洞的代码推上线。
- DevOps 工程师:在 CI 流水线中集成漏洞扫描,阻止带有已知漏洞的依赖合入主干分支。
- 安全审计人员:需要获取项目的 CycloneDX SBOM 清单,作为开源依赖合规审计的存档材料。
- 技术负责人:接手遗留项目时需要快速了解当前依赖树的安全状况,为技术债评估提供数据支撑。