DL-Droid: Deep learning based android malware detection using real devices

Abstract The Android operating system has been the most popular for smartphones and tablets since 2012. This popularity has led to a rapid raise of Android malware in recent years. The sophistication of Android malware obfuscation and detection avoidance methods have significantly improved, making many traditional malware detection methods obsolete. In this paper, we propose DL-Droid, a deep learning system to detect malicious Android applications through dynamic analysis using stateful input generation. Experiments performed with over 30,000 applications (benign and malware) on real devices are presented. Furthermore, experiments were also conducted to compare the detection performance and code coverage of the stateful input generation method with the commonly used stateless approach using the deep learning system. Our study reveals that DL-Droid can achieve up to 97.8% detection rate (with dynamic features only) and 99.6% detection rate (with dynamic + static features) respectively which outperforms traditional machine learning techniques. Furthermore, the results highlight the significance of enhanced input generation for dynamic analysis as DL-Droid with the state-based input generation is shown to outperform the existing state-of-the-art approaches.

[1]  Porfirio Tramontana,et al.  Using GUI ripping for automated testing of Android applications , 2012, 2012 Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering.

[2]  Sakir Sezer,et al.  EMULATOR vs REAL PHONE: Android Malware Detection Using Machine Learning , 2017, IWSPA@CODASPY.

[3]  Geoffrey E. Hinton,et al.  Deep Learning , 2015, Nature.

[4]  Sakir Sezer,et al.  DroidFusion: A Novel Multilevel Classifier Fusion Approach for Android Malware Detection , 2019, IEEE Transactions on Cybernetics.

[5]  Eric Bodden,et al.  A Machine-learning Approach for Classifying and Categorizing Android Sources and Sinks , 2014, NDSS.

[6]  Sakir Sezer,et al.  N-opcode analysis for android malware classification and categorization , 2016, 2016 International Conference On Cyber Security And Protection Of Digital Services (Cyber Security).

[7]  William Enck,et al.  AppsPlayground: automatic security analysis of smartphone applications , 2013, CODASPY.

[8]  Yanfang Ye,et al.  Deep Neural Networks for Automatic Android Malware Detection , 2017, 2017 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM).

[9]  Georgios Kambourakis,et al.  New facets of mobile botnet: architecture and evaluation , 2015, International Journal of Information Security.

[10]  Sakir Sezer,et al.  Improving dynamic analysis of android apps using hybrid test input generation , 2017, 2017 International Conference on Cyber Security And Protection Of Digital Services (Cyber Security).

[11]  NeamtiuIulian,et al.  Targeted and depth-first exploration for systematic testing of android apps , 2013 .

[12]  Iulian Neamtiu,et al.  Targeted and depth-first exploration for systematic testing of android apps , 2013, OOPSLA.

[13]  Hongseok Yang,et al.  Automated concolic testing of smartphone apps , 2012, SIGSOFT FSE.

[14]  Georgios Kambourakis,et al.  Introducing Deep Learning Self-Adaptive Misuse Network Intrusion Detection Systems , 2019, IEEE Access.

[15]  Adam Doupé,et al.  Deep Android Malware Detection , 2017, CODASPY.

[16]  Alessandra Gorla,et al.  Automated Test Input Generation for Android: Are We There Yet? (E) , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[17]  Yuval Elovici,et al.  “Andromaly”: a behavioral malware detection framework for android devices , 2012, Journal of Intelligent Information Systems.

[18]  Byung-Gon Chun,et al.  TaintDroid: an information flow tracking system for real-time privacy monitoring on smartphones , 2014, Commun. ACM.

[19]  Yusep Rosmansyah,et al.  Malware detection on Android smartphones using API class and machine learning , 2015, 2015 International Conference on Electrical Engineering and Informatics (ICEEI).

[20]  Xingquan Zhu,et al.  Machine Learning for Android Malware Detection Using Permission and API Calls , 2013, 2013 IEEE 25th International Conference on Tools with Artificial Intelligence.

[21]  Luo Si,et al.  A Probabilistic Discriminative Model for Android Malware Detection with Decompiled Source Code , 2015, IEEE Transactions on Dependable and Secure Computing.

[22]  Sakir Sezer,et al.  Dynalog: an automated dynamic analysis framework for characterizing android applications , 2016, 2016 International Conference On Cyber Security And Protection Of Digital Services (Cyber Security).

[23]  Abdelouahid Derhab,et al.  Android Malware Detection using Deep Learning on API Method Sequences , 2017, ArXiv.

[24]  Sakir Sezer,et al.  Machine learning-based dynamic analysis of Android apps with improved code coverage , 2019, EURASIP J. Inf. Secur..

[25]  Aristide Fattori,et al.  CopperDroid: Automatic Reconstruction of Android Malware Behaviors , 2015, NDSS.

[26]  Sakir Sezer,et al.  N-gram Opcode Analysis for Android Malware Detection , 2016, Int. J. Cyber Situational Aware..

[27]  Ming Fan,et al.  DAPASA: Detecting Android Piggybacked Apps Through Sensitive Subgraph Analysis , 2017, IEEE Transactions on Information Forensics and Security.

[28]  Gianluca Dini,et al.  MADAM: A Multi-level Anomaly Detector for Android Malware , 2012, MMM-ACNS.

[29]  Konrad Rieck,et al.  DREBIN: Effective and Explainable Detection of Android Malware in Your Pocket , 2014, NDSS.

[30]  Zhenlong Yuan,et al.  DroidDetector: Android Malware Characterization and Detection Using Deep Learning , 2016 .

[31]  George C. Necula,et al.  Guided GUI testing of android apps with minimal restart and approximate learning , 2013, OOPSLA.

[32]  Sakir Sezer,et al.  Android Malware Detection Using Parallel Machine Learning Classifiers , 2014, 2014 Eighth International Conference on Next Generation Mobile Apps, Services and Technologies.

[33]  Byung-Gon Chun,et al.  TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones , 2010, OSDI.

[34]  Yuanchun Li,et al.  DroidBot: A Lightweight UI-Guided Test Input Generator for Android , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C).

[35]  Mayur Naik,et al.  Dynodroid: an input generation system for Android apps , 2013, ESEC/FSE 2013.

[36]  Sakir Sezer,et al.  Android malware detection: An eigenspace analysis approach , 2015, 2015 Science and Information Conference (SAI).

[37]  Chunlei Yang,et al.  Malware detection on android smartphones using keywords vector and SVM , 2017, 2017 IEEE/ACIS 16th International Conference on Computer and Information Science (ICIS).

[38]  Yanfang Ye,et al.  Deep4MalDroid: A Deep Learning Framework for Android Malware Detection Based on Linux Kernel System Call Graphs , 2016, 2016 IEEE/WIC/ACM International Conference on Web Intelligence Workshops (WIW).

[39]  Guigang Zhang,et al.  Deep Learning , 2016, Int. J. Semantic Comput..

[40]  Zhenlong Yuan,et al.  Droid-Sec: deep learning in android malware detection , 2015, SIGCOMM 2015.

[41]  Sakir Sezer,et al.  High accuracy android malware detection using ensemble learning , 2015, IET Inf. Secur..

[42]  Heng Yin,et al.  DroidAPIMiner: Mining API-Level Features for Robust Malware Detection in Android , 2013, SecureComm.

[43]  Suman Nath,et al.  PUMA: programmable UI-automation for large-scale dynamic analysis of mobile apps , 2014, MobiSys.