Bittersweet ADB: Attacks and Defenses

Android devices and applications become prevalent and ask for unanticipated capabilities thanks to the increased interests in smartphones and web applications. As a way to use the capabilities not directly available to ordinary users, applications have used Android Debug Bridge (ADB), a command line tool to communicate with Android devices for debugging purposes. While ADB provides powerful features that require permissions to use critical system resources, it opens a gate to adversaries. To understand the ADB capabilities and their possible risks, we present various types of attacks that are not easily identifiable using ADB capabilities and device-specific functions. We show that applications using ADB capabilities can modify installed applications, leak private user data, and track phone calls, among other things only with the INTERNET permission on the same device. To protect Android devices from such attacks, we present several mitigation mechanisms including a static analysis tool that analyzes Android applications to detect possible attacks using ADB capabilities. Such a tool can aid application markets such as Google Play to check third-party applications for possible attacks.

[1]  Yajin Zhou,et al.  Detecting Passive Content Leaks and Pollution in Android Applications , 2013, NDSS.

[2]  Nan Zhang,et al.  The Peril of Fragmentation: Security Hazards in Android Device Driver Customizations , 2014, 2014 IEEE Symposium on Security and Privacy.

[3]  Hongyang Li,et al.  Screenmilker: How to Milk Your Android Screen for Secrets , 2014, NDSS.

[4]  David A. Wagner,et al.  Analyzing inter-application communication in Android , 2011, MobiSys '11.

[5]  Nicholas Hopper,et al.  Location leaks over the GSM air interface , 2012, NDSS.

[6]  Vitaly Shmatikov,et al.  Memento: Learning Secrets from Process Footprints , 2012, 2012 IEEE Symposium on Security and Privacy.

[7]  J. Foster,et al.  SCanDroid: Automated Security Certification of Android , 2009 .

[8]  Xiangyu Zhang,et al.  Cost and precision tradeoffs of dynamic data slicing algorithms , 2005, TOPL.

[9]  Christopher Krügel,et al.  Execute This! Analyzing Unsafe and Malicious Dynamic Code Loading in Android Applications , 2014, NDSS.

[10]  Klara Nahrstedt,et al.  Identity, location, disease and more: inferring your secrets from android public resources , 2013, CCS.

[11]  Avik Chaudhuri,et al.  SCanDroid: Automated Security Certification of Android , 2009 .

[12]  Yongdae Kim,et al.  Location Leaks on the GSM Air Interface , 2011 .

[13]  Jörg Schwenk,et al.  UI Redressing Attacks on Android Devices , 2012 .

[14]  Ahmad-Reza Sadeghi,et al.  Privilege Escalation Attacks on Android , 2010, ISC.

[15]  David A. Wagner,et al.  AdDroid: privilege separation for applications and advertisers in Android , 2012, ASIACCS '12.