[发明专利]一种目标代码控制流图生成方法有效

专利信息
申请号: 201611168496.9 申请日: 2016-12-16
公开(公告)号: CN106775913B 公开(公告)日: 2019-07-09
发明(设计)人: 何积丰;熊家文;史建琦;黄滟鸿;李昂;方徽星 申请(专利权)人: 华东师范大学
主分类号: G06F8/74 分类号: G06F8/74;G06F8/41
代理公司: 北京辰权知识产权代理有限公司 11619 代理人: 郎志涛
地址: 200062 上*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明公开了一种基于符号执行的目标代码控制流图生成方法,该方法包括预处理步骤、反汇编与控制流图生成步骤、目标地址分析步骤。其中,预处理步骤实现目标代码文件的格式识别与程序入口地址的定位,反汇编与控制流图生成步骤实现机器指令的翻译与控制流图的生成,目标地址分析步骤实现间接跳转指令处目的地址的可能值分析计算,其包括符号执行、SMT求解器求解、自动测试用例生成、二进制仿真执行步骤。该方法对间接地址跳转地址进行了分析,其生成的控制流图,相比于一般方法生成的控制流图,具有更加精确、相对完整的特点。
搜索关键词: 一种 目标 代码 控制 生成 方法
【主权项】:
1.一种目标代码控制流图生成方法,包括如下步骤:A1.预处理步骤:用于对目标代码文件进行封装格式的识别,定位程序指令的入口地址;A2.反汇编与控制流图生成步骤:用于机器指令的反汇编与控制流图生成;A3.目标地址分析步骤:用于间接跳转指令处目的地址的可能值分析计算,其特征在于,其中,所述预处理步骤包括:C1.文件类型识别步骤:通过对特定封装格式文件头部数据结构的匹配,进行文件类型的识别;C2.目标平台确定步骤:读取并解析目标代码文件的头部数据,确定目标代码的目标平台;C3.入口偏移地址定位步骤:读取并解析目标代码文件的头部数据,定位目标文件指令序列的入口偏移地址;所述反汇编与控制流图生成步骤包括:D1.反汇编引擎选择步骤:根据所述预处理步骤所识别的目标平台信息,自动选择相应的反汇编引擎;D2.反汇编步骤:对于顺序指令序列,进行线性扫描式的反汇编处理;对于目的地址明确的跳转,直接跳转至目标地址进行反汇编,对于目标地址为寄存器的间接地址跳转,调用目标地址分析方法进行目标地址分析,得到目标地址后跳转至相应位置进行反汇编,并构建相应的控制流图节点所述目标地址分析步骤包括:E1.路径条件符号计算步骤:对程序进行符号执行,分析推导抵达间接跳转指令处所需满足的条件,输出一个条件公式;E2.SMT求解步骤:对所述路径条件符号计算步骤输出的条件公式进行求解,计算公式中变量的可行取值;E3.二进制仿真步骤:以所述SMT求解步骤中获取的变量可行值作为输入参数,仿真执行相应的指令序列,以跟踪指令序列运行过程中的寄存器中值的变化,最终确定间接跳转指令的目的地址,以之作为下一条待反汇编指令的地址,反汇编与控制流图生成方法重新处理指令。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

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

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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