git 源码泄露学习与题目练习

本文介绍了Git源码泄露的基本概念及原理,包括.git文件夹各组成部分的功能,以及如何利用泄露的.git文件夹来重建工程源码。同时,还提供了一个实战案例,演示了如何在Linux环境下利用wget命令下载泄露的.git文件夹,并从中获取有价值的信息。

git 源码泄露学习与题目练习

——

Git

是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。

在创建一个项目时,会在本地用 git bash 初始化一个文件,而文件夹内就会生成一个 .git 文件。
就是这么个文件,可能能够被攻击者利用,造成 git 源码泄露。
在这里插入图片描述

生成的 git 文件像这样。
在这里插入图片描述

先了解一下这些不同文件的作用

hook:存放一些sheel的地方。
info:存放仓库的信息
object:存放所有git对象的地方
refs:存放提交hash的地方
config:github的配置信息
description:仓库的描述信息,主要给gitweb等git托管系统使用
HEAD:映射到ref引用,能够找到下一次commit的前一次哈希值

——

git 信息泄露原理

  • 可以通过泄露的 .git 文件夹下的文件,还原重建工程源码。

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

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Goodric

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值