渗透测试之git信息收集 (git介绍+github使用技巧)

本文介绍了git作为去中心化版本控制工具的工作原理及其可能导致的信息泄漏风险。通过目录扫描、robots.txt检查及搜索引擎,可以发现公开的git资源。一旦找到,可以使用各种工具下载并分析git内容,如gitlog、gitreset等命令。同时,文章提到了GitHub上的搜索技巧,帮助用户更高效地查找代码。为了防止信息泄漏,必须谨慎管理git仓库,避免敏感信息暴露。
摘要由CSDN通过智能技术生成

什么是git:

git,我们叫做去中心化的版本控制软件。
大型的代码程序软件我们都是很多成员同步合作完成,但是这样就会导致出现代码被覆盖的情况,或者想要找过去版本比较困难的情况。于是就出现了版本控制系统来自动化的帮我们记录。

而去中心化的版本控制系统就是如今最常用,最成熟的代码管理方式,比如github就是去中心化的一个代码控制平台。

为什么git会导致信息泄漏

1、因为git的工作方式是把代码从本地保存后把私有仓库或者隐私文件上传到了github

2、部署项目的时候,不小心把 .git 文件一起打包进 去,放到web网站的目录下

git中有很多有用的内容:

1、.git/logs/HEAD
存储了git的log信息,可以找到历史的commit项

2、.git/index 缓存git add的文件,暂存区

3、.git/refs/stash git stash 把代码存入缓存区

4、.git/refs/heads/master 记录了master的commit的hash。在拿到这个hash之后我们就能把最后一个版本的所有代码全部还原出来!

5、.git/objects/pack/.pack
这个packs也能让我们获得源码

github中有用的搜索技巧:

kali in:file 搜索文件中包含kali的代码

kali in:path 搜索路径中包含kali的代码

kali in:path,file 搜索路径、文件中包含kali的代码

shodan language:python 搜索关键字shodan,语言为python的代码

filename:config.php language:php 搜索文件名为config.php,且语言为php

kali topics:>=5 标签数量大于等于5的

kali size:<1000 文件小于1KB的 kali

stars:10..50 star大于10小于50的

kali pushed:>2021-08-15 搜索在2021年8月15日之后提交的

kali pushed:2021-07-01..2021-08-01
搜索在此区间

kali created:>=2021-06-01创建时间

kali pushed:<2021-08-01 -language:java
搜索在2020年8月1日前push代码且排除java语言

git信息泄漏利用

1、找到git:
找到肯定是我们进行利用的第一步

a、我们可以通过目录扫描的方式去进行扫描

b、robots.txt
反扒机器人中如果存在git,那么说明存在该文件

c、可以通过搜索引擎去发现 intitle:"Index of /.git"
如果发现,那么就是存在隐藏的git文件可以让我们进行查看

2、把git下载到本地:
已经有很多工具存在来下载git到本地

https://github.com/BugScanTeam/GitHack https://github.com/lijiejie/GitHack https://github.com/wangyihang/githacker https://github.com/WangWen-Albert/ JGitHack

这边说一下如何把文件下载到kali中
用wget+网址 命令来进行下载。
也可以用git clone +url来获取

3、用git的命令获取获取内容
git log 查看历史信息
git reset --hard [log hash] 恢复版本
git diff 比较不同版本的区别

也可以用一些工具来进行分析:https://github.com/gakki429/Git_Extract

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值