当前位置: 首页 > news >正文

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 后 修改满足漏洞条件触发
此图为原生类脚本

相关文章:

  • 集结号海螺捕鱼游戏源码解析(第二篇):水浒传捕鱼模块逻辑与服务器帧同步详解
  • 2025山东省职业院校技能大赛网络安全赛项样题
  • node.js 实战——(path模块 知识点学习)
  • 解决重装idea后破解jerbel的问题
  • (一)单机架构、应用数据分离架构、应用服务集群架构
  • JavaScript学习教程,从入门到精通,Ajax与Node.js Web服务器开发全面指南(24)
  • 基于javaweb的SpringBoot扶农助农平台管理系统设计与实现(源码+文档+部署讲解)
  • 前端面试场景题
  • JVM学习笔记
  • MCP 协议:AI 时代的 “USB-C” 革命——从接口统一到生态重构的技术哲学
  • URP-UGUI交互功能实现
  • Git 远程操作全攻略:从基础到实战
  • SOA(半导体光放大器)在BOTDR(布里渊光时域反射计)系统中的应用
  • [计算机科学#1]:计算机的前世今生,从算盘到IBM的演变之路
  • 「ES数据迁移可视化工具(Python实现)」支持7.x索引数据互传
  • 在 UniApp 中获取当前页面地址
  • 敏捷开发中的AI测试:未来的趋势与挑战
  • XCZU19EG-2FFVC1760I Xilinx赛灵思FPGA Zynq UltraScale+MPSoC
  • QT多元素控件及其属性
  • HTTP代理基础:网络新手的入门指南
  • 2024年度全国十大考古新发现公布,武王墩一号墓等入选
  • 科普|结石疼痛背后的危机信号:疼痛消失≠警报解除
  • 工程院院士应汉杰不再担任苏州大学校长
  • 透纳仍是英国最好的艺术家,浦东美术馆有他的画展
  • 美学术界发起集体抗议,百余高校联署声明抵制政府干预
  • 澳大利亚大选提前投票开始