基于抽象解释的二进制代码变量区间分析
doi: 10.3724/SP.J.1146.2012.01341
A Method of Binary Code Variable Interval Analysis Based on Abstract Interpretation
-
摘要: 在二进制代码分析中,传统的区间分析方法难以有效获得变量的取值范围。针对二进制代码变量特点,基于抽象解释理论,该文提出字级数据区间和位级数据区间的概念,分别对数值型数据变量和位级数据变量进行抽象表示;将抽象区间用于二进制代码变量运算,构建字级数据区间和位级数据区间的运算方法;引入区间集的概念,确立字级数据区间和位级数据区间的转换关系,提出字级数据区间和位级数据区间的相互转换算法。实验结果表明,该文提出的基于抽象解释的二进制代码变量区间分析方法能够精确高效地确定二进制代码变量的取值范围。Abstract: Due to characteristics of binary code, it is difficult to deal with binary code variable through traditional interval analysis. To figure out this problem, a new interval analysis method of binary code variable based on abstract interpretation is proposed in this paper. Based on abstract interpretation, two concepts which are word-level data interval and bit-level data interval are presented. The word-level data interval is the abstract presentation of numerical value variable and the bit-level data interval is the abstract presentation of bit value variable. Operation methods of word-level data interval and bit-level data interval are constructed. The conversion operations between word-level data interval and bit-level data interval are put forward and corresponding algorithms are presented. The theoretical and experimental results show that the binary code variable interval can be calculated effectively and precisely with the proposed method.
-
Key words:
- Binary code /
- Code analysis /
- Interval analysis /
- Abstract interpretation
计量
- 文章访问数: 2164
- HTML全文浏览量: 122
- PDF下载量: 965
- 被引次数: 0