摘要:
随着基于Android构建的智能平台的不断增多,个人隐私保护和资源访问控制问题日益受到人们的关注和重视.特别是Android平台上的恶意软件经常在不经过用户的允许下窃取用户的隐私和损害用户的利益,所以为了更好的评估和识别这些恶意软件,本文设计并实现了一款面向Android平台的反编译工具——BIT-DEC.与传统的Android反编译工具不一样,BIT-DEC不仅能够对Android中的Java字节码进行反编译,还能对应用中存在的.so文件(在ARM架构上用C语言编译后的动态连接文件)进行反编译,在此基础上进行Java代码和C代码的信息融合.本文根据Android应用程序中Java代码和C代码之间的调用关系除了构建整个应用程序的函数调用图外,还在对.so文件进行反编译时进行参数类型传递分析,从而确定源代码的参数类型.在.so文件反编译过程中进行高级控制结构恢复时,遇到非结构化的控制流图时不能直接进行归约分析,需要对其进行剪边处理,然后生成"goto"语句.本文在基于规则的全局搜索算法基础上提出了基于遗传算法的全局搜索算法来寻找近似最优解,让最后得到少量的"goto"语句,从而使源代码有较好的可读性.
展开