当前位置:   article > 正文

CTFHUB-Git泄露_管理员使用了git stash储存flag

管理员使用了git stash储存flag

首先下载GitHack

git clone https://github.com/BugScanTeam/GitHack

Log

 访问网站

 Where is flag?

直接上GitHack

python2.7 GitHack.py 靶机网址/.git/

 跳转到Clone了的目录下

利用此命令,获取文件的日志信息

git log

发现上一个版本叫add flag,于是恢复到上一个版本 使用reset命令

git reset --hard f71ddebc704dbe95c9485184d16b55dbce8d7b98

 git reset 命令

flag就在此目录下的txt里面了

 Stash

git stash用于想要保存当前的修改,但是想回到之前最后一次提交的干净的工作仓库时进行的操作。git stash将本地的修改保存起来,并且将当前代码切换到HEAD提交上

 

常用git stash命令

(1)git stash save "save message"  : 执行存储时,添加备注,方便查找,只有git stash 也要可以的,但查找时不方便识别。

(2)git stash list  :查看stash了哪些存储

(3)git stash show :显示做了哪些改动,默认show第一个存储,如果要显示其他存贮,后面加stash@{$num},比如第二个 git stash show stash@{1}

(4)git stash show -p : 显示第一个存储的改动,如果想显示其他存存储,命令:git stash show  stash@{$num}  -p ,比如第二个:git stash show  stash@{1}  -p

(5)git stash apply :应用某个存储,但不会把存储从存储列表中删除,默认使用第一个存储,即stash@{0},如果要使用其他个,git stash apply stash@{$num} , 比如第二个:git stash apply stash@{1} 

(6)git stash pop :命令恢复之前缓存的工作目录,将缓存堆栈中的对应stash删除,并将对应修改应用到当前的工作目录下,默认为第一个stash,即stash@{0},如果要应用并删除其他stash,命令:git stash pop stash@{$num} ,比如应用并删除第二个:git stash pop stash@{1}

(7)git stash drop stash@{$num} :丢弃stash@{$num}存储,从列表中删除这个存储

访问网页

 直接上GitHack

 跳转到目录下调用git stash命令

git stash list

 

git stash pop

 

访问目录下的.txt文件就有flag了

Index

访问网址

 

 GitHack一把梭

 查看日志

git diff 命令比较文件的不同,即比较文件在暂存区和工作区的差异。

git diff 命令显示已写入暂存区和已经被修改但尚未写入暂存区文件的区别。

git diff 有两个主要的应用场景。

  • 尚未缓存的改动:git diff
  • 查看已缓存的改动: git diff --cached
  • 查看已缓存的与未缓存的所有改动:git diff HEAD
  • 显示摘要而非整个 diff:git diff --stat

然后使用 git diff进行比对,即可看到flag

git diff a28da1bfb06a26f81caf6c1cfb6438c77f725913

 

 得到flag

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/518626
推荐阅读
相关标签
  

闽ICP备14008679号