UnkL4b/GitMiner
GitHub: UnkL4b/GitMiner
GitMiner 是一款利用 GitHub Dork 语法自动化搜索公开仓库中敏感信息泄漏的安全审计工具。
Stars: 2152 | Forks: 430

```
+ Autor: UnK
+ Blog: https://unkl4b.github.io
+ Github: https://github.com/danilovazb
+ Twitter: https://twitter.com/danilo_vaz_
```
## 警告
```
+---------------------------------------------------+
| DEVELOPERS ASSUME NO LIABILITY AND ARE NOT |
| RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY |
| THIS PROGRAM |
+---------------------------------------------------+
```
### 描述
```
Advanced search tool and automation in Github.
This tool aims to facilitate research by code or code
snippets on github through the site's search page.
```
### 动机
演示将包含敏感信息的代码存储在公共仓库中的信任脆弱性。
### 环境要求
```
lxml
requests
argparse
json
re
```
### 安装
```
$ git clone http://github.com/UnkL4b/GitMiner
$ cd GitMiner
~/GitMiner $ pip3 install -r requirements.txt
```
### Docker
```
$ git clone http://github.com/UnkL4b/GitMiner
$ cd GitMiner
$ docker build -t gitminer .
$ docker run -it gitminer -h
```
### 帮助
```
UnkL4b
__ Automatic search for Github
((OO)) ▄████ ██▓▄▄▄█████▓ ███▄ ▄███▓ ██▓ ███▄ █ ▓█████ ██▀███
\__/ ██▒ ▀█▒▓██▒▓ ██▒ ▓▒▓██▒▀█▀ ██▒▓██▒ ██ ▀█ █ ▓█ ▀ ▓██ ▒ ██▒ OO
|^| ▒██░▄▄▄░▒██▒▒ ▓██░ ▒░▓██ ▓██░▒██▒▓██ ▀█ ██▒▒███ ▓██ ░▄█ ▒ oOo
| | ░▓█ ██▓░██░░ ▓██▓ ░ ▒██ ▒██ ░██░▓██▒ ▐▌██▒▒▓█ ▄ ▒██▀▀█▄ OoO
| | ░▒▓███▀▒░██░ ▒██▒ ░ ▒██▒ ░██▒░██░▒██░ ▓██░░▒████▒░██▓ ▒██▒ /oOo
| |___░▒___▒_░▓____▒_░░___░_▒░___░__░░▓__░_▒░___▒_▒_░░_▒░_░░_▒▓_░▒▓░_/ /
\______░___░__▒_░____░____░__░______░_▒_░░_░░___░_▒░_░_░__░__░▒_░_▒░__/ v2.0
░ ░ ░ ▒ ░ ░ ░ ░ ▒ ░ ░ ░ ░ ░ ░░ ░
░ ░ ░ ░ ░ ░ ░ ░
-> github.com/UnkL4b
-> unkl4b.github.io
+---------------------[WARNING]---------------------+
| DEVELOPERS ASSUME NO LIABILITY AND ARE NOT |
| RESPONSIBLE FOR ANY MISUSE OR DAMAGE CAUSED BY |
| THIS PROGRAM |
+---------------------------------------------------+
[-h] [-q 'filename:shadow path:etc']
[-m wordpress] [-o result.txt]
[-r '/^\s*.*?;?\s*$/gm']
[-c _octo=GH1.1.2098292984896.153133829439; _ga=GA1.2.36424941.153192375318; user_session=oZIxL2_ajeDplJSndfl37ddaLAEsR2l7myXiiI53STrfhqnaN; __Host-user_session_same_site=oXZxv9_ajeDplV0gAEsmyXiiI53STrfhDN; logged_in=yes; dotcom_user=unkl4b; tz=America%2FSao_Paulo; has_recent_activity=1; _gh_sess=MmxxOXBKQ1RId3NOVGpGcG54aEVnT1o0dGhxdGdzWVpySnFRd1dVYUk5TFZpZXFuTWxOdW1FK1IyM0pONjlzQWtZM2xtaFR3ZDdxlGMCsrWnBIdnhUN0tjVUtMYU1GeG5Pbm5DMThuWUFETnZjcllGOUNkRGUwNUtKOVJTaGR5eUJYamhWRE5XRnMWZZN3Y3dlpFNDZXL1NWUEN4c093RFhQd3RJQ1NBdmhrVDE3VVNiUFF3dHBycC9FeDZ3cFVXV0ZBdXZieUY5WDRlOE9ZSG5sNmRHUmllcmk0Up1MTcyTXZrN1RHYmJSdz09--434afdd652b37745f995ab55fc83]
optional arguments:
-h, --help show this help message and exit
-q 'filename:shadow path:etc', --query 'filename:shadow path:etc'
Specify search term
-m wordpress, --module wordpress
Specify the search module
-o result.txt, --output result.txt
Specify the output file where it will be
saved
-r '/^\s*(.*?);?\s*$/gm', --regex '/^\s*(.*?);?\s*$/gm'
Set regex to search in file
-c _octo=GH1.1.2098292984896.153133829439; _ga=GA1.2.36424941.153192375318; user_session=oZIxL2_ajeDplJSndfl37ddaLAEsR2l7myXiiI53STrfhqnaN; __Host-user_session_same_site=oXZxv9_ajeDplV0gAEsmyXiiI53STrfhDN; logged_in=yes; dotcom_user=unkl4b; tz=America%2FSao_Paulo; has_recent_activity=1; _gh_sess=MmxxOXBKQ1RId3NOVGpGcG54aEVnT1o0dGhxdGdzWVpySnFRd1dVYUk5TFZpZXFuTWxOdW1FK1IyM0pONjlzQWtZM2xtaFR3ZDdxlGMCsrWnBIdnhUN0tjVUtMYU1GeG5Pbm5DMThuWUFETnZjcllGOUNkRGUwNUtKOVJTaGR5eUJYamhWRE5XRnMWZZN3Y3dlpFNDZXL1NWUEN4c093RFhQd3RJQ1NBdmhrVDE3VVNiUFF3dHBycC9FeDZ3cFVXV0ZBdXZieUY5WDRlOE9ZSG5sNmRHUmllcmk0Up1MTcyTXZrN1RHYmJSdz09--434afdd652b37745f995ab55fc83, --cookie _octo=GH1.1.2098292984896.153133829439; _ga=GA1.2.36424941.153192375318; user_session=oZIxL2_ajeDplJSndfl37ddaLAEsR2l7myXiiI53STrfhqnaN; __Host-user_session_same_site=oXZxv9_ajeDplV0gAEsmyXiiI53STrfhDN; logged_in=yes; dotcom_user=unkl4b; tz=America%2FSao_Paulo; has_recent_activity=1; _gh_sess=MmxxOXBKQ1RId3NOVGpGcG54aEVnT1o0dGhxdGdzWVpySnFRd1dVYUk5TFZpZXFuTWxOdW1FK1IyM0pONjlzQWtZM2xtaFR3ZDdxlGMCsrWnBIdnhUN0tjVUtMYU1GeG5Pbm5DMThuWUFETnZjcllGOUNkRGUwNUtKOVJTaGR5eUJYamhWRE5XRnMWZZN3Y3dlpFNDZXL1NWUEN4c093RFhQd3RJQ1NBdmhrVDE3VVNiUFF3dHBycC9FeDZ3cFVXV0ZBdXZieUY5WDRlOE9ZSG5sNmRHUmllcmk0Up1MTcyTXZrN1RHYmJSdz09--434afdd652b37745f995ab55fc83
Specify the cookie for your github
```
### 示例
搜索包含密码的 wordpress 配置文件:
```
$:> python3 gitminer-v2.0.py -q 'filename:wp-config extension:php FTP_HOST in:file ' -m wordpress -c pAAAhPOma9jEsXyLWZ-16RTTsGI8wDawbNs4 -o result.txt
```

查找包含密码的巴西政府文件:
```
$:> python3 gitminer-v2.0.py --query 'extension:php "root" in:file AND "gov.br" in:file' -m senhas -c pAAAhPOma9jEsXyLWZ-16RTTsGI8wDawbNs4
```
在 etc 目录下查找 shadow 文件:
```
$:> python3 gitminer-v2.0.py --query 'filename:shadow path:etc' -m root -c pAAAhPOma9jEsXyLWZ-16RTTsGI8wDawbNs4
```
搜索包含密码的 joomla 配置文件:
```
$:> python3 gitminer-v2.0.py --query 'filename:configuration extension:php "public password" in:file' -m joomla -c pAAAhPOma9jEsXyLWZ-16RTTsGI8wDawbNs4
```

### Hacking SSH 服务器
[](https://www.youtube.com/watch?v=yIJOlKZwQQw)
### 搜索 Dork
##### 来自 @techgaun (https://github.com/techgaun/github-dorks)
Dork | 描述
------------------------------------------------|--------------------------------------------------------------------------
filename:.npmrc _auth | npm registry 认证数据
filename:.dockercfg auth | docker registry 认证数据
extension:pem private | 私钥
extension:ppk private | puttygen 私钥
filename:id_rsa or filename:id_dsa | ssh 私钥
extension:sql mysql dump | mysql dump
extension:sql mysql dump password | mysql dump 查找密码;您可以尝试多种变体
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 | pivotaltracker token
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 | nodejs 项目中可能的 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 token 的 hub 配置
filename:robomongo.json | robomongo 使用的 mongodb 凭证文件
filename:filezilla.xml Pass | 可能包含 ftp 用户/密码的 filezilla 配置文件
filename:recentservers.xml Pass | 可能包含 ftp 用户/密码的 filezilla 配置文件
filename:config.json auths | docker registry 认证数据
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 | 用户连接到 Citrix 应用服务器所需的 WinFrame-Client 信息
filename:server.cfg rcon password | Counter Strike RCON 密码
JEKYLL_GITHUB_TOKEN | 用于 jekyll 的 Github token
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! Antivirus 的许可证密钥
filename:dbeaver-data-sources.xml | 包含 MySQL 凭证的 DBeaver 配置
filename:.esmtprc password | esmtp 配置
extension:json googleusercontent client_secret | 用于访问 Google APIs 的 OAuth 凭证
HOMEBREW_GITHUB_API_TOKEN language:shell | 通常由 homebrew 用户设置的 Github token
xoxp OR xoxb | Slack bot 和私有 token
.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 服务器凭证([并非加密!](https://intellij-support.jetbrains.com/hc/en-us/community/posts/207074025/comments/207034775))
标签:BeEF, BSD, Docker, ESC4, Github, meg, OSINT, Python, 代码安全, 代码审查, 信息安全, 安全监控, 安全防御评估, 实时处理, 搜索工具, 数据挖掘, 数据泄露, 无后门, 漏洞枚举, 爬虫, 系统独立性, 自动化搜索, 请求拦截, 逆向工具