Git隐藏flag的新姿势


隐藏流程 :

mkdir misc
cd misc
git init
echo "my file" > index.php
git add index.php
git commit -m "Init commit"
echo "SniperOJ{xxxxxx}" > flag
git stash save "hide my flag"
git log
git reflog

非标准恢复流程 :

这个题目当时我并不是通过 git 命令直接 做出来的
而是使用 : 
cat `find .`
这个命令可以直接递归打印当前文件夹下所有的文件内容
然后看到了一条比较奇怪的 commit id
image.png

然后直接 reset 到这个 commit id 就可以直接恢复到提交 flag 的缓存之前的那个状态了

image.png

标准恢复流程

法一

git log --reflog
git reset --hard af36ba2d86ee43cde7b95db513906975cb8ece03
image.png

法二

git stash list | tee
git stash pop # 或者使用 git stash apply
image.png

参考链接 :

https://git-scm.com/book/tr/v2/Git-Tools-Stashing-and-Cleaning
http://blog.csdn.net/hudashi/article/details/7664710
https://github.com/jivoi/junk/blob/master/pwnerrank/misc/git.sh

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容