ggshield Secret Scanner

🔐 代码提交前的密钥泄露防线

基于 GitGuardian 的 CLI 工具,在代码提交前自动检测 500+ 种硬编码密钥,防止敏感凭证泄露到版本控制中。

收藏
9.8k
安装
2.6k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

ggshield-scanner 是 GitGuardian ggshield CLI 的 Moltbot 封装,提供五类核心扫描能力:

1. 全仓库扫描 (scan-repo) - 扫描整个 git 历史,发现遗留密钥
2. 单文件扫描 (scan-file) - 快速检查特定文件

3. 暂存区扫描 (scan-staged) - 仅扫描 git add 后的变更,速度快

4. Git 钩子集成 (install-hooks) - 安装 pre-commit 钩子,自动拦截含密钥的提交

5. Docker 镜像扫描 (scan-docker) - 检查镜像层中是否残留密钥

显著优点

  • 检测覆盖广:支持 500+ 种密钥类型(AWS/GCP/Azure 凭证、Slack/Stripe API 密钥、数据库密码、OAuth token 等)
  • 多引擎检测:结合熵值分析、模式匹配、CVE 交叉引用和机器学习模型
  • 隐私保护设计:仅上传密钥哈希指纹和元数据(文件路径、行号),绝不传输实际密钥内容
  • 企业级选项:支持本地部署,实现完全离线扫描
  • 开发者友好:Git 钩子自动拦截、详细的修复建议、误报忽略机制

潜在局限

  • 外部依赖:必须持有 GitGuardian API key(需注册账号),存在服务可用性依赖
  • 网络要求:默认需连接 GitGuardian 云端服务,内网环境需配置企业版
  • 扫描性能:大型仓库(50GB+)全量扫描耗时较长
  • 误报处理:高熵字符串(如随机测试数据)可能被误报,需手动配置忽略规则

适合人群

  • 个人开发者:防止意外提交密钥到公开仓库
  • DevOps/安全团队:建立代码提交前的自动化安全门禁
  • 企业开发团队:满足合规要求(SOC 2、ISO 27001),防止供应链泄露
  • 开源维护者:保护贡献者不因疏忽泄露凭证

常规风险

  • API key 泄露GITGUARDIAN_API_KEY 若被窃取,攻击者可查询扫描历史(虽无法获取原始密钥,但可推断密钥存在位置)
  • 扫描盲区:自定义加密密钥、非标准格式的内部凭证可能漏检
  • 历史清理遗漏:扫描发现历史中的密钥后,需配合 git-filter-repo 等工具彻底擦除,仅删除文件不够
  • 钩子绕过:本地可通过 --no-verify 跳过 pre-commit 钩子,需配合 CI/CD 二次扫描

ggshield Secret Scanner 内容

暂无文件树

手动下载zip · 10.0 kB
contentapplication/octet-stream
请选择文件