构造pop链

反序列化视频笔记

第一步:找到目标触发echo调用$flag

第二步:触发_invoke函数调用appeng函数$var=flag.php(把对象当成函数)

第三步:给$p赋值为对象,即function成为对象Modifier却被当成函数调用,触发Modifier中的_invoke函数

第四步:触发get(调用不存在的成员属性)

第五步:给$str赋值为对象Test中不存在的成员属性source,则可触发Test里的成员方法get

第六步:触发_tostring(把对象当成字符串)

第七步:给source赋值为对象show,当字符串被echo调用触发_tostring

第八步:反序列化触发_wakeup。

所以构造poc、

私有属性$var只能在里面构造$var=flag.php

$mod=new modifier();

$tes=new test();

$tes ->p=$mod;

$show =new show();

$show -> source=$show;

$show ->str=$tes;

echo serialize($show);

记得私有属性的方块要变成%00

url提交

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/431335.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于springboot+vue的校园网上店铺

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

Android开发者必看,我的移动开发春季历程

热修复介绍 1.开发流程 当项目出现紧急bug时,传统的开发流程是发布新版本,引导用户覆盖安装。抛开平台审核上线的时间不说,一天重复下载安装至少两次的用户体验是很差的。而热修复的出现完美解决了这个问题,用户在收到服务器推送…

概要了解postman、jmeter 、loadRunner

postman还蛮好理解的,后续复习的话着重学习关联接口测试即可,感觉只要用几次就会记住: 1 从接口的响应结果当中提取需要的数据 2 设置成环境变量/全局变量(json value check 、set environment para 3写入到下一个接口的请求数据中…

python三剑客之一——Numpy

温故而知新,借着工作需要用到Numpy的机会重新学习一遍Numpy。 Numpy是一个运行速度非常快的数学库,主要用于数组计算,包含如下: 一个强大的N维数组对象ndarray【Nd(Dimension维度)array】 广播功能函数 整…

找不到msvcr100.dll怎么办,多种解决方法快速修复msvcr100.dll问题

当计算机系统中关键文件msvcr100.dll丢失时,可能会引发一系列运行问题和故障现象。msvcr100.dll是Microsoft Visual C Redistributable Package的一部分,对于许多基于Windows的应用程序正常运行至关重要。由于msvcr100.dll是许多应用程序运行所必需的动态…

22.基于springboot + vue实现的前后端分离-汽车票网上预定系统(项目 + 论文PPT)

项目介绍 系统是一个B/S模式系统,采用Spring Boot框架,MySQL 数据库设计开发,充分保证系统的稳定性。系统具有界面清晰、操作简单,功能齐全的特点,使得汽车票网上预订系统管理工作系统化、规范化。本系统的使用使管理人…

外包干了3个月,技术倒退明显

先说情况,大专毕业,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试&#xf…

第1题:两数之和

题目内容: 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。…

Vue 3的Composition API和vue2的不同之处

Vue 3的Composition API是Vue.js框架的一个重要更新,它提供了一种新的组件逻辑组织和复用方式。在Vue 2中,我们通常使用Options API(data、methods、computed等)来组织组件的逻辑,但这种组织方式在处理复杂组件时可能会…

如何搭建Nacos集群

1.搭建Nacos集群 众所周知,在实际的工作中,Nacos的生成环境下一定要部署为集群状态 其中包含3个nacos节点,然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。 我们计划的集群结构: 我就直接在本机上开三个Nacos来搭…

python基础——基础语法

文章目录 一、基础知识1、字面量2、常用值类型3、注释4、输入输出5、数据类型转换6、其他 二、字符串拓展1、字符串定义2、字符串拼接3、字符串格式化4、格式化精度控制 三、条件/循环语句1、if2、while3、for循环 四、函数1、函数定义2、函数说明文档3、global关键字 五、数据…

02:HAL库---GPIO

一:GPIO 1:简历 2:模式 输入 : IO向32发送信号, 即外设发送信号 GPIO_Mode_AIN -----模拟输入 GPIO_Mode_IN_FLOATING -----浮空输入 GPIO_Mode_IPD -----下拉输入 GPIO_Mode_IPU ------上拉输入 GPIO_MODE_INPUT----输入模式 输出 : 32向IO发送信号, 即外设接收信号 …

JavaScript实现鼠标移动特效

关键代码&#xff1a; <script>document.onmousemove function (e) {// 加div节点var div document.createElement(div);div.style.width 5px;div.style.height 5px;// 加img节点var img document.createElement(img);// 将Img追加到div里面。div.appendChild(img);…

MongoDB Helloworld For Window

1. 下载MongoDB Download MongoDB Community Server | MongoDB 2. 安装MongoDB 3. 创建DB. 4. 用java code 连接mongo. 做增删改查操作。 pom.xml <dependency><groupId>org.mongodb</groupId><artifactId>mongodb-driver-sync</artifactId>&…

Android开发者应该会哪些东西才不会被公司淘汰,阿里P7大佬手把手教你

去年疫情的影响可以说是地狱级的。各大厂都在裁员&#xff0c;我也顺理成章的被公司下架了。 35岁&#xff0c;还有一种尴尬是 别人眼中的你应该是他们未来以为能活成的样子&#xff0c; 和如今真正的自己… 我做了什么 刚被裁掉的那一阵子&#xff0c;我整个人都是懵掉的&am…

网络编程作业day5

将课堂上实现的模型&#xff08;IO多路复用&#xff09;重新自己实现一遍 服务器代码&#xff1a; #include<myhead.h> #define SER_IP "192.168.125.151" //服务器IP #define SER_PORT 8888 //服务器端口号int main(int argc, const char *argv…

wvp-gb28181-pro国标设备录像下载

点击【国标设备】&#xff0c;进入设备通道 每个通道右边都有对应的操作&#xff0c; 点击操作栏中的【设备录像】按钮 点击【设备录像】进入录像查看页面&#xff0c;选择要查看的日期即可对录像进行播放和下载 播放&#xff1a;双击录像名称 下载&#xff1a;点击下载按钮 下…

周边类-找厕所小程序源码

源码获取方式 1&#xff0c;搜一搜 万能工具箱合集 点击资料库 即可进去获取 找厕所小程序源码依赖于腾讯地图的一款源码&#xff0c;腾讯地图api免费申请&#xff0c;是一款免费又永久的不需要服务器的小程序&#xff0c;起个好名字蹭蹭蹭~ 搭建教程&#xff1a; 1、下载源码…

【EI会议征稿通知】第七届交通运输与土木建筑国际学术论坛(ISTTCA 2024)

第七届交通运输与土木建筑国际学术论坛&#xff08;ISTTCA 2024&#xff09; 2024 7th International Symposium on Traffic Transportation and Civil Architecture 交通运输是经济发展的先行官&#xff0c;而岩土是发展交通运输网络无法避开的话题。将传统的土木工程技术与先…

Java 面试题及答案整理,最新面试题

Java中的内存模型是如何设计的&#xff1f; Java的内存模型主要包括堆、栈、方法区和本地方法栈几个关键部分&#xff1a; 1、堆&#xff08;Heap&#xff09;&#xff1a; 这是Java内存管理中最大的一块&#xff0c;被所有线程共享。在堆中主要存放对象实例和数组。 2、栈&…