最近对某网站进行测试,发现了存在git信息泄露,可以导致网站源代码被泄露,手工折腾太复杂,网上找了几个小脚本,分享给大家。
本想自己写一个的,但是已经有好用的了,就不想折腾了。
以下内容来源于李劼杰的博客:
当前大量开发人员使用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/
执行中截图:
执行结果:
获取代码:https://github.com/lijiejie/GitHack
参考资料:Git Index Formart
非常感谢 sbp 的 gin - a Git index file parser,脚本中使用了他的解析源代码,为适用python 2.x和Windows作了细微的改动
原文地址:http://www.lijiejie.com/githack-a-git-disclosure-exploit/
from www.waitalone.cn.thanks for it.
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论