Github 搜索 是一个相当强大且实用的功能,可用于在仓库中搜索敏感数据。Github dorks 的集合可以揭示敏感的个人和/或组织信息,例如私钥、凭据、认证令牌等。此列表旨在用于安全评估和系统渗透测试。
github-dork.py 是一个简单的 Python 工具,可以搜索您的仓库或您的组织/用户仓库。目前它并非完美的工具,但提供了基本功能,可根据文本文件中指定的 dorks 自动搜索您的仓库。
该工具使用 github3.py 与 GitHub 搜索 API 通信。
克隆此仓库并运行:
pip install .
您也可以使用 Docker 运行 github-dorks,以获得一致的环境:
# 构建 Docker 镜像
docker build -t github-dorks .
# 使用 GitHub 令牌运行(推荐)
docker run -e GH_TOKEN=your_github_token github-dorks -u someuser
# 使用用户名/密码运行
docker run -e GH_USER=your_username -e GH_PWD=your_password github-dorks -u someuser
# 将结果保存到 CSV 文件
docker run -v $(pwd)/output:/app/output -e GH_TOKEN=your_github_token github-dorks -u someuser -o /app/output/results.csv
GH_USER - 指定 GitHub 用户的环境变量
GH_PWD - 指定密码的环境变量
GH_TOKEN - 指定 GitHub 令牌的环境变量
GH_URL - 指定 GitHub Enterprise 基础 URL 的环境变量
以下是一些示例用法:
github-dork.py -r techgaun/github-dorks # 搜索单个仓库
github-dork.py -u techgaun # 搜索用户的所有仓库
github-dork.py -u dev-nepal # 搜索组织所有仓库
GH_USER=techgaun GH_PWD=<mypass> github-dork.py -u dev-nepal # 以认证用户身份搜索
GH_TOKEN=<github_token> github-dork.py -u dev-nepal # 使用认证令牌搜索
GH_URL=https://github.example.com github-dork.py -u dev-nepal # 搜索 GitHub Enterprise 实例
请考虑贡献可能揭示 GitHub 上潜在敏感信息的 dorks。
目前暂不进行分类,仅列出带描述的 dorks。许多 dork 可以修改以使搜索更具体或更通用。更多选项请参见此处。
| Dork | 描述 |
|---|
| filename:.npmrc _auth | npm 注册表认证数据 |
| filename:.dockercfg auth | Docker 注册表认证数据 |
| extension:pem private | 私钥 |
| extension:ppk private | puttygen 私钥 |
| filename:id_rsa or filename:id_dsa | SSH 私钥 |
| extension:sql mysql dump | MySQL 转储 |
| extension:sql mysql dump password | MySQL 转储,查找密码;可尝试变体 |
| filename:credentials aws_access_key_id | 可能返回带有虚拟值的假阴性 |
| filename:.s3cfg | 可能返回带有虚拟值的假阴性 |
| filename:wp-config.php | WordPress 配置文件 |
| filename:.htpasswd | htpasswd 文件 |
| filename:.env DB_USERNAME NOT homestead | Laravel .env(CI、各种 Ruby 框架也适用) |
| filename:.env MAIL_HOST=smtp.gmail.com | Gmail SMTP 配置(也可尝试其他 SMTP 服务) |
| filename:.git-credentials | Git 凭据存储,添加 NOT username 以获取更有效的结果 |
| PT_TOKEN language:bash | Pivotal Tracker 令牌 |
| filename:.bashrc password | 在 .bashrc 中搜索密码等(也可尝试 .bash_profile) |
| filename:.bashrc mailchimp | 上述变体(尝试更多变体) |
| filename:.bash_profile aws | AWS 访问密钥和秘密密钥 |
| rds.amazonaws.com password | Amazon RDS 可能凭据 |
| extension:json api.forecast.io | 尝试变体,查找 API 密钥/秘密 |
| extension:json mongolab.com | JSON 配置中的 Mongolab 凭据 |
| extension:yaml mongolab.com | YAML 配置中的 Mongolab 凭据(也尝试 yml) |
| jsforce extension:js conn.login | Node.js 项目中可能的 Salesforce 凭据 |
| SF_USERNAME salesforce | 可能的 Salesforce 凭据 |
| filename:.tugboat NOT _tugboat | Digital Ocean tugboat 配置 |
| HEROKU_API_KEY language:shell | Heroku API 密钥 |
| HEROKU_API_KEY language:json | JSON 文件中的 Heroku API 密钥 |
| filename:.netrc password | 可能保存敏感凭据的 netrc |
| filename:_netrc password | 可能保存敏感凭据的 netrc |
| filename:hub oauth_token | 存储 GitHub 令牌的 hub 配置 |
| filename:robomongo.json | robomongo 使用的 MongoDB 凭据文件 |
| filename:filezilla.xml Pass | Filezilla 配置文件,包含可能的 FTP 用户名/密码 |
| filename:recentservers.xml Pass | Filezilla 配置文件,包含可能的 FTP 用户名/密码 |
| filename:config.json auths | Docker 注册表认证数据 |
| filename:idea14.key | IntelliJ Idea 14 密钥,尝试其他版本变体 |
| filename:config irc_pass | 可能的 IRC 配置 |
| filename:connections.xml | 可能的数据库连接配置,尝试特定变体 |
| filename:express.conf path:.openshift | OpenShift 配置,但仅包含电子邮件和服务器 |
| filename:.pgpass | 可包含密码的 PostgreSQL 文件 |
| filename:proftpdpasswd | cpanel 创建的 proftpd 用户名和密码 |
| filename:ventrilo_srv.ini | Ventrilo 配置 |
| [WFClient] Password= extension:ica | WinFrame-Client 信息,用户连接 Citrix 应用服务器所需 |
| filename:server.cfg rcon password | 反恐精英 RCON 密码 |
| JEKYLL_GITHUB_TOKEN | Jekyll 使用的 GitHub 令牌 |
| filename:.bash_history | Bash 历史文件 |
| filename:.cshrc | csh shell 的 RC 文件 |
| filename:.history | 历史文件(常被许多工具使用) |
| filename:.sh_history | Korn shell 历史 |
| filename:sshd_config | OpenSSH 服务器配置 |
| filename:dhcpd.conf | DHCP 服务配置 |
| filename:prod.exs NOT prod.secret.exs | Phoenix 生产配置文件 |
| filename:prod.secret.exs | Phoenix 生产秘密 |
| filename:configuration.php JConfig password | Joomla 配置文件 |
| filename:config.php dbpasswd | PHP 应用程序数据库密码(例如 phpBB 论坛软件) |
| path:sites databases password | Drupal 网站数据库凭据 |
| shodan_api_key language:python | Shodan API 密钥(也尝试其他语言) |
| filename:shadow path:etc | 包含新 Unix 系统的加密密码和账户信息 |
| filename:passwd path:etc | 包含传统 Unix 系统的用户账户信息,包括加密密码 |
| extension:avastlic "support.avast.com" | 包含 Avast! 杀毒软件的许可证密钥 |
| filename:dbeaver-data-sources.xml | 包含 MySQL 凭据的 DBeaver 配置 |
| filename:.esmtprc password | esmtp 配置 |
| extension:json googleusercontent client_secret | 用于访问 Google API 的 OAuth 凭据 |
| HOMEBREW_GITHUB_API_TOKEN language:shell | homebrew 用户通常设置的 GitHub 令牌 |
| xoxp OR xoxb | Slack 机器人和私有令牌 |
| .mlab.com password | MLAB 托管的 MongoDB 凭据 |
| filename:logins.json | Firefox 保存的密码集合(同一仓库中通常有 key3.db) |
| filename:CCCam.cfg | CCCam 服务器配置文件 |
| msg nickserv identify filename:config | 可能的 IRC 登录密码 |
| filename:settings.py SECRET_KEY | Django 秘密密钥(通常允许会话劫持、RCE 等) |
| filename:secrets.yml password | 用户名/密码,Rails 应用程序 |
| filename:master.key path:config | Rails 主密钥(用于解密 Rails 5.2+ 的 credentials.yml.enc) |
| filename:deployment-config.json | 由 Atom 的 sftp-deployment 创建,包含服务器详细信息和凭据 |
| filename:.ftpconfig | 由 Atom 的 remote-ssh 创建,包含 SFTP/SSH 服务器详细信息和凭据 |
| filename:.remote-sync.json | 由 Atom 的 remote-sync 创建,包含 FTP 和/或 SCP/SFTP/SSH 服务器详细信息和凭据 |
| filename:sftp.json path:.vscode | 由 VSCode 的 vscode-sftp 创建,包含 SFTP/SSH 服务器详细信息和凭据 |
| filename:sftp-config.json | 由 Sublime Text 的 SFTP 创建,包含 FTP/FTPS 或 SFTP/SSH 服务器详细信息和凭据 |
| filename:WebServers.xml | 由 JetBrains IDE 创建,包含带有编码密码的 Web 服务器凭据(未加密!) |
| "api_hash" "api_id" | Telegram API 令牌 |
| "https://hooks.slack.com/services/" | Slack 服务 URL,通常尾部带有秘密 API 令牌 |
| filename:github-recovery-codes.txt | GitHub 恢复密钥 |
| filename:gitlab-recovery-codes.txt | GitLab 恢复密钥 |
| filename:discord_backup_codes.txt | Discord 恢复密钥 |
| extension:yaml cloud.redislabs.com | 在 YAML 文件中发现的 Redis Labs 提供的 Redis 凭据 |
| extension:json cloud.redislabs.com | 在 JSON 文件中发现的 Redis Labs 提供的 Redis 凭据 |