实验吧——忘记密码了(vim备份文件,临时文件(交换文件))
题目地址:http://ctf5.shiyanbar.com/10/upload/step1.php
前些天突然发现个游戏,于是浪费了好多时间,终于还是忍住了,现在专心学习,从今天开始正式写些学习笔记了。
实验吧和i春秋在我刚入门时看来觉得挺难的,做不下去,于是我入门就是做的bugku,然后bugku做完了便开始做实验吧,发现现在觉得其实好像还是挺简单的,只是第一道web题 简单的登录题(cbc字节翻转攻击)真的挺难,有空再好好研究下
首先打开界面我就随便试了一个账号
看到了一个密码重置链接,http://ctf5.shiyanbar.com/10/upload/step2.php?email=youmail@mail.com&check=???????,于是也打开
发现很快跳转,一开始我觉得check参数可以试着爆破一下,不过这位数有点长,所以也放弃了,于是用burp拦截了一下,查看下/step2.php?email=youmail@mail.com&check=???????这个页面
发现一个表单
应该是直接提交这个表单便可以绕过第二步的验证,所以利用hackbar
发现应该提交一个admin的邮箱,于是我构造了admin@mail.com以及其他几个有可能的值,发现不对,只好再去首页找线索,最后在第一个页面的源码中发现
得知admin的邮箱,同时也得知该网页由vim编辑完成,马上就想到了vim会自动生成的备份文件以及临时文件
临时文件是在编辑文本时就会创建的文件,如果程序正常退出,临时文件自动删除,如果意外退出就会保留,文件名为 .filename.swp,(第一次产生的交换文件名为“.filename.txt.swp”;再次意外退出后,将会产生名为“.filename.txt.swo”的交换文件;而第三次产生的交换文件则为“.filename.txt.swn”)
备份文件名为 filename~
于是尝试找出网站页面的源码,最终找到submit.php的交换文件 http://ctf5.shiyanbar.com/10/upload/.submit.php.swp
只要构造出email为admin的邮箱,token的长度为10且等于0就ok,所以最后http://ctf5.shiyanbar.com/10/upload/submit.php?emailAddress=admin@simplexue.com&token=0000000000