信息安全研究 ›› 2021, Vol. 7 ›› Issue (2): 126-135.

• 学术论文 • 上一篇    下一篇

基于随机森林的抗混淆Android恶意应用检测

王柯林1,杨珂2,赵瑞哲3,辛丽玲3,汪秋云3   

  1. 1. 中国科学院大学
    2. 国网电子商务有限公司(国网雄安金融科技集团有限公司)
    3. 中国科学院信息工程研究所
  • 收稿日期:2021-02-09 出版日期:2021-02-05 发布日期:2021-02-09
  • 通讯作者: 王柯林
  • 作者简介:王柯林 硕士研究生 主要研究方向:软件安全 wangkelin20@mails.ucas.ac.cn 杨珂 博士、工程师 主要研究方向:网络安全 yangke@sgec.sgcc.com.cn 赵瑞哲 硕士研究生 主要研究方向:恶意代码分析 zhaoruizhe@iie.ac.cn 辛丽玲 硕士、工程师 主要研究方向:网络威胁发现 xinliling@iie.ac.cn 汪秋云 硕士、工程师 主要研究方向:网络空间安全 wangqiuyun@iie.ac.cn

Obfuscated Android Malware Detection Based on Random Forest

  • Received:2021-02-09 Online:2021-02-05 Published:2021-02-09

摘要: Android恶意应用的迅速增长引发了极大的安全隐患,很多行为特征容易受到代码混淆技术的影响,导致恶意行为无法被有效检测.本文提出了一种基于随机森林的Android恶意应用检测模型.模型选用危险权限、敏感API调用、Service、Activity、Intent、短信发送频率等特征,其中危险权限和service等Android组件在代码混淆过程中不受影响,采用随机森林、决策树、SVM和卷积神经网络等机器学习方法,利用十折交叉验证的方法训练.通过实验证明,对于未混淆的数据集,本方法能达到分类准确率95.77%的效果;对于混淆之后的数据集,达到分类准确率91.01%的效果.

关键词: Android应用, 动静态分析, 特征选择, 随机森林, 敏感API调用

Abstract: The rapid growth of Android malware has caused great security risks. Many behavioral characteristics are easily affected by code obfuscation techniques, resulting in malicious behaviors that cannot be effectively detected. This paper proposes an Android malware detection model based on Random Forest. The model uses features such as dangerous permissions, sensitive API calls, Service, Activity, Intent, and SMS sending frequency, among which dangerous permissions and Android components such as service are not affected during the code obfuscation process. Random Forest, Decision Tree, SVM and 1-NN were used. These machine learning methods were trained using the ten-fold cross-validation method. Experiments have shown that this method can achieve a classification accuracy of 95.77% for the normal data sets; for the obfuscated data set, it can achieve a classification accuracy of 91.01%.

Key words: Android application, dynamic and static analysis, feature selection, random forest, sensitive API calls