用途:在代码库中查找并防止泄露的 API Key、密码和凭据,适用于代码审查、CI/CD 安全检查、Git 历史审计、pre-commit 钩子配置以及密钥泄露事件响应。
主要能力:识别常见密钥模式,如 AWS Access Key(AKIA[0-9A-Z]{16})、AWS Secret Key(40 位 base64)、GitHub Token(ghp_[a-zA-Z0-9]{36})、Stripe API Key(sk_live_[a-zA-Z0-9]{24})、RSA 私钥和高熵 JWT Secret。推荐工具包括 Gitleaks、git-secrets 和 TruffleHog,支持自定义规则与 allowlist 排除 vendor、node_modules、测试文件等路径。
使用方式:Gitleaks 可用 brew install gitleaks 安装,执行 gitleaks detect -v 扫描当前目录,gitleaks detect --source . -v 扫描 Git 历史,CI 中加 --exit-code 1 使发现即失败。git-secrets 用 git secrets --register-aws 注册 AWS 模式,git secrets --scan 扫描,git secrets --install 安装钩子。TruffleHog 用 trufflehog git file://. --only-verified 扫描仓库,trufflehog github --org=myorg --only-verified 扫描组织。pre-commit 可通过 .pre-commit-config.yaml 集成 gitleaks、git-secrets、detect-secrets,安装 pip install pre-commit 后执行 pre-commit install。CI/CD 可参考 GitHub Actions 与 GitLab CI 配置。
安全实践:密钥应通过环境变量或 Secrets Manager(AWS Secrets Manager、HashiCorp Vault)管理,.env 文件仅用于开发并加入 .gitignore,提交 .env.example 示例。泄露后应立即吊销密钥、用 git filter-branch 或 BFG 清理历史、强制推送、审计未授权访问并轮换新密钥。
限制:资料未提供该技能的具体安装方式、运行环境、收费与平台支持信息,暂未提供。