[论文解读] EMULATOR vs REAL PHONE: Android Malware Detection Using Machine Learning
本文提出了一种基于机器学习的Android恶意软件检测系统,采用真实设备上的动态分析,以克服基于模拟器检测的局限性,特别是针对反模拟器技术的应对。该系统实现了一个Python工具,从物理手机中提取运行时特征,并表明基于设备的分析相较于模拟器可显著提升检测性能——F-measure最高达92.6%,且成功分析的应用数量多出23.8%。
The Android operating system has become the most popular operating system for smartphones and tablets leading to a rapid rise in malware. Sophisticated Android malware employ detection avoidance techniques in order to hide their malicious activities from analysis tools. These include a wide range of anti-emulator techniques, where the malware programs attempt to hide their malicious activities by detecting the emulator. For this reason, countermeasures against antiemulation are becoming increasingly important in Android malware detection. Analysis and detection based on real devices can alleviate the problems of anti-emulation as well as improve the effectiveness of dynamic analysis. Hence, in this paper we present an investigation of machine learning based malware detection using dynamic analysis on real devices. A tool is implemented to automatically extract dynamic features from Android phones and through several experiments, a comparative analysis of emulator based vs. device based detection by means of several machine learning algorithms is undertaken. Our study shows that several features could be extracted more effectively from the on-device dynamic analysis compared to emulators. It was also found that approximately 24% more apps were successfully analysed on the phone. Furthermore, all of the studied machine learning based detection performed better when applied to features extracted from the on-device dynamic analysis.
研究动机与目标
- 为应对日益增长的Android恶意软件威胁,这些恶意软件可利用虚拟化环境中的反模拟器技术规避检测。
- 探究真实设备上的动态分析是否能比模拟器提供更有效的特征提取,以用于恶意软件检测。
- 开发并评估一种基于机器学习的检测框架,其特征来源于实际Android设备。
- 比较多种机器学习算法(如随机森林、SVM)在模拟器和设备环境下的性能表现。
- 证明基于设备的动态分析可缓解模拟器的固有缺陷,如硬件模拟不完整和更高的应用崩溃率。
提出的方法
- 开发了一款基于Python的定制工具,用于自动化提取来自物理Android设备的动态运行时特征。
- 系统在真实手机上执行应用程序期间,收集系统调用、网络活动和传感器使用等特征。
- 基于来自Android恶意软件基因组计划的1,222个恶意软件样本,开展了对比评估。
- 对七种机器学习分类器——随机森林、朴素贝叶斯、多层感知机、简单逻辑回归、J48、PART和线性SVM——在来自模拟器和真实设备的特征上进行了训练与测试。
- 使用标准指标(F-measure、真正例率TPR和假正例率FPR)评估了每种模型的性能。
- 分析了特征提取成功率和崩溃率,以评估分析环境的可靠性。
实验结果
研究问题
- RQ1从真实Android设备中提取动态特征,是否能比从模拟器中提取获得更优的恶意软件检测性能?
- RQ2恶意软件中的反模拟器技术在多大程度上降低了基于模拟器分析的有效性?
- RQ3真实设备与模拟器在动态分析成功率(即完整应用执行)方面有何差异?
- RQ4当使用设备提取的特征与模拟器提取的特征进行训练时,哪些机器学习模型表现最佳?
- RQ5哪些具体特征在真实设备上比在模拟器上能更有效地被捕获?
主要发现
- 约23.8%更多的恶意软件样本在真实设备上成功被分析,表明基于设备的分析具有更高的可靠性。
- 基于设备的动态分析提取了比基于模拟器更有效的特征,从而在所有机器学习模型中均提升了检测性能。
- 随机森林分类器在基于设备的特征上表现最佳,F-measure达到92.6%,TPR为93.1%,FPR为92.0%。
- 所有测试的机器学习算法在应用于从真实设备提取的特征时,其性能均优于应用于从模拟器提取的特征。
- 本研究证实,真实设备为动态恶意软件分析提供了更准确、更稳定的环境,可有效降低反模拟器规避技术的影响。
- 结果表明,基于模拟器的分析本质上受限于硬件和操作系统模拟的不完整性,导致更高的应用崩溃率和特征保真度下降。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。