Android恶意代码检测:静态-动态分析结合方法与系统实现

需积分: 9 0 下载量 115 浏览量 更新于2024-08-12 收藏 1.02MB PDF 举报
"一种针对Android平台恶意代码的检测方法及系统实现 (2013年)" 这篇论文介绍了一种在2013年提出的针对Android平台的恶意代码检测方法及其实现系统,主要针对Android恶意代码泛滥的问题。该方法结合了静态分析和动态分析两种技术,以提高检测的准确性和全面性。 在静态分析阶段,研究者们首先从Android应用程序(APK)中提取关键特征。这些特征包括: 1. 权限:检查应用程序请求的权限,某些特定权限可能是恶意行为的标志。 2. API调用序列:分析程序的API调用模式,恶意软件通常会使用特定的API执行恶意操作。 3. 组件:Android应用由多个组件组成,如活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供者(Content Provider),恶意代码可能会滥用这些组件进行恶意活动。 4. 资源:分析应用程序的资源文件,如图片、音频和文本,这些资源可能包含恶意信息或被用于诱骗用户。 5. APK结构:理解APK的打包和签名方式,异常的结构可能表明代码已被篡改或隐藏了恶意内容。 通过构建特征向量并运用相似性度量算法,系统能够检测已知恶意代码家族的样本,这有助于识别已知威胁。 动态分析部分则涉及对Android程序运行时行为的监控。研究者通过修改Android源码并重新编译内核镜像,创建了一个可以实时监测的应用环境。这个环境利用模拟器来运行待检测的程序,并记录以下关键行为: 1. 文件读写:监视应用程序对文件系统的访问,异常的文件操作可能与恶意数据存储或传播有关。 2. 网络连接:分析网络通信,包括HTTP/HTTPS请求,以查找可疑的远程服务器交互。 3. 短信发送和电话拨打:检测可能导致用户隐私泄露或设备被控制的行为。 通过统计和分析这些行为,系统能够检测到未知的恶意代码,这增加了检测未知威胁的能力。这种方法经过实际部署测试,证明了其在检测Android恶意代码方面的有效性。 这篇论文是由胡文君、赵双、陶敬、马小博和陈亮合作完成的,得到了国家自然科学基金和华为创新基金的支持。发表于《西安交通大学学报》2013年第10期,展示了在对抗Android恶意软件方面的重要研究进展。