SuperAPI AI 工具集

secret-scan-gitleaks

安全与审计

查看项目

更新于 10-16 06:28

技能介绍

用途

该技能面向安全工程师场景,使用 Gitleaks 对代码库或 Git 历史执行敏感信息检测,找出硬编码的密钥、API 密钥、令牌和凭据。当被要求扫描代码库或 Git 历史中的密钥、凭据或 API 密钥时使用。

前置条件

需要已安装 Gitleaks,安装方式为 brew install gitleaks 或从 GitHub releases 下载。可通过 gitleaks version 验证。

主要能力

  • 扫描当前状态(不含 Git 历史)
  • 扫描 Git 历史
  • 输出详细(verbose)结果
  • 使用自定义配置
  • 仅扫描已暂存的变更

使用方式

  1. 确定目标:确定要扫描的仓库或目录。

  2. 运行扫描:

扫描当前状态(无 Git 历史):

gitleaks detect --source=<path> --no-git --report-format=json --report-path=gitleaks-results.json

扫描 Git 历史:

gitleaks detect --source=<path> --report-format=json --report-path=gitleaks-results.json

详细输出:添加 --verbose

自定义配置:--config=<path-to-.gitleaks.toml>

仅扫描已暂存变更:gitleaks protect --staged --report-format=json

  1. 解析结果:读取 JSON 输出并呈现发现,表格列包括编号、规则、密钥(脱敏)、文件:行号、提交、作者、日期。

重要:务必对密钥值进行脱敏,仅显示前 4 位和后 2 位字符。

  1. 汇总,提供:
  • 按类型统计的密钥总数(API 密钥、密码、令牌等)
  • 哪些密钥位于当前代码中,哪些仅存在于 Git 历史中
  • 修复措施:轮换密钥、从代码中移除、加入 .env/保险库
  • 建议为误报添加 .gitleaks.toml 允许列表

适用场景

适用于在代码库或 Git 历史中排查硬编码凭据相关风险的安全检测任务。

限制

除上述内容外,其余信息暂未提供。