[发明专利]一种基于简易符号执行的二进制代码漏洞挖掘方法有效

专利信息
申请号: 201210243800.7 申请日: 2012-07-13
公开(公告)号: CN102841844A 公开(公告)日: 2012-12-26
发明(设计)人: 马金鑫;李舟军;忽朝俭 申请(专利权)人: 北京航空航天大学
主分类号: G06F11/36 分类号: G06F11/36
代理公司: 北京慧泉知识产权代理有限公司 11232 代理人: 王顺荣;唐爱华
地址: 100191*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 简易 符号 执行 二进制 代码 漏洞 挖掘 方法
【权利要求书】:

1.一种基于简易符号执行的二进制代码漏洞挖掘方法,其特征在于:该方法包括以下步骤:

步骤A.实现反汇编引擎,提取二进制代码中的函数信息,并分析函数内的控制流信息;

步骤B.实现二进制代码翻译组件,将二进制代码转化成中间语言;

步骤C.确认输入点即函数的参数及子函数调用,对函数中调用的子函数进行建模;

步骤D.根据步骤A,B,C中产生的结果进行符号执行,把输入作为符号,静态解释中间语言并更新每条指令执行的上下文,对于分支,需要保存当前上下文,遍历一条路径后,再恢复保存的上下文,继续执行下一条路径;

步骤E.当执行到函数结束时,符号执行过程产生一些与输入相关的表达式集合,根据安全属性规则,简化、分析这些表达式最后判断是否有漏洞。

2.根据权利要求1所述的一种基于简易符号执行的二进制代码漏洞挖掘方法,其特征在于:步骤A中所述的二进制代码为Windows、Linux操作系统下的x86可执行代码;所述控制流信息是由基本块信息组成的链表,基本块信息包括:

A1.基本块标号Label,表示该基本块的标识符,值唯一;

A2.基本块的开始地址Start Address;

A3.基本块的结束地址End Address;

A4.基本块的入度数In Count,表示到达该基本块的前驱的数量,入度数为0的基本块为本函数的第一个基本块;

A5.基本块的出度数Out Count,表示由该基本块到达的后继的数量,该值不大于2,出度数为0的基本块为本函数的最后一个基本块;

A6.基本块的前驱数组,表示到达该基本块的前驱的集合;

A7.基本块的后继数组,表示由该基本块到达的后继的集合;

A8.循环标志,表示该基本块是否处于循环中。

3.根据权利要求1所述的一种基于简易符号执行的二进制代码漏洞挖掘方法,其特征在于:步骤B所述的中间语言中,包括三种存储介质:

B11.临时变量,在每个基本块中临时申请,用于实现静态单赋值,为寄存器与内存间的媒介;

B12.寄存器,与机器指令中的寄存器相同,读写寄存器使用中间语言中的Get和Put操作完成;

B13.内存,内存地址由常量或临时变量表示,读写内存使用中间语言中的LDle和STle操作完成;

步骤B中所述的中间语言由语句IRStmt组成,语句IRStmt包括:

B21.IMark语句,表示每个基本块的入口标志,其中包括该基本块对应机器指令的开始地址及该指令的字节数;

B22.Put语句,表示把临时变量的值写入寄存器;

B23.Store语句,表示把临时变量的值写入内存;

B24.IRDirty语句,表示调用有副作用的函数;

B25.Exit语句,表示基本块的出口。

4.根据权利要求3所述的一种基于简易符号执行的二进制代码漏洞挖掘方法,其特征在于:所述的语句IRStmt由表达式IRExpr组成,表达式IRExpr包括:

B31.Get表达式,表示从寄存器中读取值;

B32.Tmp表达式,表示临时变量;

B33.Binop表达式,表示二元操作;

B34.Unop表达式,表示一元操作;

B35.Load表达式,表示从内存中读取值;

B36.Const表达式,表示常量;

B37.MuxOX表达式,表示if-then-else语句。

5.根据权利要求1所述的一种基于简易符号执行的二进制代码漏洞挖掘方法,其特征在于:步骤C所述的输入点一般指函数的参数或者从外部引入的值,在x86指令集中,参数表示为栈桢指针与正数偏移相加,但栈桢指针可能是ESP或者EBP,需要启发式判断;另外这种输入是从外部引入的值,如在函数内部调用ReadFile、Recv、Accept函数时引入的外部值,在函数建模后就针对这些输入向量适当地引入符号。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

本文链接:http://www.vipzhuanli.com/pat/books/201210243800.7/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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