拿到文件,winhex无线索,binwalk检测是bzip2文件,tar zjvf ctf进行解压:
看来我们拿到了某个站的git目录了 ,解压目录有个flag.txt文件,但flag并不在这里,以“.”开头的文件会被Linux自动隐藏,查看隐藏文件看到.git目录,大致浏览了下,接着对.git目录进行操作(在.git目录外操作):
先简单说下git stash
git stash 的作用
git stash用于想要保存当前的修改,但是想回到之前最后一次提交的干净的工作仓库时进行的操作.git stash将本地的修改保存起来,并且将当前代码切换到HEAD提交上.通过
git stash存储的修改列表,可以通过git stash list查看.git stash show用于校验,git stash apply用于重新存储.直接执行git stash等同于git stash save.
摘自:https://www.jianshu.com/p/14afc9916dcb
1、git log(查看git记录)
给出了一个最近上传的文件,但是目录中并不存在这个文件,看来也是没什么用。
2、git stash list(查看修改列表)![]()
看来存储列表是有东西的。
3、git stash show(校验一下列表中的存储文件)
4、git stash apply(重新储存,把上面的文件复原)
这样就得到了flag.txt和s.py,运行s.py即得flag。

本文介绍如何使用GitStash恢复隐藏的修改,通过分析.git目录下的存储列表,利用GitStashShow和GitStashApply命令,成功找回被隐藏的flag.txt文件和s.py脚本,最终运行s.py得到flag。





