开卷看题
/flag_php/1.png)
题干很重要,先记一记
/flag_php/2.png)
经典的登录框
寻找线索
根据标题和URL路径提示,习惯性的访问了一下flag.php发现存在且只有一行,很可能是flag变量的定义
为求谨慎,扫描了一下目录,发现只有index和flag两个页面
看看题干,首先说点了login为什么没反应,看看源码呗
/flag_php/3.png)
你个糟老头子坏得很,这要是有反应就见鬼了
看来这题要么就是爆破要么就是注入,为了方便起见我们先用BP自动修改HTML
/flag_php/4.png)
搞定之后BP就会自动替换内容,方便操作
接下来就是尝试时间了,爆破注入全都不好使,看来应该不是从这里入手
陷入迷雾
题干的第一句话已经解决了(虽然没什么用)
看来破案的重点就是第二个提示:hint,这个单词究竟有什么深邃的含义呢?
就在万般无奈的时候,看了一眼桌上的A4纸,突然想到了一个单词:margin
记得以前的题目中margin是作为参数的,那么这次会不会也是
尝试提交hint参数
/flag_php/5.png)
这hint可真够劲,GOOD,GOOD,six six six
代码分析
1 |
|
总结一下:当cookie参数ISecer反序列化后完全等于变量KEY时输出flag
代码不难但是陷阱到不少,主要有二:
- 看下格式化之后的代码,你发现了什么?
- KEY变量被赋值的位置
- 老规矩,看不懂私信我,包教包会
羽化登仙
填了坑,接下来就是舒服的获取flag环节了
Note:写到这里突然发现前面写的都凭空消失了,WTFK????????? 还好有Git,还原了文件内容,GIT牛脾
小插曲不要紧,flag才重要,上图
/flag_php/6.png)
YES,收工
后记
GIT真香
说错了,是具备良好的基础很重要
其实上一句也不重要,最重要的是不要被作者忽悠
其实也不对,相信自己的判断吧