OWASP TOP 3 :敏感数据泄露之Git泄露漏洞

写在前面:参考大佬的博客,表示感谢

https://blog.csdn.net/xy_sunny/article/details/107620695?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162737457916780269848352%2522%252C%2522scm%2522%253A%252220140713.130102334…%2522%257D&request_id=162737457916780269848352&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduend~default-4-107620695.first_rank_v2_pc_rank_v29&utm_term=git%E6%B3%84%E9%9C%B2&spm=1018.2226.3001.4187

我的博客写的比较主观,全凭自己的理解

什么是Git?

git是一个分布式版本控制系统,主要用来控制各种文件的发布,最常见的代码仓库github就是用git进行管理。

在提交文件的时候git有三种状态

  • 工作状态:.git文件夹
  • 暂存状态:当我们使用 git add xxx提交的时候是这种状态:.git/index
  • 完成状态 :已经使用git commit -m XXX命令的时候文件的状态:.git/object

如图
在这里插入图片描述

.git目录内容

  • config: 记录了一些配置选项.
  • 在这里插入图片描述
  • HEAD:记录了一些分支信息,目前我的分支就是master这一个分支
  • 在这里插入图片描述
  • info存放仓库的一些信息
  • refs:也是存放信息,但是这信息存放的就很重要.
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

其他的都不太重要,感兴趣,请自行百度吧

git实操

可以在Linux下先下载一个PHPstudy,这样可以省去一大堆配置的时间,少走弯路.

  • 打开目标目录
  • git初始化
  • 创建文件
  • 将文件提交到暂存区域内(-m 表示提交的注释,如果不使用-m参数那么会跳出页面提示主动输入注释,这不是文件名,需要注意)

在这里插入图片描述

  • 使用 vim修改文件
  • cat 查看文件
  • 查看文件状态
    在这里插入图片描述
  • 查看文件差异
    在这里插入图片描述
  • 提交至暂存区
  • 提交至完成区
    在这里插入图片描述
  • 查看状态:可知:head指针指向当前文件

在这里插入图片描述

  • 回退上一个版本,但是以前的版本不显示
    在这里插入图片描述

  • 找查上一个版本号:恢复
    在这里插入图片描述

不难发现,版本号就是哈希值前7位

使用工具:githack探测

githack在GitHub上可以下载,第一个就是
使用简单,直接加域名即可,如图

在这里插入图片描述

posted @ 2021-07-27 17:11  Zeker62  阅读(156)  评论(0编辑  收藏  举报