API 调用和某个参数、返回值或某些资源的关系。因为已经将源代码中的程序元素分解为以 树结构组织成的中间语言结构树,可以精确地以类全名查找类节点,以类名、方法名查找方 法调用等。规则的内容上主要涉及自动耗费、隐私窃取、恶意破坏等常见行为。 7)采用逆向污染传播分析方法,查询导致关键API 调用具有恶意性的参数来源。根据 175 控制流图,逆向分析参数的“到达-定值”集合,确定参数是否为污染数据,如为用户隐私 数据等。 4 实验分析 在上述模型的基础上,构建静态分析工具,并对常见的Android 应用恶意行为进行关键 特征提取,制定适用于工具的规则。目前,实验用的规则集中包括自动耗费、窃取隐私、破 180 坏系统等三大类。自动耗费类,包括自动连接互联网、秘密发送短信、自动下载数据等;窃 取隐私类,包括获取用户手机标识、读取用户通讯录信息、定位用户物理位置等;破坏系统 类,包括终止其他进程或系统服务运行等。 工具对目前流行的20 款Android 应用,在普通的台式机上进行扫描测试,反编译、词 法、语法分析和数据流分析平均不到25 秒,并找出了上述描述的可疑恶意行为,并通过人 185 工审查验证了检测的正确性。表1 是测试20 款应用所检测出怀疑的恶意行为出现的次数。 表1 20 款Android 应用恶意行为出现次数 Tab. 1 The number of malicious behaviors of 20 Android applications 恶意行为类别 恶意行为 出现次数 自动连接网站 15 自动发送短信 4 自动耗费 自动下载数据 7 获取用户手机IMEI标 识 9 读取用户通讯录 5 窃取隐私 启动GPS,读取用户 物理位置 7 破坏系统 终止其它进程运行 1 终止系统服务运行 1 190 测试结果表明,本系统可以很好的检测出目前出现频率较高的3 大类恶意行为,实现了 预期的目标。系统检测出的恶意行为,不免会有误报、漏报情况,这主要由于静态工具在处 理自动耗费情况时,可能会将程序的正常连网误认为恶意行为报告,导致误报情况的出现; 另外目前规则还不全面,针对某种恶意行为类别只是定义了需要查找的一种关键API 调用, 而可能导致这种行为发生的实现方式会有很多情况,这是导致漏报发生的原因,还需要不断 195 完善规则库。 5 结论 本文介绍了静态代码分析关键技术,并分析了当前Android 智能移动平台上应用软件常 见的恶意代码特征,包括自动联网耗费、窃取用户隐私数据、终止其它进程服务运行等。指 出采用静态分析方法,通过查找关键API 调用,分析关键数据数据流路径,可以有效地对 200 恶意代码进行检测。文章基于上述静态分析方法,给出了针对Android 应用恶意行为进行检 测的模型,并通过实验的方式验证了模型的可用性和正确性。 从上述实验看出,采用静态分析技术可以高效、准确地对Android 应用进行恶意行为检 测,但在对恶意行为关键特征的搜集、提取并制定相应规则方面还需要进一步完善,作为今 后继续研究的内容。 [参考文献] (References) [1] Asaf Shabtai, Yuval Fledel, Yuval Elovici. Automated Static Code Analysis for Classifying Android Applications Using Machine Learning[C]. 2010 International Conference on Computational Intelligence and Security. Nanning, 2010 [2] Aubrey-Derrick Schmidt∗ , Rainer Bye∗ , Hans-Gunther Schmidt∗ , Jan Clausen∗ 210 , Osman Kiraz†,Kamer A. Y¨uksel†, Seyit A. Camtepe∗ , and Sahin Albayrak. Static Analysis of Executables for Collaborative Malware Detection on Android[C]. IEEE ICC 2009, Dresden, Germany. 2009(6) [3] Brian Chess, Jacob West 著. 安全编程:代码静态分析, 北京:电子工业出版社,2008: 46-47 [4] Mohnen, Markus. A Graph-Free Approach to Data-Flow Analysis[C]. Lecture Notes in Computer Science 215 2304, 2002 [5] 余建 韩双霞 黄云龙. 软件安全性的静态分析[J]. 计算机工程与设计,2006(4):1411-1414 [6] 靳岩 姚尚朗编著. Android 开发与实战, 北京:人民邮电出版设,2009:1-6 学术论文网Tag:代写硕士论文 代写论文 代写毕业论文 代写毕业设计 |