在网站安全维护方面,git和svn信息泄露是非常常见也是非常致命的一个漏洞。

当前大量开发人员使用git进行版本控制,对站点自动部署。 如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。

GitHack是一个.git泄露利用脚本,通过泄露的.git文件夹下的文件,还原重建工程源代码。

渗透测试人员、攻击者,可以进一步审计代码,挖掘:文件上传,SQL注射等安全漏洞。

脚本的工作原理:

解析.git/index文件,找到工程中所有的: ( 文件名,文件sha1 )

去.git/objects/ 文件夹下下载对应的文件

zlib解压文件,按原始的目录结构写入源代码

它的优点:

速度快,默认20个工作线程

尽量还原所有的源代码,缺失一部分文件不影响脚本工作

脚本不需要执行额外的git命令,All you need is python

脚本无需浏览目录

可能的改进:

存在文件被gc打包到git\objects\pack的情况,稍后可测试下看能否直接获取并解压这个文件,还原源代码

用法示例:

GitHack.py http://www.hoolai.com/.git/

执行中截图:

git利用工具

执行结果:

git利用工具

工具下载:

GitHack-master2015.10.1 – 6.10 Kb