如何使用GitBleed从Git库镜像中提取数据

关于GitBleed

GitBleed是一款针对Git库镜像的安全检测工具,该工具包含了多个Shell脚本,可以帮助广大研究人员下载克隆的Git库和Git库镜像,然后从中提取各种数据,并分析两者之间的不同之处。

功能介绍

工具提供的脚本能够克隆指定Git库的副本,即常规克隆(git
clone)或使用“–mirror”选项来使用Git库镜像。接下来,该工具将会对两者进行分析,并尝试寻找只有镜像模式中才存在的代码库部分。最后,工具还会尝试提取出的数据中是否存在敏感信息或密码凭证等等。任务执行完成之后,工具将会输出分析结果。

请注意,工具脚本的运行过程中将会创建三份代码库副本,并且会消耗掉一定的磁盘空间。

测试代码库

下面给出的是两个可供广大研究人员测试使用的代码库样例:


gb_testrepo_delete
:通过删除的commit隐藏敏感信息


gb_testrepo_reset
:通过“git
reset”隐藏敏感信息

工具要求

在使用该工具之前,我们首先要确保本地设备上安装并配置好 Git Python
3

GitLeaks
和[ git -filter-
repo
](https://github.com/newren/git-filter-
repo)。我们可以在macOS上使用下列命令完成这些工具组件的安装:

brew install git python3 gitleaks git-filter-repo

工具安装

广大研究人员可以使用下列命令将该项目源码克隆至本地,并运行样例项目:

git clone https://github.com/nightwatchcybersecurity/gitbleed_tools.git

cd gitbleed_tools

./gitbleed.sh https://github.com/nightwatchcybersecurity/gitbleed_tools.git example

工具还提供了一些帮助脚本,我们可以通过下列方式用它们来扫描GitHub和GitLab代码库:

./gitbleed_gh.sh nightwatchcybersecurity/gitbleed_tools

./gitbleed_gl.sh nwcs/junit_ui_bug

上述命令将会创建一个包含下列三个子目录的样例文件夹:

clone:包含克隆的代码库;

delta:包含代码库镜像,并去除了“clone”中所有的commit;

mirror:包含使用“–mirror”选项执行后得到的代码库镜像;

同时,工具还会创建下列三个文件:

clone_hashes.done.txt:已克隆代码库的哈希列表;

gitleaks.json:正在运行的GitLeaks返回的结果;

gitlog.txt:“delta”目录中所有的commit,整合进了这个单独的文件;

网络安全工程师企业级学习路线

这时候你当然需要一份系统性的学习路线

如图片过大被平台压缩导致看不清的话,可以在文末下载(无偿的),大家也可以一起学习交流一下。

一些我收集的网络安全自学入门书籍

一些我白嫖到的不错的视频教程:

上述资料【扫下方二维码】就可以领取了,无偿分享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值