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

什么是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:

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: 搜索在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

文章知识点与官方知识档案匹配,可进一步学习相关知识Git技能树首页概览2885 人正在系统学习中

来源:外咸瓜街的一条咸鱼

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年4月15日
下一篇 2022年4月16日

相关推荐