1、打开网页是一个gif动图
2、查看源代码
发现disallow,说明应该和robots有关。
Robots 协议(也称为爬虫协议、机器人协议等)的全称是 “网络爬虫排除标准”(Robots Exclusion Protocol),网站通过 Robots 协议告诉搜索引擎哪些页面可抓,哪些页面不能抓。
disallow就是爬虫不能搜索的所以我们去看看robots.txt
当然也可以直接用御剑扫后台,这里的flag.php进不去
3、看到可疑的php文件,访问一下,得到源码,下面就是代码审计了
代码详解
首先创造了一个类wllm,定义了两个公共属性admin,passwd,又定义两个方法,这两个方法都是魔术方法
__construct() //对象创建(new)时会自动调用
__destruct() //对象被销毁时触发
在__construct()中,给admin和passwd赋了值($this代表wllm这个类,$this->admin代表wllm这个类调用它的属性admin)
在__destruct()中,出现if判断,当admin和passwd分别强相等为admin和ctf时,包含flag.php这个文件,并且输出$flag这个变量,否则输出admin和passwd的值和Just a bit more!
===强相等代表不仅要数值相等,还必须类型相同
==弱相等只需要数值相等
比如:
a为字符型的1
a==1正确
a===1错误
最后,通过GET方式传参,接收数据的字符为p,并赋值给$p
反序列化$p
4、构造payload
复制源码,把不需要的部分注释掉,再补充序列化的代码,将admin和passwd的值改为触发if条件的值,即可得到payload