用途:该技能把五类安全扫描串成一条流水线,用于代码提交前、CI 和发布前的安全检查。主要能力分五个阶段:SAST 用 Semgrep 做静态分析,可选用 p/security-audit、p/owasp-top-ten、p/javascript、p/python、p/secrets 等规则集;SCA 用 OWASP dependency-check 检测依赖中的已知 CVE,支持 NVD API key、按 CVSS 失败和抑制文件;SBOM 生成用 Syft,可对目录或 Docker 镜像输出 spdx-json、cyclonedx-json 等格式,并可用 cosign 签名;漏洞扫描用 Grype,可扫描 SBOM、镜像或当前目录,支持 --fail-on high 与 --only-fixed;密钥检测用 detect-secrets,先 scan 生成 .secrets.baseline,再 audit 逐条标注,CI 中用 --baseline 检查新增密钥。
使用方式:可按需单独执行,也可组合为 pre-commit 钩子和 GitHub Actions(Semgrep action、anchore/sbom-action、anchore/scan-action)在每次 PR 时运行。发现项分 HIGH/CRITICAL、MEDIUM、LOW/INFO 三档处理:高危及严重需立即建 issue 并阻塞合并,中危进安全待办,低危定期复核。抑制需说明理由;Semgrep 可用 # nosemgrep 行内标注,detect-secrets 在 audit 时标记,Grype 可用 grype.yaml 忽略。
适用场景:面向需要把 SAST、依赖漏洞、SBOM 与密钥扫描统一到 CI 和发布门禁的研发与安全团队。限制:各项工具需单独安装并配置环境,如 Semgrep、dependency-check、Syft、Grype、detect-secrets;NVD API key 用于避免限流;SBOM 需再用 Grype 扫描才有安全价值;扫描仅覆盖资料所列工具能识别的问题,不替代人工安全审查。