PHP 反序列化&原生类 TIPS&字符串逃逸&CVE 绕过漏洞&属性类型特征


#PHP- 属性类型 - 共有 & 私有 & 保护
1 、对象变量属性:
public( 公共的 ): 在本类内部、外部类、子类都可以访问
protect( 受保护的 ): 只有本类或子类或父类中可以访问
private( 私人的 ): 只有本类内部可以使用
2 、序列化数据显示:
public 属性序列化的时候格式是正常成员名
private 属性序列化的时候格式是 %00 类名 %00 成员名
protect 属性序列化的时候格式是 %00*%00 成员名
<?php
header("Content-type: text/html; charset=utf-8");
//public private protected 说明
class test{
public name="xiaodi"; private age="31";
protected sex="man"; } a=new test();
a=serialize(a);
print_r($a);
?>
#PHP- 绕过漏洞 -CVE& 字符串逃逸
1 、 CVE-2016-7124 ( __wakeup 绕过)
漏洞编号: CVE-2016-7124
影响版本: PHP 5<5.6.25; PHP 7<7.0.10
漏洞危害:如存在 __wakeup 方法,调用 unserilize() 方法前则先调用 __wakeup 方
法,但序列化字符串中表示对象属性个数的值大于真实属性个数时会跳过 __wakeup 执行
Demo :见 CVE.PHP 与版本切换演示
案例:

极客大挑战 2019\]PHP 1 、下载源码分析,触发 flag 条件 2 、分析会触发调用 __wakeup 强制 username 值 3 、利用语言漏洞绕过 CVE-2016-7124 4 、构造 payload 后 修改满足漏洞条件触发 ![](https://i-blog.csdnimg.cn/direct/1db473f5dfb0471594fec1eb4de32bc2.png) ![](https://i-blog.csdnimg.cn/direct/54a295d7920541e7b3f3e701ce9c98ea.png) ![](https://i-blog.csdnimg.cn/direct/b742d1fd50854a89b012fb6b3579007e.png) ![](https://i-blog.csdnimg.cn/direct/974f93aea8544100a3abf617273d353e.png) ![](https://i-blog.csdnimg.cn/direct/838f0ad099134066a2378169497399d0.png)此图为原生类脚本

相关推荐
一碗情深3 分钟前
Android 开发环境解析:从SDK、NDK到版本兼容性指南
android·安卓·sdk·ndk
almighty275 分钟前
C# WPF实现ComboBox实时搜索与数据绑定
开发语言·c#·wpf·combobox
00后程序员张10 分钟前
App 上架全流程指南,iOS 应用发布步骤、ipa 文件上传工具、TestFlight 分发与 App Store 审核经验分享
android·ios·小程序·https·uni-app·iphone·webview
2501_9160137415 分钟前
iOS App 上架流程详解,苹果应用发布步骤、App Store 审核规则、ipa 文件上传与测试分发实战经验
android·ios·小程序·https·uni-app·iphone·webview
菜鸟小九17 分钟前
SSM(MybatisPlus)
java·开发语言·spring boot·后端
数据知道20 分钟前
Go基础:常用数学函数处理(主要是math包rand包的处理)
开发语言·后端·golang·go语言
学习同学21 分钟前
从0到1制作一个go语言服务器 (一) 配置
服务器·开发语言·golang
大飞pkz25 分钟前
【设计模式】桥接模式
开发语言·设计模式·c#·桥接模式
数据知道38 分钟前
Go基础:文件与文件夹操作详解
开发语言·后端·golang·go语言
FreeBuf_39 分钟前
Zloader木马再次升级:通过DNS隧道和WebSocket C2实现更隐蔽的攻击
websocket·网络协议·php