[发明专利]一种基于内核调试器的虚拟化逃逸防御方法有效
申请号: | 202011352216.6 | 申请日: | 2020-11-27 |
公开(公告)号: | CN112329008B | 公开(公告)日: | 2022-11-01 |
发明(设计)人: | 陈霄;肖甫;沙乐天 | 申请(专利权)人: | 南京邮电大学 |
主分类号: | G06F21/54 | 分类号: | G06F21/54 |
代理公司: | 南京正联知识产权代理有限公司 32243 | 代理人: | 王素琴 |
地址: | 210000 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 内核 调试 虚拟 逃逸 防御 方法 | ||
1.一种基于内核调试器的虚拟化逃逸防御方法,其特征在于:该虚拟化逃逸防御方法包括如下步骤:
步骤1:在Windbg内核调试器中附加虚拟机进程vmware_vmx,通过Windbg内核调试器的断点设置的指令,虚拟机进程vmware_vmx中下断点,读取进程接收到的RPCI命令以及命令携带的参数;
步骤2:对步骤1中读取到的RPCI命令进行数据包解析,并对可疑指令进行针对性研判,判断数据包长度是否存在溢出;
步骤3:在步骤2的基础上,当检测到某些命令携带的数据包长度存在溢出时,分析溢出的发生点,对关键目标块的分配方式进行自动化判别,并实现地址的可预测性,具体为:
对关键命令下,参数存在不合理的情况,进行提前预警,预先分析堆布局的溢出,及时给出安全风险的评估,对存在溢出的地址,使用Windbg命令,查看对应地址处的布局情况,分析该地址处空闲块的分配方式:
如果是前端分配,即LFH低碎片堆分配,则地址存在随机性,有利于堆溢出以及虚拟化逃逸的防范;
如果是后端分配,则地址存在可预测性,进一步预测出溢出点的准确地址,从而研判溢出点和被溢出点之间的地址关系,从地址顺序的角度判断堆溢出是否会发生,进而明确堆溢出是否会导致虚拟化逃逸的发生;
步骤4:在步骤3的基础上,通过Windbg命令和脚本,预测关键对象的分配地址与分配方式,自动化判定溢出点和被溢出对象的地址关系,通过对关键数据结构的修改,使得堆分配对象,从而防御堆溢出攻击行为。
2.根据权利要求1所述一种基于内核调试器的虚拟化逃逸防御方法,其特征在于:所述步骤1具体为:
(1)在Windows操作系统下,安装正确版本的Windbg内核调试器,同时正确配置符号表,在VMware Workstation虚拟化环境中运行Windows客户端操作系统,在主机下的Windbg内核调试器中附加虚拟机进程vmware_vmx,并且在虚拟机进程vmware_vmx的断点处,主机中的虚拟机进程vmware_vmx会使用寄存器来接收RPCI命令,并缓存命令的内容以及RPCI命令携带的参数;
(2)通过断点命令bp和内存查看命令dd或dc,即实现在虚拟机进程vmware_vmx的断点处按数据结构来显示寄存器的内容,并且不影响虚拟机操作系统的正常运作,实现命令监控,对于接收的命令,按照命令类型进行分类整合。
3.根据权利要求2所述一种基于内核调试器的虚拟化逃逸防御方法,其特征在于:所述步骤2具体为:
步骤2-1:将步骤1中收集整合的命令,综合目前虚拟化逃逸的特征,筛选RPCI命令中涉及到复制粘贴、拖放、查询指定协议版本、发送获取指定地址信息的部分;
步骤2-2:针对复制粘贴或拖放命令,研究参数之间的相关性,并且对照已有的虚拟化逃逸特征,将多次数据包的长度进行对比,判断数据叠加之后的长度是否会大于堆上原始分配的缓冲区长度,存在大于情况则表示有溢出的风险;
步骤2-3:针对查询指定协议版本的命令,判断数据包中参数是否与真实版本参数一致,不一致则表明存在堆破坏的风险。
4.根据权利要求1所述一种基于内核调试器的虚拟化逃逸防御方法,其特征在于:步骤4具体为:
步骤4-1:通过Windbg内核调试器中堆相关的命令,查看堆基址以及涉及到内存分配方式的关键数据结构地址,通过查看相关数据结构的值,判断出空闲块的分配方式以进行分配,并且结合多个数据结构进行分配地址的预测;
步骤4-2:对溢出点的地址进行预测,并且与被溢出对象地址进行比较,判断是否存在溢出,如果后端分配方式下,存在溢出点地址大于被溢出对象地址的情况,则通过修改数据结构,来保证溢出点按照预设的地址进行分配,从而在地址上破坏堆溢出,进而保证虚拟化环境的正常运行;如果是前端分配下进行溢出点的分配,则考虑随机化机制下,地址上存在溢出;
步骤4-3:综合步骤4-1和步骤4-2的分析结果,对堆溢出和逃逸行为给出最终判定情况,从堆布局的角度,防御虚拟化环境下的逃逸攻击行为。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京邮电大学,未经南京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011352216.6/1.html,转载请声明来源钻瓜专利网。