[SWPUCTF 2022 新生赛]1z_unserialize
这个题目是一题很标准的反序列化,
$a = $this->lt;
$a($this->lly);
这是这一题的
注入点只要传参把$a变成system();$this->lly变成ls或者cat就是一个简单的命令注入了
构造链条
得到以下payload=O:3:"lyh":3:{s:3:"url";s:10:"NSSCTF.com";s:2:"lt";s:6:"system";s:3:"lly";s:2:"ls";}
接着传参发现能够正常执行命令
接着cat /flag
得到flag
[SWPUCTF 2022 新生赛]ez_1zpo
这题打开是一串多多的pop链
这里的利用点是
这个地方
以及这里有个wakeup的绕过,以及这里需要一个assert的函数不知道为啥要它,以及里边有一个md5的弱比较,绕过这三个就能够正常的命令执行了
接着在另外给自己传参一个参数,在这个参数里做命令执行
这个是构造的pop链
输出如下
因为wakeup的原因
三要改成四
接着就能成功命令执行了
在根目录下边找到flag的文件
得到flag