- 0
- 0
- 约5.39千字
- 约 24页
- 2026-01-22 发布于浙江
- 举报
项目11
靶机反序列化漏洞与审计
Web安全漏洞及代码审计(第2版)(微课版);
01项目知识准备
漏洞介绍
当程序对用户输入的内容(不可信数据)进行反序列化处理时,攻击者可以通过构造恶意输入,利用反序列化产生非预期的对象,而非预期的对象在产生过程中就会造成反序列化漏洞。
基础知识
1.序列化与反序列化
在PHP中,可以通过序列化与反序列化很方便地进行对象的传递,轻松地存储和传输数据。从本质上来说,这并不存在安全隐患,但是由于用户可以控制输入的序列化内容,即用户可以传入恶意的序列化数据,因此程序在对恶意数据进行反序列化处理时就可能存在安全风险。常见的PHP序列化和反序列化方式主要包括使用serialize()、unserialize()、json_encode()、json_decode()等函数。;
这里需要强调的是_sleep()、_toString()和_wakeup()魔术方法。serialize()函数在对象被序列化之前会检查类中是否存在_sleep()魔术方法,如果存在,则会先调用该方法,再执行序列化操作,并返回一个包含对象中所有应被序列化的变量名称的数组。如果该方法未返回任何内容,则NULL会被序列化,并产生一个
E_NOTICE级别的错误。_toString()魔术方法是在一个对象被当作一个字符串使用时被调用的,如果该方法返回了字符串,则表明是该对象转换为字符串的结果,如果没有定义该方法,则该对象无法被当作字符串使用,此魔术方法也是比较常见的。unserialize()函数在反序列化之前会检查是否存在_wakeup()魔术方法,
如果存在,则会先调用_wakeup()魔术方法,并预先准备对象需要的资源,再返回void。_wakeup()魔术方法常用于反序列化操作中需要重新建立数据库连接或执行其他初始化操作的情况。;
01项目知识准备
基础知识
2.常用魔术方法
_construct()→/1-在对象被创健时触发
_destruct(→/·在对象被销毁时触发
_call()→→/·在对象上下文中调用不可访问的方法时触发_callStatic()·→//-在静态上下文中调用不可访问的方法时触发_get(→→//·用于从不可访问的属性中读取数据
_set()→→//·用于对数据写入不可访问的属性
_isset()→→/·在不可访问的属性上调用issetO或empty0函数时触发_unset()-→/·在不可访问的属性上调用unset(函数时触发?
_invoke()·→/·在脚本尝试将对象调用为函数时触发
_toString(→//·在把类当作字符串使用时触发
_sleep(-→/·在使用serialize()函数时触发
wakeup)→/I-在使用unserialize(函数时触发;
01项目知识准备
基础知识
3.构造POP链
面向属性编程(Property-OrientedProgramming)用于构造特定调用链,类似于二进制利用中的面向返回编程(Return-OrientedProgramming),二者都是先从现有运行环境中寻找一系列代码或指令调用,然后根据需求构造一组连续的调用链,在控制代码或程序的执行流程后,就能够使用这组调用链来执行一些操作。要想利用PHP的反序列化漏洞,需要满足两个条件:一个是可以控制传入unserialize()函数的参数;另一个是存在魔术方法和危险函数。反序列化漏洞就是程序在进行反序列化操作时执行魔术方法,导致魔术方法中的危险函数被执行而产生的漏洞。
在进行反序列化攻击时,如果需要利用的危险函数不在魔术方法中,而是在一个类的普通方法中,此时就需要构造POP链,寻找相同的函数名,将类的属性和敏感函数的属性联系起来。;
01项目知识准备
审计思路
在审计反序列化漏洞时
一般可以通过全局搜索_wakeup()和_destruct()等魔术方法追踪整个调用过程,判断反序列化数据是否可控,以及被利用的危险函数是否在魔术方法中执行。;
02任务1反序列化漏洞分析
任务目标
能够进行反序列化漏洞的分析
了解世界技能大赛中的网络安全项目和我国选手的参赛情况,弘扬劳动光荣、技能宝贵、创造伟大的时代风尚。
任务实施
1.serialize()函数;
02
您可能关注的文档
- 《汽车涂装技术(第2版)》中职PPT完整全套教学课件_701-1050.pptx
- 《商务礼仪》中职PPT完整全套教学课件.pptx
- 《市场营销(第四版)》中职PPT完整全套教学课件.pptx
- 《网络安全防护项目教程》_子任务913无线网络拓扑结构.pptx
- 《网络安全防护项目教程》_子任务914VPN简介.pptx
- 《网络安全防护项目教程》_子任务1311了解网络嗅探.pptx
- 《网络安全防护项目教程》_子任务1321网络协议分析技术认识.pptx
- 《网页设计与制作项目教程》_任务3制作“学习资料”子页面.pptx
- 《网页设计与制作项目教程》_任务10首页导航栏板块的设计与制作.pptx
- 《现代化施工组织与管理(第二版)》中职PPT完整全套教学课件.pptx
- 2026浙江绍兴市经济作物技术推广中心招聘编外人员1人备考题库及答案详解1套.docx
- 睡眠医学:睡眠问题研究材料课件.pptx
- 2025年龙口事业单位真题.docx
- 辽宁省朝阳市2026届高三生物下学期3月一模试题.doc
- 钢结构施工现场安全检查方案.docx
- 2025至2030中国淋浴房行业市场深度研究与战略咨询分析报告.docx
- 2026浙江绍兴市经济作物技术推广中心招聘编外人员1人备考题库及完整答案详解.docx
- 2026浙江绍兴市经济作物技术推广中心招聘编外人员1人备考题库及参考答案详解1套.docx
- 三明市将乐县招聘专业教师笔试真题2025.docx
- 三明市泰宁县专业教师招聘笔试真题2025.docx
最近下载
- 一把手 2025年度在带头强化政治忠诚、提高政治能力;在带头固本培元、增强党性;在带头敬畏人民、敬畏组织、敬畏法纪;在带头干事创业、担当作为;在带头坚决扛起管党治党责任五个带头方面存在的问题.docx VIP
- 四川成都农业科技中心招聘真题2024.docx VIP
- 四库全书基本概念系列文库:韵略汇通.pdf VIP
- 元气森林外星人电解质水校园圈层营销方案.pptx VIP
- 中国儿童社交技能评估量表(儿童).docx VIP
- 成都农业科技中心招聘考试真题2024.docx VIP
- 《新媒体翻译(校企)》课程教学大纲(本科).docx VIP
- 《新媒体翻译(校企)》课程教学大纲(本科).pdf VIP
- 2024年成都农业科技中心招聘考试真题.pdf VIP
- 简论在象牙门与兽角门的交叉路口追寻道德要义.doc VIP
原创力文档

文档评论(0)