[发明专利]基于虚函数表劫持的防御方法在审

专利信息
申请号: 201610202853.2 申请日: 2016-04-01
公开(公告)号: CN105868641A 公开(公告)日: 2016-08-17
发明(设计)人: 胡昌振;单纯;王子祥;马锐;胡晶晶 申请(专利权)人: 北京理工大学
主分类号: G06F21/57 分类号: G06F21/57
代理公司: 北京理工大学专利中心 11120 代理人: 高燕燕
地址: 100081 *** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供一种基于虚函数表劫持的防御方法,可以在二进制可执行文件中决策出潜在的use‑after‑free类型漏洞的利用和进一步攻击。步骤一、使用静态指令分片和提取框架,将一个可执行文件作为输入反汇编并生成控制流图和汇编语言;步骤二、将步骤一得到的汇编语言压缩简化;步骤三、vEXTRACTOR在步骤二得到的中间语言上执行向后的程序切片;步骤四、由前三步提取所有满足虚函数调度的低级的语义,取出虚函数调度部分;步骤五、重写和配备ID;步骤六、将虚函数表的所有引用参数修改为vtables的新地址,VRewriter为每个虚拟功能的调度装备上安全检查来验证目标虚表的完整性;步骤七、将该装配了安全检查的执行代码放入一个新的代码段,保证大部分的原代码部完好无损。
搜索关键词: 基于 函数 劫持 防御 方法
【主权项】:
一种基于虚函数表劫持的防御方法,其特征在于,包括以下步骤:步骤一、使用静态指令分片和提取框架vEXTRACTOR,将一个可执行文件作为输入,保护阶段在虚函数调用前,它的vtable载入指令时,反汇编并生成控制流图和汇编语言;步骤二、将步骤一得到的汇编语言压缩简化,即将反汇编出的语言转换成中间语言,压缩简化复杂指令集为精简指令集的语法,同时保留原有代码的语义和CFG图不改变;步骤三、vEXTRACTOR在步骤二得到的中间语言上执行向后的程序切片,其中所有间接调用指令的地址提取出来并且把它定义为切片的标准,从而决定该间接指令是否是虚函数调用;步骤四、由前三步提取所有满足虚函数调度的低级的语义,取出虚函数调度部分;至此完成对二进制文件的逆向分析,提取出虚函数调度过程中的相关的数据指令;步骤五、重写和配备ID,首先创建一个只读区域,然后根据前四步识别出的虚函数调度语义,将所有虚函数表移入这个区域,装备标识在这个区域的虚函数表;步骤六、将虚函数表的所有引用参数修改为vtables的新地址,VRewriter为每个虚拟功能的调度装备上安全检查来验证目标虚表的完整性,即是否是只读的,并且包含了一个正确的ID;步骤七、将该装配了安全检查的执行代码放入一个新的代码段,保证大部分的原代码部完好无损。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/201610202853.2/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top