You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何搜索组织及公司GitHub仓库,查找AWS Access Keys及个人密钥?

搜索AWS Access Keys的实用方法

一、搜索GitHub组织仓库中的AWS Access Keys

  • GitHub内置代码搜索:直接用AWS Access Key ID的正则表达式 AKIA[0-9A-Z]{16} 在组织的仓库搜索页筛选"Code"类型,就能定位包含密钥的文件。注意私有仓库需要你有对应访问权限,且GitHub搜索有速率限制,大规模搜索可能需要分批进行。
  • GitHub CLI批量搜索:用gh search code命令批量扫描组织仓库,比如:
    gh search code --owner=你的组织名 --regex="AKIA[0-9A-Z]{16}" --csv=name,path,url > aws_keys.csv
    
    导出CSV方便后续核对,前提是已经安装并认证了GitHub CLI。
  • 本地扫描工具:用truffleHog这类开源工具克隆组织仓库后本地扫描,命令:
    trufflehog github --org 你的组织名 --only-verified
    
    它会自动验证密钥有效性,过滤掉已失效的,减少误报。

二、定位公司代码仓库中个人AWS Access Keys

  • 仓库内置搜索:如果公司用GitLab、Bitbucket或自建平台,直接在全局代码搜索里用正则匹配,比如AKIA[0-9A-Z]{16}或者AWS_SECRET_ACCESS_KEY\s*=\s*".+",覆盖所有仓库和主流代码、配置文件类型。
  • 静态代码分析工具:把仓库接入SonarQube或Semgrep,配置自定义规则检测硬编码密钥。比如Semgrep可以写规则匹配aws_access_key_id = "AKIA..."这类代码片段,提交代码时自动触发扫描,实时告警。
  • 本地批量扫描脚本:写个简单的Shell脚本遍历所有克隆的公司仓库:
    #!/bin/bash
    for repo in ./公司仓库目录/*/; do
      echo "正在扫描 $repo..."
      grep -r "AKIA[0-9A-Z]\{16\}" "$repo" --include="*.py" --include="*.js" --include="*.env" --include="*.yml"
    done
    
    指定常见的密钥可能出现的文件类型,降低误报率。
  • 预提交钩子拦截:在公司Git仓库配置pre-commit钩子,加入detect-secrets插件,开发者提交代码前自动检查,一旦发现AWS密钥就阻止提交,从源头杜绝个人密钥流入代码库。

内容的提问来源于stack exchange,提问作者Stvvks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 22:25:41