GitHound:一款针对GitHub的API密钥和敏感数据搜索工具

栏目: IT技术 · 发布时间: 4年前

内容简介:GitHound可以利用模式匹配、提交历史楼所和一个独特的结果评分系统来精确定位GitHub上的公开API密钥,从本质上来说,GitHound就是一款基于批量爬取、模式匹配和补丁攻击的敏感数据搜索工具。值得一提的是,目前为止在GitHound的帮助下,我已经成功拿到了超过7500美元的漏洞奖金了。广大研究人员可以使用下列命令将GitHound项目源码克隆至本地:

GitHound

GitHound可以利用模式匹配、提交历史楼所和一个独特的结果评分系统来精确定位GitHub上的公开API密钥,从本质上来说,GitHound就是一款基于批量爬取、模式匹配和补丁攻击的敏感数据搜索工具。

值得一提的是,目前为止在GitHound的帮助下,我已经成功拿到了超过7500美元的漏洞奖金了。

功能介绍

 1、GitHub/Gist代码搜索。这个功能将允许GitHound搜索GitHub中用户上传的所有代码库,并准确定位到敏感信息所在的位置。 
 2、通用APK密钥检测,该功能使用了模式匹配、上下文检索和香农熵。 
 3、提交历史搜索,该功能可以找到没有正确删除的敏感信息。 
 4、评分系统,可以返回更加准确的结果,过滤常见的误报,并优化密集型代码库挖掘结果。 
 5、Base64检测和解码。 
 6、可将GitHound构建整合进我们自己的工作流中。 

工具下载

广大研究人员可以使用下列命令将GitHound项目源码克隆至本地:

git clone https://github.com/tillson/git-hound.git

工具安装

使用我们自己的GitHub用户名和密码创建一个./config.yml或~/.githound/config.yml文件,目前还不支持使用开启了双因素身份验证的账号。

样本config.example.yml文件格式如下:

# Required
github_username: tillson
github_password: a8ueifjq4jkasdfoiulk

然后运行下列命令:

echo "tillsongalloway.com" | git-hound

工具使用

echo "tillsongalloway.com" | git-hound or git-hound --subdomain-file subdomains.txt

使用样例

搜索公开的用户API密钥

通过了解特定服务的API密钥的模式,我们将能够使用GitHound来搜索GitHub中的这些公开用户API密钥。然后,我们可以将自定义的密钥正则表达式整合进我们的脚本中,然后针对目标服务API密钥来标识有风险的账户。

echo "api.halcorp.biz" | githound --dig --many-results --regex-file halcorp-api-regexes.txt --results-only | python halapitester.py

漏洞奖励:搜索泄露的员工API令牌

对于我个人来说,GitHound的主要用途就是针对漏洞奖励计划来搜索敏感信息。对于某些重要目标,我们可以使用–many-results和–languages来搜索>100页得结果。

echo "uberinternal.com" | githound --dig --many-results --languages common-languages.txt --threads 100

工具选项

 –subdomain-file – 包含子域名的文件;
 –dig-files – 克隆并搜索目标代码库中的文件以获取结果;
 –dig-commits – 克隆并搜索目标代码库中的提交历史以获取结果;
 –many-results – 使用结果 排序 和过滤搜索超过100页的结果;
 –results-only – 仅将正则匹配得结果打印到stdout,用于将自定义正则表达式匹配项管道化到另一个脚本中;
 –no-repos – 指定不需要搜索的代码库;
 –no-gists – 指定不需要搜索的Gist;
 –threads -指定提交挖掘程序要使用的最大线程数;
 –regex-file – 提供自定义正则表达式文件;
 –language-file – 提供带有要搜索的语言的自定义文件;
 –config-file – 自定义配置文件(默认为config.yml);
 –pages – 要搜索的最大页面数(默认值为100);
 –no-scoring – 不使用评分来过滤假阳性;
 –no-api-keys – 不执行通用api密钥搜索。GitHound使用常见的API密钥模式、上下文检索和香浓熵过滤器来查找潜在的公开API密钥;
 –no-files – 不标记感兴趣的文件扩展名;
 –only-filtered – 仅搜索筛选查询(语言);
 –debug – 打印详细的调试消息;

项目地址

GitHound:【 GitHub传送门

* 参考来源: tillson ,FB小编Alpha_h4ck编译,转载请注明来自FreeBuf.COM


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

实战Java高并发程序设计

实战Java高并发程序设计

葛一鸣、郭超 / 电子工业出版社 / 2015-10-1 / CNY 69.00

在过去单核CPU时代,单任务在一个时间点只能执行单一程序,随着多核CPU的发展,并行程序开发就显得尤为重要。 《实战Java高并发程序设计》主要介绍基于Java的并行程序设计基础、思路、方法和实战。第一,立足于并发程序基础,详细介绍Java中进行并行程序设计的基本方法。第二,进一步详细介绍JDK中对并行程序的强大支持,帮助读者快速、稳健地进行并行程序开发。第三,详细讨论有关“锁”的优化和提高......一起来看看 《实战Java高并发程序设计》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试