CVE-2016-7124漏洞复现
2024-09-01 11:22:09
CVE-2016-7124漏洞复现
__wakeup()魔术方法绕过
实验环境
操作机:Windows 10
服务器:apache 2.4
数据库:mysql 5.0
PHP版本:5.5
漏洞影响版本:
PHP5 < 5.6.25
PHP7 < 7.0.10
漏洞产生原因:
如果存在__wakeup方法,调用 unserilize() 方法前则先调用__wakeup方法,但是序列化字符串中表示对象属性个数的值大于 真实的属性个数时会跳过__wakeup的执行
漏洞复现
编写测试脚本
Test1.php
脚本上标明接收s参数,对其反序列化后输出name属性的值
访问test1.php
根据代码可以看出反序列化之前先调用了__wakeup 方法,再调用_destruct 方法。
将传入的序列化数据的对象变量个数由1更改为2,页面只执行了__destruct方法,而且输出name属性时报错,是由于反序列化数据时失败无法创建对象。
漏洞利用
更改测试代码
test.php
其中 __destruct方法在调用时将name参数写入wcute.php文件但是由于__wakeup方法清除了对象属性,所以在调用__destruct时已经没有了name属性,因此文件将会写入失败。
将对象属性个数改为2继续尝试,成功绕过__wakeup方法执行,将代码写入文件
最新文章
- caffe pytho接口
- install sublime for linux
- 【转】PowerShell入门(序):为什么需要PowerShell?
- pm2 开机自启动如何弄?
- Java中Runnable和Thread的区别(转)
- linux内核分析之进程地址空间管理
- 【ZT】修复iCloud中查找我的iPhone、查找我的iPad无法显示地图的方法
- Eclipse中设置注释、日期等信息
- FPGA的SPI从机模块实现
- C中运算符优先级
- shell编程之文件包含
- Ansible剧本介绍及使用演示(week5_day2)--技术流ken
- version control的简单认知
- Tomcat是什么:Tomcat与Java技、Tomcat与Web应用以及Tomcat基本框架及相关配置
- hdu 5385 The path
- altium designer 软件常用技巧总结(实时更新)
- hdu 5032 不易发觉的树状数组
- [翻译] RDVTabBarController
- 03、Windows Phone 套接字(Socket)实战之WP客户端设计
- Template 动画