[HUBUCTF 2022 新生赛]checkin
目录
[HUBUCTF 2022 新生赛]checkin
|
|
$info = isset($_GET['info']) ? $_GET['info'] : "";
是一个三元运算符的用法。它用于检查 $_GET['info']
是否被设置,如果设置了,则将其值赋给变量 $info
,否则将空字符串赋给 $info
如果
isset($_GET['info'])
为 true
$info = $_GET['info'];
如果
isset($_GET['info'])
为 false
- $info = “”;`
根据代码中的$data_unserialize['username']
判断$data_unserialize
为数组,即传入 info 参数的内容为数组
由于无法知道 flag.php 里的 $username
和 $password
的内容是什么,想要得到 flag 需要利用 php 的弱类型比较(==)的特性:布尔值 true 在进行比较时,会被认为等于任何非空的值(包括非零的数值、非空字符串等)
综上写出 poc :
|
|
得到 payload :a:2:{s:8:"username";b:1;s:8:"password";b:1;}
欲将心事付瑶琴。知音少,弦断有谁听?