mcpField
S
secrets-scan

secrets-scan

github.com/owasp安全208357 次安装2 周前更新
代码仓库

关于 secrets-scan

面向代码库和仓库维护者的密钥扫描技能,结合可用的自动扫描器、手动模式检查和上下文分析,并规定检测到凭据后的脱敏与处置步骤。

主要功能

  1. 01选择可用的自动扫描器
  2. 02手动检查密钥模式
  3. 03分析检测项的上下文
  4. 04预防控制清单
  5. 05脱敏与轮换指导

适用场景

  1. 01扫描代码库中的硬编码凭据
  2. 02检查仓库历史中的泄露密钥
  3. 03评估并处置检测到的凭据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/owasp/secure-agent-playbook --skill secrets-scan

安装后在 Claude Code 中输入/secrets-scan确认已加载。

详细介绍

密钥扫描

按照 plays/secrets-scan.md 中的完整流程检测硬编码密钥。

步骤

  1. 运行自动扫描器 — 按优先顺序使用可用工具:

    • trufflehog filesystem --directory=<path> --json(推荐)
    • trufflehog git file://<repo> --json(包含 Git 历史记录)
    • gitleaks detect --source=<path> --report-format=json
    • detect-secrets scan <path> --all-files
    • 如果没有可用的扫描器,请进行手动模式分析。
  2. 手动模式分析 — 搜索高置信度模式:

    • AWS 密钥(AKIA...)、OpenAI(sk-...)、Anthropic(sk-ant-...)、GitHub(ghp_...)、Slack(xoxb-...)、Stripe(sk_live_...)、SendGrid(SG.)
    • 嵌入密码的连接字符串(://user:pass@host)
    • 私钥(PEM 标头)、JWT 密钥、数据库凭据
    • 高风险文件:.env、docker-compose*.yml、*.tfvars、terraform.tfstate、kubeconfig、.npmrc、.pypirc
  3. 上下文分析 — 对每项检测结果进行判断:它是真实密钥(而非占位符或测试样本)吗?它仍然有效吗?影响范围有多大(服务、权限、生产环境还是开发环境、暴露时长)?

  4. 检查预防性控制措施 — 验证:.gitignore 是否覆盖敏感文件,是否配置了用于密钥扫描的提交前钩子,CI 流水线是否进行扫描,是否提供了密钥管理文档。

重要提示:切勿在调查结果中包含实际密钥值。仅显示已脱敏的版本(例如,AKIA****EXAMPLE)。生产环境中仍然有效的密钥必须立即轮换。

输出

扫描摘要、使用 templates/finding.md 编写的调查结果、预防性控制措施清单,以及需要时的立即轮换措施。

OWASP 参考

  • A07:2021:身份识别和身份验证失败
  • CWE-798:使用硬编码凭据
  • CWE-312:敏感信息明文存储

评论

支持 Markdown