freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

点我创作

试试在FreeBuf发布您的第一篇文章 让安全圈留下您的足迹
我知道了

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

99+
Commit-Stream:通过提取commit记录寻找GitHub库中的敏感信息
Alpha_h4ck 2020-08-05 21:57:51 315585

Commit-Stream

Commit-Stream是一款针对GitHub的安全检测工具,该工具能够利用GitHub的事件API来从GitHub库的commit日志记录中实时提取出敏感信息。

换句话说,Commit-Stream也可以作为开源情报收集工具和网络侦察工具来使用,对于红队研究人员和Bug Hunter来说,该工具能够提供以下帮助:

  • 了解目标公司员工提交的代码以及目标代码库,该功能通过对邮件域名过滤来实现;
  • 识别属于用户个人的GitHub代码库,可按开发者姓名过滤筛选;
  • 与其他工具(例如trufflehog)整合使用,并从目标GitHub库中提取出敏感数据;

工具安装

如需获取针对Windows、macOS和Linux的64位预编译的可执行程序文件,可以直接点击【这里】访问该项目的GitHub Release页面。

Go get

如果你想要自行对项目代码进行构建,可以直接使用go get方法进行工具安装,但前提是本地主机已配置好了Go环境

go get -u github.com/x1sec/commit-stream

源码构建

go get && go build

工具使用

Usage:

  commit-stream [OPTIONS]

 

Options:

  -e, --email       需要匹配的电子邮件地址,多个地址通过逗号分隔,不填则匹配全部 

  -n, --name       需要匹配的开发者姓名,多个地址通过逗号分隔,不填则匹配全部   

  -t, --token       GitHub令牌,如果不指定则默认使用环境变量 'CSTREAM_TOKEN'

  -a  --all-commits  搜索之前的commit代码提交历史(默认为false)

  -i  --ignore-priv  忽略noreply.github.com私有邮件地址(默认为false)

Commit-Stream需要使用到一个GitHub个人访问令牌,你可以直接在GitHub中生成这个令牌:[设置/ 开发者设置/个人访问令牌],接下来,选择“生成一个新的令牌”。其他都不用选择,直接输入令牌名称并点击生成按钮即可。

令牌创建成功之后,我们建议广大研究人员通过环境变量“CSTREAM_TOKEN”来设置这个访问令牌:

export CSTREAM_TOKEN=xxxxxxxxxx

或者,我们也可以在调用该工具时,通过“--token”参数来设置访问令牌:

./commit-stream --token xxxxxxxxxx

如果在运行Commit-Stream时没有提供任何运行参数的话,该工具将会立即导出目标GitHub库的开发者详细信息,并在终端中以CSV格式导出相关的代码库,在这里用户可以使用过滤选项来进行结果筛选。

通过电子邮件域名过滤:

./commit-stream --email '@company.com'

通过开发者姓名过滤:

./commit-stream --name 'John Smith'

多个关键词可以通过逗号“,”进行分隔,比如说:

./commit-stream --email '@telsa.com,@ford.com'

通过使用“--all-commits”参数,可以搜索目标代码库最多20条代码提交记录。电子邮件地址如果设置成了私有地址(@users.noreply.github.com),可以通过“--ignore-priv”选项来忽略该地址。如果长时间运行该工具,这个选项将有助于减少收集的数据量。

注意事项

GitHub能够防止电子邮件地址暴露,我们可以在GitHub的设置页面中,选择电子邮件选项中的“Keep my email addresses private”和“Block command line pushes that expose my email”。

工具演示视频

视频地址:【点我观看

项目地址

Commit-Stream:【GitHub传送门

# github # GitHub服务 # GitHub工具
免责声明
1.一般免责声明:本文所提供的技术信息仅供参考,不构成任何专业建议。读者应根据自身情况谨慎使用且应遵守《中华人民共和国网络安全法》,作者及发布平台不对因使用本文信息而导致的任何直接或间接责任或损失负责。
2. 适用性声明:文中技术内容可能不适用于所有情况或系统,在实际应用前请充分测试和评估。若因使用不当造成的任何问题,相关方不承担责任。
3. 更新声明:技术发展迅速,文章内容可能存在滞后性。读者需自行判断信息的时效性,因依据过时内容产生的后果,作者及发布平台不承担责任。
本文为 Alpha_h4ck 独立观点,未经授权禁止转载。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
Alpha_h4ck LV.10
好好学习,天天向上
  • 2359 文章数
  • 1023 关注者
Tetragon:一款基于eBPF的运行时环境安全监控工具
2025-01-21
DroneXtract:一款针对无人机的网络安全数字取证工具
2025-01-21
CNAPPgoat:一款针对云环境的安全实践靶场
2025-01-21
文章目录