Android应用程序密码学误用检测方法
2018-08-09卫志刚张晓龙
科技资讯 2018年8期
卫志刚 张晓龙

摘 要:在智能手机的普遍应用过程中,大量Android的应用程序存在着一定的密码误用问题,对此相关学者对密码学误用检测方式进行了系统的研究分析。在常规状况之下,密码学误用是在程序操作以及实现过程中对于密码的各种算法调用出现了失误问题,导致密码机制无法实现既定的安全标准的状况。而通过动静结合的分析方式对密码学误用进行检测,精准度相对较高,可以精准检测各种误用状况。
关键词:Android应用程序 密码学误用 检测方法
中图分类号:TN919 文献标识码:A 文章编号:1672-3791(2018)03(b)-0011-02
1 基于Android CMA的静态密码学误用检测模块
基于smali文件内容生成控制图以及调用图,并根据控制流图和调用图,对应用程序与密码相关的函数调用进行分析,得到密码相关的函数名以及执行密码函数调用的路径以及分支。静态分析的具体流程如图1所示。
在基于Android CMA的静态密码学误用检测模块中,首先要对APK文件解压,获得dex文件,再利用Baksmali以及smali0将dex文件进行转换,使其变为smali格式。再对smali文件进行分析,生成控制流图以及调用图。在整个控制流图中主要是通过节点、连接节点的边构成,这些节点是基本块。在Android CMA中,这些基本块主要是通过不同的dalvik字节码共同构建形成,其连接节点的边主要是基于jump指令以及异常处理两个程序共同构建形成。在进行控制流图的构建过程中,先通过jump指令以及异常处理程序的目的地址对各个基本块进行链接处理。在调用图中要先……
登录APP查看全文
