.git文件泄露常见手法

(1)下载git文件

  1. 使用linux系统的wget命令下载
    wget -r <ip:port>/.git
    其中-r参数是递归下载,.git文件下的所有文件
  2. githack
    开源工具 https://github.com/lijiejie/GitHack
    使用命令:
    python3 GitHack.py http://target/.git/
    可以自动解析回复仓库源码
  3. git-dumper
    开源工具 https://github.com/arthaud/git-dumper
    使用命令
    python3 git_dumper.py http://target/.git/ ./source
    同样自动解析还原仓库

(2)git文件结构解析

  • HEAD:指向当前分支的指针。
  • config:存储仓库的配置信息。
  • description:用于描述仓库的简要信息,通常只在裸仓库中使用。
  • hooks:存放各种客户端或服务器端的钩子脚本,可以用来执行特定操作(如提交前的检查等)。
  • info:存储一些额外的配置信息,例如排除文件列表(exclude)。
  • objects:存储所有的数据对象(如提交对象、树对象和Blob对象)。
  • refs:存储分支、标签等的引用信息。
    通过泄露的git文件,可以还原以下敏感信息:
  • 当你的网站根目录下存在 .git 文件夹,并且该文件夹被错误地暴露在公网上时,攻击者就可以通过访问 .git 文件夹获取到你的项目代码、提交记录、分支信息等等敏感信息。
  • 访问源码:攻击者可以下载 .git 目录,并还原出完整的源码,包括可能敏感的配置文件、数据库凭据等。
  • 获取历史版本:攻击者可以查看项目的历史提交记录,找到敏感信息,例如在历史版本中意外提交的密码。
  • 分析开发历史:攻击者可以分析提交日志、分支结构等,了解开发流程和关键变更点,甚至发现潜在的漏洞。

(3)常用的git命令

  1. 查看日志
    git log或者git reflog
  2. 查看分支详细
    git checkout ;
    ls;
    cat ;
    或者
    show
  3. 强制回退代码版本
    git reset --hard
  4. 查看临时保存区
    git stash list
    git stash show -p(查看具体内容)
  5. 查看tag标签
    git tag
    查看tag内容:git show
  6. 查看所有分支
    git branch -a
  7. 查看忽略文件
    cat .gitignore
相关推荐
2501_920047032 小时前
iptables防火墙
linux·运维·网络安全
搞科研的小刘选手4 小时前
【人工智能专题研讨会】第五届人工智能与智能信息处理国际学术会议(AIIIP 2026)
人工智能·神经网络·机器学习·网络安全·数据挖掘·人机交互·信息处理
Chengbei116 小时前
对标PentestGPT!新一代去中心化集群式AI全自动渗透测试工具
网络·人工智能·网络安全·去中心化·区块链·系统安全
梧六柒6 小时前
12-%00截断(Get型)
网络安全
Chockmans7 小时前
春秋云境CVE-2022-32992(文件上传和sql注入)保姆级教学
数据库·sql·安全·网络安全·网络攻击模型·春秋云境·cve-2022-32992
m0_738120727 小时前
渗透测试基础知识——从零认识JWT(JSON Web Token)身份令牌
服务器·前端·安全·web安全·网络安全·json
2601_956002817 小时前
【完美解决】Telega纸飞机收不到验证码?短信收费弹窗提示?2026最新老号/新号全网最全复活教程(转存后看教程(看到请立即转存 资源随时失效)手机版通用
网络安全·友善·爱国·诚信
电子科技圈8 小时前
大理5G研究院加速建设面向南亚东南亚新一代信息技术产业化合作新通道
人工智能·物联网·5g·网络安全·信息与通信
深邃-8 小时前
【Web安全】-企业资产信息收集(1):信息收集介绍,域名信息收集,主域名查询,ICP备案号查询,备案实体查询,工业和信息化部政务服务平台查询,怎样收集
安全·web安全·网络安全·安全威胁分析·政务·信息收集
X7x58 小时前
数据防泄漏(DLP):企业数字资产的“隐形守护者“
网络安全·网络攻击模型·安全威胁分析·安全架构·dlp