.GIT文件泄露利用

Git 文件泄露笔记

来源:DeepSeek AI 对话整理
日期:2026-03-11

一、什么是 Git 泄露

.git 文件泄露是一种常见且危害较大的敏感信息泄露场景。源于 Git 版本控制系统在项目中生成的 .git 目录被意外暴露在 Web 服务器上。

攻击者可通过该目录获取项目的:

  • 完整源代码
  • 历史提交记录
  • 配置文件
  • API 密钥/凭证
  • 其他敏感信息

二、.git 目录结构

.git 目录包含以下关键文件:

文件/目录作用
config仓库配置信息
HEAD当前分支指针
index暂存区索引
objects/对象存储(commit、tree、blob)
refs/引用信息(分支、标签)
logs/提交日志

三、漏洞利用

1. 发现方法

  • 目录扫描:dirmapdirsearchgobuster
  • 常见路径:/.git/config/.git/HEAD
# dirmap 扫描
python3 dirmap.py -i target.com -lcf

# gitweb 或其他 Git 服务
/.git/
/.git/config
/.git/HEAD

2. 利用工具:GitHack

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

安装:

git clone https://github.com/lijiejie/GitHack.git
cd GitHack

使用:

# Python2 运行
python2 GitHack.py http://target.com/.git/

结果:
还原后的项目存储在 dist/目标域名/ 目录中,包含完整源代码和版本历史。

3. 手工利用

# 克隆整个 .git 仓库
git clone http://target.com/.git/

# 查看提交历史
git log

# 查看所有分支
git branch -a

# 查看 stash(可能包含未提交的敏感内容)
git stash list
git stash show

四、其他相关泄露

类型目录利用工具
SVN 泄露.svn/SvnHack
GitLite 泄露.git/GitHack
DS_Store 泄露.DS_Storeds_store_exp

五、防御措施

  1. 禁止访问 .git 目录
    • Web 服务器配置禁用 .git 目录访问
    • Nginx 配置:
    location ~ /\.git { deny all; }
  2. 发布前删除 .git 目录
  3. 使用 .gitignore 排除敏感文件
  4. 定期安全扫描

六、实战思路

  1. 信息收集 → 发现 .git 目录
  2. 使用 GitHack 还原源码
  3. 代码审计 → 发现新漏洞(SQL注入、文件上传、RCE等)
  4. 利用漏洞获取权限

参考工具

文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇