Automated static analysis and classification of Android malware using permission and API calls models | Prikladnaya Diskretnaya Matematika - Applied Discrete Mathematics. 2017. № 36. DOI: 10.17223/20710410/36/7

In this paper, we propose a heuristic approach to static analysis of Android applications based on matching suspicious applications with the predefined malware models. Static models are built from Android capabilities and Android Framework API call chains used by the application. All of the analysis steps and model construction are fully automated. Therefore, the method can be easily deployed as one of the automated checks provided by mobile application marketplaces or other interested organizations. Using the proposed method, we analyzed the Drebin and ISCX malware collections in order to find possible relationships and dependencies between samples in collections, and a large fraction of Google Play apps collected between 2013 and 2016 representing benign data. Analysis results show that a combination of relatively simple static features represented by permissions and API call chains is enough to perform binary classification between malware and benign apps, and even find the corresponding mal-ware family, with an appropriate false positive rate of about 3 %. Malware collections exploration results show that modern Android malware rarely uses obfuscation or encryption techniques to make static analysis more difficult, which is quite the opposite of what we see in the case of the "Wintel" endpoint platform family. We also provide the experiment-based comparison with the previously proposed state-of-the-art Android malware detection method adagio. This method outperforms our proposed method in resulting detection coverage (98 vs 91 % of malicious samples are covered) while at the same time causing a significant number of false alarms corresponding to 9.3 % of benign applications on average.
Download file
Counter downloads: 213
  • Title Automated static analysis and classification of Android malware using permission and API calls models
  • Headline Automated static analysis and classification of Android malware using permission and API calls models
  • Publesher Tomask State UniversityTomsk State University
  • Issue Prikladnaya Diskretnaya Matematika - Applied Discrete Mathematics 36
  • Date:
  • DOI 10.17223/20710410/36/7
Keywords
статический анализ, вредоносные Android-приложения, static analysis, Android malware
Authors
References
Skovoroda A. and Gamayunov D. Securing mobile devices: malware mitigation methods // J. Wireless Mobile Networks, Ubiquitous Computing, and Dependable Applications. 2015. No. 6(2). P. 78-97.
Egele M., Kruegel C., Kirda E., and Vigna G. PiOS: Detecting privacy leaks in iOS applications // Proc. 18th Annual Network and Distributed System Security Symposium (NDSS), San Diego, CA, USA, 2011. http://www.eurecom.fr/publication/3282
Enck W., Gilbert P., ChunB.-G., et al. TaintDroid: An information-flow tracking system for realtime privacy monitoring on smartphones // Proc. 9th USENIX Conf. Design and Implementation OSDI'lO, Vancouver, BC, Canada. USENIX Association, 2010. P. 1-6.
Shabtai A., Tenenboim-Chekina L., MimranD., et al. Mobile malware detection through analysis of deviations in application network behavior // Computers & Security. 2014. V. 43. P. 1-18.
Kim H., Smith J., and Shin K. G. Detecting energy-greedy anomalies and mobile malware variants // Proc. 6th Intern. Conf. Applications, and Services MobiSys'08, Breckenridge, CO, USA. ACM, 2008. P. 239-252.
Grace M., Zhou Y., Zhang Q., et al. RiskRanker: scalable and accurate zero-day android malware detection // Proc. 10th Intern. Conf. Applications, and Services MobiSys'12, Low Wood Bay, Lake District, UK. ACM, 2012. P. 281-294.
Feng Y., Anand S., Dillig I., and Aiken A. Apposcopy: Semantics-based detection of android malware through static analysis // Proc. 22nd ACM SIGSOFT Intern. Symp. FSE 2014, New York, NY, USA. ACM, 2014. P. 576-587.
TamK., FeizollahA., AnuarN.B., et al. The evolution of android malware and android analysis techniques // ACM Comput. Surv. 2017. V.49. Iss.4. Article No. 76.
Yang L., Ganapathy V., and Iftode L. Enhancing mobile malware detection with social collaboration // Proc. 2011 IEEE Third Intern. Conf. Social Computing (SocialCom), Boston, MA. IEEE, 2011. P. 572-576.
Liu L., Yan G., Zhang X., and Chen S. VirusMeter: preventing your cellphone from spies // LNCS. 2009. V. 5758. P. 244-264.
Hoffmann J., Neumann S., and HolzT. Mobile malware detection based on energy fingerprints - a dead end? // LNCS. 2013. V.8145. P. 348-368.
Wong M. Y. and Lie D. Intellidroid: a targeted input generator for the dynamic analysis of android malware // NDSS. 2016. http://dx.doi.org/10.14722/ndss.2016.23118
Zhou Y., Wang Z., Zhou W., and Jiang X. Hey, you, get off of my market: detecting malicious apps in official and alternative android markets // Proc. 19th Annual NDDS Symp., San Diego, CA, USA. The Internet Society, 2012. https://www.internetsociety.org/sites/ default/files/07_5.pdf
Aafer Y., Du W., and Yin H. DroidAPIMiner: Mining API-level features for robust malware detection in android // Security and Privacy in Communication Networks / eds. T. Zia, A. Zomaya, V. Varadharajan, and M. Mao. Springer International Publishing, 2013. P. 86-103.
Zhang M., Duan Y., Yin H., and Zhao Z. Semantics-aware android malware classification using weighted contextual API dependency graphs // Proc. ACM SIGSAC Conf. CCS'14, New York, NY, USA. ACM, 2014. P. 1105-1116.
Arp D., Spreitzenbarth M., Huebner M., et al. Drebin: efficient and explainable detection of android malware in your pocket // Proc. NDSS Symp., San Diego, CA, USA. The Internet Society, 2014. https://www.internetsociety.org/sites/default/files/11_3_1.pdf
Damshenas M., Dehghantanha A., Choo K., and Mahmud R. M0Droid: an android behavioral-based malware detection model // J. Inform. Privacy Security. 2015. V. 11. Iss.3. P. 141-157.
Aresu M., Ariu D., Ahmadi M., et al. Clustering android malware families by http traffic // Proc. MALC0N'2015, Fajardo, Puerto Rico, USA, 2015. https://pralab.diee.unica.it/ sites/default/files/MALCON_0.pdf
Mariconti E., Onwuzurike L., Andriotis P., et al. Mamadroid: Detecting android malware by building markov chains of behavioral models. 2016. https://arxiv.org/abs/1612.04433
Gascon H., Yamaguchi F., Arp D., and Rieck K. Structural detection of android malware using embedded call graphs // Proc. AISec'13, New York, NY, USA. ACM, 2013. P. 45-54.
Yang Z., Yang M., Zhang Y., et al. AppIntent: analyzing sensitive data transmission in android for privacy leakage detection // Proc. CCS'13, Berlin, Germany. ACM, 2013. P. 1043-1054.
Rosen S., Qian Z., and Mao Z. M. AppProfiler: a flexible method of exposing privacy-related behavior in android applications to end users // Proc. Third ACM Conf. CODASPY '13, San Antonio, Texas, USA. ACM, 2013. P. 221-232.
Portokalidis G., Homburg P., Anagnostakis K., and Bos H. Paranoid android: versatile protection for smartphones // Proc. 26th Annual Conf. ACSAC'10, Austin, Texas. ACM, 2010. P. 347-356.
Burguera I., ZurutuzaU., and Nadjm-Tehrani S. Crowdroid: behavior-based malware detection system for android // Proc. 1st ACM Workshop SPSM '11, Chicago, Illinois, USA. ACM, 2011. P. 15-26.
http://developer.android.com/intl/ru/guide/topics/security/permissions.html - Permissions, 2017.
https://github.com/androguard/androguard - Androguard, 2017.
Au K. W. Y., Zhou Y. F., Huang Z., and Lie D. PScout: analyzing the android permission specification // Proc. ACM Conf. CCS'12, New York, NY, USA. ACM, 2012. P. 217-228.
Lu L., Li Z., Wu Z., et al. CHEX: statically vetting android apps for component hijacking vulnerabilities // Proc. ACM Conf. CCS'12, New York, NY, USA. ACM, 2012. P. 229-240.
http://www.unb.ca/research/iscx/dataset/iscx-android-botnet-dataset.html - Коллекция вредоносных приложений UNB ISCX Android Botnet, 2017.
http://code.google.com/p/droidbox/ - DroidBox: Сэндбоксинг Android-приложений, 2017.
https://github.com/hgascon/adagio - Adagio, 2017.
 Automated static analysis and classification of Android malware using permission and API calls models | Prikladnaya Diskretnaya Matematika - Applied Discrete Mathematics. 2017. № 36. DOI: 10.17223/20710410/36/7
Automated static analysis and classification of Android malware using permission and API calls models | Prikladnaya Diskretnaya Matematika - Applied Discrete Mathematics. 2017. № 36. DOI: 10.17223/20710410/36/7
Download full-text version
Counter downloads: 728