作者投稿和查稿 主编审稿 专家审稿 编委审稿 远程编辑

计算机工程 ›› 2010, Vol. 36 ›› Issue (16): 4-6. doi: 10.3969/j.issn.1000-3428.2010.16.002

• 博士论文 • 上一篇    下一篇

基于命题演算的高级控制结构恢复

张靖博,赵荣彩,庞建民,付 文   

  1. (解放军信息工程大学信息工程学院,郑州 450002)
  • 出版日期:2010-08-20 发布日期:2010-08-17
  • 作者简介:张靖博(1979-),男,博士研究生,主研方向:软件逆向分析,计算机安全;赵荣彩、庞建民,教授、博士生导师;付 文,博士研究生
  • 基金资助:

    国家“863”计划基金资助项目(2006AA01Z408, 2009 AA01Z434);河南省重大科技攻关基金资助项目(092101210500, 092101210501)

High-level Control Structure Recovery Based on Propositional Calculus

(Information Engineering Institute, PLA Information Engineering University, Zhengzhou 450002)   

  1. (Information Engineering Institute, PLA Information Engineering University, Zhengzhou 450002)
  • Online:2010-08-20 Published:2010-08-17

摘要:

提出一种基于命题演算的二进制代码高级控制结构恢复方法。该方法针对低级指令之间的控制依赖关系进行形式化,将其抽象为命题逻辑变元,并且沿着程序执行路径进行传播和演算,通过计算结果中的特定命题常元对隐藏于低级代码中的高级控制结构进行判定。测试结果表明,该方法能够较好地检测并恢复出循环结构和分支结构,且具备针对谓词指令的分析和恢复能力。

关键词: 软件逆向分析, 命题逻辑, 控制结构恢复, 控制依赖

Abstract:

This paper presents a method to recovery high-level control structures from binary executables, which is based on propositional calculus. This method formalizes the control dependence relation between low-level instructions to propositional variables. These variables can be propagated and calculated follow the execution path of the object code, and high-level control structures can be identified by some specified results of propositional invariants. Experimental results show this method can recognize and recovery loops and conditionals effectively, and have the ability of analyzing the predicated instructions.

Key words: reverse analysis of software, propositional logic, control structure recovery, control dependence

中图分类号: