一个多线程的 .git 文件夹利用工具。即使禁用了目录列表(DirectoryListings),也能通过暴力破解已知引用来完整重建目标仓库——包括源代码、提交历史、分支、暂存区、远程仓库和标签。
配套研究网站位于 https://githacker.pages.dev,发布了:
.git/ 目录运行每个工具,并跟踪协调披露的结果。你正在下载的远程 .git 可能包含恶意内容。已公开的研究表明,通过精心构造的 .git/config、钩子、子模块、LFS 对象和 HTTP 重定向,可以实现针对掠夺工具(pillagers)的代码执行、任意文件写入和 SSRF。请在一次性容器中运行 GitHacker:
docker run -v $(pwd)/results:/tmp/githacker/results \
wangyihang/githacker \
--url http://target/.git/ \
--output-folder /tmp/githacker/results
安全页面 同时记录了 GitHacker 自身的加固历史,以及针对其他掠夺工具的前披露发现。
# 帮助
docker run wangyihang/githacker --help
# 单个目标
docker run -v $(pwd)/results:/tmp/githacker/results \
wangyihang/githacker \
--url http://target/.git/ \
--output-folder /tmp/githacker/results
# 暴力破解分支和标签名称(当目录列表关闭时使用)
docker run -v $(pwd)/results:/tmp/githacker/results \
wangyihang/githacker --brute \
--url http://target/.git/ \
--output-folder /tmp/githacker/results
# 多个目标,每行一个 URL
docker run -v $(pwd)/results:/tmp/githacker/results \
-v $(pwd)/websites.txt:/websites.txt \
wangyihang/githacker --brute \
--url-file /websites.txt \
--output-folder /tmp/githacker/results
pip install GitHacker
githacker --help
githacker --url http://target/.git/ --output-folder result
githacker --brute --url http://target/.git/ --output-folder result
githacker --brute --url-file websites.txt --output-folder result
依赖要求:git >= 2.11.0,Python 3.10+。
对比结果实时显示在仪表板上,因此表格不会与实际情况脱节: https://githacker.pages.dev/benchmark。
每次基准测试运行都会重新生成对比(通过 GitHub Actions 每周自动运行,也可手动触发)。在撰写本文时,GitHacker 是唯一一个在所有五种 Web 服务器场景下恢复 100% 工件,并在已发布的对抗性语料库上获得 100% 通过的工具。
设置:
git clone https://github.com/WangYihang/GitHacker
cd GitHacker
uv sync --group dev
运行单元测试:
uv run pytest
运行完整的基准测试/安全测试框架(需要 Docker):
python -m benchmark run # 7 个工具 × 5 种 Web 服务器场景
python -m benchmark security # 对抗性语料库
两者都将 JSON 写入 docs/public/data/;文档站点将在下次构建时加载这些数据。完整框架设计:
https://githacker.pages.dev/methodology。

.git/config 中 core.fsmonitor 的各种滥用, 2022 — https://github.com/justinsteven/advisoriescore.fsmonitor / 递归下载器安全公告(2022)。add_head_file_tasks / add_hashes_parsed 中的路径遍历(CVE 待定;已合并到单一信任门控修复中,提交 5f2a8ba)。THE DRINKWARE LICENSE
<[email protected]> 编写了此文件。只要
你保留此声明,你可以随意处理
此内容。如果我们某天相遇,并且你认为
此内容有价值,你可以请我喝以下
饮料作为回报。
红牛
JDB(加多宝)
咖啡
雪碧
可乐
哈尔滨啤酒
等等
王翌航