前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[ctfshow]PHP反序列化(未完)

[ctfshow]PHP反序列化(未完)

作者头像
YanXia
发布2023-04-07 17:03:57
6481
发布2023-04-07 17:03:57
举报
文章被收录于专栏:YX’blogYX’blog

WEB255

65386-dvh47j21rk.png
65386-dvh47j21rk.png

这题可以看出,是从cookie处触发了反序列化。只需要$isVip是True的状态,vipOneKeyGetFlag()即可返回flag 注意,由于此处是从cookie处触发,所以payload需要url加密

代码语言:javascript
复制
<?php
class ctfShowUser{
    public $isVip=true;
}
    $a=new ctfShowUser();
    echo urlencode(serialize($a));
?>
98453-1m4rnp5qnk7h.png
98453-1m4rnp5qnk7h.png

WEB256

该题多了个对username和password值的对比

16225-nstvkp43xk.png
16225-nstvkp43xk.png

所以,我们只需要增加个通过反序列化修改他们值的操作便好

91196-g0sy2d8verk.png
91196-g0sy2d8verk.png
14322-kq7xcercqzg.png
14322-kq7xcercqzg.png

WEB257

55399-6hdbrjx7j5l.png
55399-6hdbrjx7j5l.png

首先,我们知道__construct()函数会被new调用,所以这里我们可以修改其调用的函数,修改至backDoor().并修改$code的值来进行反序列化攻击。 所以,这里我们仅需要保证username和password不为空就够执行该后门了(后面我又发现当cat flag.php时不被执行,所以利用tac进行绕过)

62314-jhfnpvx6joi.png
62314-jhfnpvx6joi.png
43599-moasv7uad68.png
43599-moasv7uad68.png

WEB258

12804-6sdfechoi9c.png
12804-6sdfechoi9c.png
代码语言:javascript
复制
/[oc]:\d+:/i

这个正则的意思就是。匹配第一个是0或c,第二个字符是:,第三个字符跟随着数字的这种形式

代码语言:javascript
复制
\d:  匹配一个数字字符。等价于 [0-9]。
 +:  匹配前面的子表达式一次或多次。例如,'zo+' 能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等价于 {1,}。
/i:  表示匹配的时候不区分大小写

所以说如果要绕过这个正则,我们可以把0:数字这种形式改成0:+数字

放一个加号可以直接退出序列处理,从而绕过正则匹配。 详情可以参考https://www.phpbug.cn/archives/32.html

86584-xq1dqdor4a9.png
86584-xq1dqdor4a9.png
84014-4x98hte0aam.png
84014-4x98hte0aam.png

WEB260

额。这题不知道有什么意义

73263-npjd8o1klti.png
73263-npjd8o1klti.png

WEB261

26041-bl158l751f.png
26041-bl158l751f.png

在php7.4.0开始,如果类中同时定义了 __unserialize() 和 __wakeup() 两个魔术方法,则只有 __unserialize() 方法会生效,__wakeup() 方法会被忽略

__invoke()则要在将对象当做方法来使用才能触发,__sleep()则是被serialize调用,所以也可以忽略不计。 所以现在只需要梳理下图即可

50992-0t5go026v01g.png
50992-0t5go026v01g.png
代码语言:javascript
复制
$this->code==0x36d

由于这是双==,即php弱类型,所以只要传递的是877跟上字母即可

97151-e1yftg9awv.png
97151-e1yftg9awv.png
56667-5c2rkg0mnfp.png
56667-5c2rkg0mnfp.png
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年08月22日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • WEB255
  • WEB256
  • WEB257
  • WEB258
  • WEB260
  • WEB261
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档