API Tracing Tool for Android-Based Mobile Devices
|
|
|
- Stewart Wilson
- 10 years ago
- Views:
Transcription
1 API Tracing Tool for Android-Based Mobile Devices Seonho Choi, Michael Bijou, Kun Sun, and Edward Jung Abstract We developed an Application Programming Interface (API) tracing tool for Android-based mobile devices. This tool has the capability of generating trace files by remotely monitoring and recording API calls made by an app running on a mobile device. In addition, the automatic feature of the tool allows repeated tracing tasks to be conducted without user s intervention against a collection of apps. The trace data may be effectively utilized in analyzing app s behavior and intentions, which will prove to be useful in several application domains. For example, this tool may be adopted in developing malware detection techniques based upon the API call patterns, identifying resource usages in different app components, building the tool for visualizing the app s behavior, and constructing efficient mobile forensics tools, etc. Also, different components of this tool make use of various concepts covered in core computer science courses such as Operating Systems, Computer Networks, Compilers, Data Structures, Algorithms, and Security and Forensics, which makes them to be suitable candidate for a senior capstone project. We formulated inter-related project modules based upon the components of this tracing tool, and will adopt them into the senior capstone course at Bowie State University. Index Terms Android, API tracing, mobile security, senior capstone project, mobile forensics. I. INTRODUCTION Android has become a popular mobile operating system for various devices including smartphones. Android is the most widely used mobile operating system, with 81% of smartphones and 37% of tablets worldwide running this Google-made OS. To analyze Android apps behavior and intentions, we may trace the API calls made by an Android app at run time. This trace data may be utilized for a wide range of problems including malware detection technique development and mobile forensic schemes. Even though Android is built based on Linux, the API tracing techniques developed for desktops may not be applied. Android has a different system architecture. At a lower level each application is encapsulated into a separate process and it is run by using the services provided by Linux kernel. Within each application, a virtual machine, known as a Dalvik Virtual Machine (DVM), provides a run-time environment for the Java components included in the application (app). All apps contain both Java and native components. Native components are simply shared libraries that are dynamically loaded at runtime. In the Dalvik virtual machine (DVM), a shared library named libdvm.so is then used to provide a Java-level abstraction for the app s Java components. Application developers heavily make use of the objects and methods provided by the Java Library included in the DVM. To understand or grasp the intentions of the apps, it will be more beneficial to trace/utilize the Java-level semantics that comprehend the behaviors of the Java components in the app rather than focusing on system call histories captured at the lower level. We developed an Application Programming Interface (API) tracing tool for Android-based mobile devices. This tool has the capability of generating trace files by remotely monitoring and recording API calls made by an app running on a mobile device. In addition, the automatic feature of the tool allows repeated tracing tasks to be conducted without user s intervention against a collection of apps. The trace data may be effectively utilized in analyzing app s behavior and intentions, which will prove to be useful in several application domains. For example, this tool may be adopted in developing malware detection techniques based upon the API call patterns, identifying resource usages in different app components, building the tool for visualizing the app s behavior, and constructing efficient mobile forensics tools, etc. Also, different components of this tool make use of various concepts covered in core computer science courses such as Operating Systems, Computer Networks, Compilers, Data Structures, Algorithms, and Security and Forensics, which makes them to be suitable candidate for a senior capstone project. We formulated inter-related project modules based upon the components of this tracing tool, and will adopt them into the senior capstone course at Bowie State University. The remainder of the paper is structured as follows. We present the related works in Section II. Section III presents a methodology. In Section IV experiments are explained. Section 5 concludes the paper. Manuscript received April 15, 2014; revised June 17, This material is based upon work supported by, or in part by, the U. S. Army Research Laboratory and the U. S. Army Research Office under contract/grant number W911NF and W911NF , and by the Office of Naval Research under grant number N Seonho Choi and Michael Bijou are with the Department of Computer Science, Bowie State University, Bowie, MD USA ( [email protected], [email protected]). Kun Sun is with the Center for Secure Information Systems, George Mason University, Fairfax, VA USA ( [email protected]). Edward Jung is with the Department of Computer Science and Software Engineering, Southern Polytechnic State University, GA USA ( [email protected]). II. RELATED WORKS In signature-based malware detection systems malwares are detected by utilizing the sets of rules or policies [1]-[6]. If an attack shows a signature exactly matching one of the known signatures, then it can be easily detected. However, this mechanism may not be effective against new malwares with unknown signatures. In anomaly detection approaches machine learning algorithms are first used to obtain classifiers from the known DOI: /IJIET.2015.V
2 malware behaviors [3], [7]-[12]. Then, the classifier will be used at run-time to detect malwares. Although anomaly detection is able to detect new or evolved malwares more effectively compared to the signature-based approaches, it sometimes causes high false positive. Malware detection techniques may also be classified into two different categories, static vs. dynamic. In static approaches the classifier or signatures will be obtained only from the apps codes, which remove the necessity to collect the data by running the apps [3], [6], [13]-[18]. These approaches have limitations. Metamorphic and polymorphic techniques may be applied to generate new signatures for the same virus. If polymorphic techniques are used, due to the encryption, it is difficult to generate the signatures; if metamorphic techniques are applied, all the codes will be obfuscated. In dynamic approaches, they obtain classifiers or signatures only based upon data obtained at run-time [4], [7], [9], [10], [12], [19]-[21]. They don t have limitations as in the static approaches, but it becomes critical how to design and conduct app running experiments to capture their behaviors or signatures in a comprehensive manner. A few attempts were made to apply signal processing techniques to the design of intrusion detection systems for wired networks [22]. are created from Java class files generated from Java source code. After baksmaling completes, apktool loads the application s binary resource table, which stores or references resources defined by the application, such as xml files containing strings or layouts used by the application. It uses the resource table to decode the application s AndroidManifest.xml, which contains essential information necessary for execution of the app DVM such as the package name, the activities, services, process, and permissions used in the application. The end result of the decoding process is a series of directories containing the assets, Android library files, the application s resources, a Smali directory containing decompiled Smali code files, similar to the application s original source for rebuilding the application. Fig. 2 shows the detailed steps and output directory structure after APK files are decompiled. Fig. 3 shows an example Smali code obtained after the apktool is applied. III. METHODOLOGY The overview of our tracing tool is shown in Fig. 1. APK file Fig. 2. APK file is decompiled into a directory-structured collection of source codes. Decompilation Source Codes App Attribute Extraction & Modification Rebuilding of APK file Signing of New APK Remote App Invocation & Tracing (User Interacts with App) Trace File CSV File Fig. 1. Overview of our tracing tool. A. Decompiling of APK File into Source Codes By using the Android apktool s decode function we need to decompile an Android APK into its constituent parts. It uses baksmali, a disassembler for Dalvik executable (.dex) files used by Dalvik Virtual Machine. Dex files themselves Fig. 3. Example smali source codes obtained from the apktool with decompilation option. B. App Attribute Extraction and Modification Next, various apk attributes are extracted mainly from the AndroidManifest.xml file obtained in the previous decoding step. The names of the package, activities, and services are extracted along with the permission information. These will be stored in a temporary file for later reference and the AndroidManifest.xml file will be modified by introducing 461
3 necessary attributes such as android:debuggable in some of the xml elements. Fig. 4 shows an example AndroidManifest.xml file. Fig. 4. Example AndroidManifest.xml from which the app attributes are extracted. C. Rebuilding of APK File Then the modified APK file is created by using the apktool with build option. It rebuilds the application by applying the smali, the reverse of baksmali, to the previously extracted and modified set of assets in the directory structure. The detailed steps are given in Fig. 5. end-users, you must sign it with a suitable private key. You cannot publish an application that is signed with the debug key generated by the SDK tools. You can use self-signed certificates to sign your applications. No certificate authority is needed. The system tests a signer certificate's expiration date only at install time. If an application's signer certificate expires after the application is installed, the application will continue to function normally. You can use standard tools Keytool and Jarsigner to generate keys and sign your application APK files. The Android system will not install or run an application that is not signed appropriately. This applies wherever the Android system is run, whether on an actual device or on the emulator. We used jarsigner [24] to sign the application. Jarsigner is part of the basic Java Development Kit, distributed by Oracle. In our experiment, we used a single, self-signed certificate, generated through the Java SDK s keytool, to sign tested applications after decoding and rebuilding them. E. Remote App Invocation and Tracing All of the remaining steps in the androiddebug.bat process will involve using the Android Debug Bridge [25]. The Android Debug Bridge, or adb, is a command line tool that lets a computer communicate with an instance of the Android emulator or an Android device connected via USB. It consists of a client and server, which run on the development computer, and a daemon, which runs on an emulator instance or Android device. The server manages communications between the client and the daemon; the client executes adb commands from command line; the daemon provides an endpoint for the server to establish a connection to on the device or emulator. Fig. 6 shows a typical debugging environment for Android, and Fig. 7 provides the overview of our tracing tool. Fig. 5. Rebuilding of APK fie. D. Signing of New APK File The Android system requires that all installed applications be digitally signed with a certificate whose private key is held by the application's developer [23]. The Android system uses the certificate as a means of identifying the author of an application and establishing trust relationships between applications. The certificate is not used to control which applications the user can install. The certificate does not need to be signed by a certificate authority: it is perfectly allowable, and typical, for Android applications to use self-signed certificates. The important points to understand about signing Android applications are [23]: All applications must be signed. The system will not install an application on an emulator or a device if it is not signed. To test and debug your application, the build tools sign your application with a special debug key that is created by the Android SDK build tools. When you are ready to release your application for Fig. 6. Typical debugging environment for Android. Android Debug Bridge (adb) has a variety of abilities that can aid in Android development. It can install applications, pull files from a device or emulator, push files to it, list devices or emulators connected to the development computer, or start a remote shell on the device or emulator to execute commands directly on the operating system. adb is commonly used by enthusiasts to install APKs downloaded to their computers directly to their connected devices. It is also used for testing and debugging during Android application development and troubleshooting device issues. 462
4 The command adb shell will start a remote Unix shell on a connected Android device or emulator instance, which will allow a user to run commands on an emulator or device. The shell can access binaries stored in the Android file system in /system/bin/. The most commonly used binaries in this area are the activity manager (am) and the package manager (pm). Activity manager will allow a user to issue commands to start activities, kill processes, broadcast intents, and other system actions. Activity manager is quite heavily used in our batch file to carry out the tracing and other tasks. Package manager can be used to perform actions and queries on installed applications on a device or emulator. Since trace files can run anywhere from a few megabytes to up to a hundred, we tested with different file sizes to find out the safe delay, and found out that 60 seconds waiting time is necessary. The trace file is a file containing the binary and textual trace data itself and keys which provide a mapping from identifiers in the binary to thread and method names [25]. Fig. 8 shows the example of multiple processes created from one App s execution. Our Tracing Tool Traceview Fig. 7. Our tracing tool is interfacing with the ADB host daemon. After an application being tested is decoded, edited, rebuilt, and signed, adb install is used to install the modified application onto a physical device connected by USB (for our experiments, we used two types of device, the Samsung SGH-i747 [Galaxy SIII] and the Samsung SGH-I857 [DoubleTime]). A remote shell is started on the device using adb shell, and we use am start option to start the newly installed application, and use adb shell ps to generate a list of the running processes on the device, including the spawned children processes by our modified application. From this list of processes our tool selects the ones that were generated by the application to be traced by using the package name and class path names obtained in the attribute extraction step. For each process id obtained, it will create a remote profiling process by issuing the command START /b adb shell am profile pid start. This command will call the activity manager and instruct it to start profiling for the given pid. Every START nvocation runs the command given in its parameter and returns immediately, thus allowing multiple invocations of adb processes for multiple pids. This is typically utilized for concurrent and asynchronous execution of commands. Profiling process execution will allow us to monitor and record the details on its execution including what methods are invoked and what resources are being utilized at which times. Each profiler process is run for user provided duration e.g., five minutes, during which time the user interacts with the running app on the device, while recording the execution details. After the profiling duration has elapsed, our tool sends the adb shell am profile stop command to stop profiling, and wait another 60 seconds, to give enough time for the device to flush out the buffered profiling data to a trace file in a microsd card. The microsd card used in our experience is a consumer-grade card, commonly used in mobile phones, rated for speeds of 2 MB/s data transfer. Fig. 8. Multiple processes are created from one App s execution. Different trace files will be created for the processes that were identified to belong to the same application. After the trace file has been generated and stored on the microsd card, our tracing tool will use adb pull to transfer the file from the microsd card in the device to the computer. adb pull and adb push can be used to transfer any file from the device or emulator to the computer and vice versa. F. Traceview Fig. 9. Method Stats section in the trace file showing summary of method call related information. Fig. 10. Call Times section in the trace file showing the method call history made by the process. This data may be utilized in creating API call traces. Traceview is a graphical viewer for execution logs that you 463
5 create by using the Debug class to log tracing information in your code. Traceview can also help you debug your application and profile its performance [26]. However, our tool uses the traceview r command to convert the trace file from its raw binary format to a human-readable text file, which can be analyzed and operated on for the purposes of our study. Our tool finishes up by uninstalling the application from the device and deleting temporary files. Figure 9 shows the Method Stats section in the trace file, and Figure 10 gives an example Call Times section in the trace file. genome project database [28]. These infected apps are classified into 50 different categories as is shown in Figure 12, and are stored in a hierarchically organized directory structure. Fig. 12 shows the category of malwares tested with our tracing tool. G. Conversion of Trace File into CSV Format CSV is a common, relatively simple file format that is widely supported by consumer, business, and scientific applications. Among its most common uses is moving tabular data between programs that natively operate on incompatible (often proprietary and/or undocumented) formats. This works because so many programs support some variation of CSV at least as an alternative import/export format [27]. We decided to convert the trace files into CSV format files to enhance the portability and usability of other library routines that support csv format. Our tool utilizes various java classes to implement this conversion process. Figure 11 shows the example CSV file obtained by converting the original trace file. Fig. 12. Malware categories. Fig. 11. Trace files are filtered and converted into CSV format. Only relevant APIs with proper prefix class paths are extracted to be included in the CSV file. H. Automatic Repetition against a Collection of Apps To automate the trace file generation process for a given set of multiple apk files, we implemented another component in our tool to iteratively visit each app and apply the entire trace file generation process. It accepts the name of the directory as an argument. It starts by searching the input directory for subdirectories and file directories. It adds these to a file tree created using the Java Collections framework. The end result is a data structure with paths to every directory and file under the input directory. This structure is then recursively searched for files with the extension.apk, which are Android package files, commonly referred to as Android apps. And, for each of them it applies the previously introduced steps to create trace files in CSV format. IV. EXPERIMENTS We generated a set of trace files from the collection of about 500 malware-infected apps obtained from malware As an example application of our tracing tool, normalized API feature vectors were obtained by analyzing the trace files created from the collection of malware infected apps that belong to the same category. Normalized API feature vector contains the most frequently invoked resource-critical APIs along with their normalized frequencies obtained from the aggregate frequencies. For example, we obtained a normalized feature vector set for DroidKungfu3 malware category. Data structure appropriate for dictionary style of data needs to be employed in obtaining these, and we adopted hash table in our implementation. V. CONCLUSION Our experiments goal was to develop an efficient API call tracing tool for dynamic app behavior analysis. This tool may be applied to a wide range of applications including designing effective malware detection techniques on mobile devices. Project modules developed from the different components in this tool will be incorporated into the department s Senior Capstone course at Bowie State University. In the future, visualization components will be added to the experiment to make the data easier to interpret. We will design and implement a malware detection technique based upon the finite state machine-based pattern recognition. 464
6 REFERENCES [1] A. Desnos and G. Gueguen, Android: From reversing to decompilation, Blackhat, [2] W. Enck, M. Ongtang, and P. McDaniel, On lightweight mobile phone application certification, in Proc. the 16th ACM conference on Computer and communications security, CCS 09, New York, NY, USA, ACM, pp [3] A. P. Fuchs, A. Chaudhuri, and J. S. Foster, SCanDroid: Automated Security Certification of Android Applications, Technical Report CSTR- 4991, Department of Computer Science, University of Maryland, College Park, November [4] H. Kim, J. Smith, and K. G. Shin. Detecting energy-greedy anomalies and mobile malware variants, in Proc. the 6th international conference on Mobile systems, applications, and services, MobiSys 08, pp , New York, NY, USA, 2008, ACM. [5] M. Ongtang, S. McLaughlin, W. Enck, and P. McDaniel, Semanticallyrich application-centric security in android, in Proc. the 2009Annual Computer Security Applications Conference, ACSAC 09, pp , Washington, DC, USA, [6] Y. Zhou, Z. Wang, W. Zhou, and X. Jiang, Hey, you, get off of my market: Detecting malicious apps in official and alternative Android markets, presented at the 19th Annual Network & Distributed System Security Symposium, Feb [7] L. Liu, G. Yan, X. Zhang, and S. Chen. Virusmeter: Preventing your cellphone from spies, in Proc. the 12th International Symposium on Recent Advances in Intrusion Detection, RAID 09, pp , Berlin, Heidelberg, Springer-Verlag , [8] A.-D. Schmidt, J. H. Clausen, A. Camtepe, and S. Albayrak. Detecting symbian os malware through static function call analysis, March 2006, pp , IEEE, [9] A. Shabtai and Y. Elovici, Applying behavioral detection on androidbased devices, Mobilware, pp , [10] A. Shabtai, U. Kanonov, Y. Elovici, C. Glezer, and Y. Weiss, Andromaly: A behavioral malware detection framework for android devices, J. Intell. Inf. Syst., vol. 38, no. 1, pp , [11] P. Teufl, S. Kraxberger, C. Orthacker, G. Lackner, M. Gissing, A. Marsalek, J. Leibetseder, and O. Prevenhueber, Android market analysis with activation patterns, Mobisec, [12] M. Zhao, F. Ge, T. Zhang, and Z. Yuan, Antimaldroid: An efficient svmbased malware detection framework for android, in C. Liu, J. Chang, and A. Yang, editors, Communications in Computer and Information Science, vol. 243, pp , Springer, [13] D. Barrera, H. G. Kayacik, P. C. van Oorschot, and A. Somayaji, A methodology for empirical analysis of permission-based security models and its application to android, in Proc. the 17th ACM conference on Computer and communications security, pp , New York, NY, USA, 2010, ACM. [14] E. Chin, A. P. Felt, K. Greenwood, and D. Wagner. Analyzing interapplication communication in android, in Proc. the 9 th international conference on Mobile systems, applications, and services, MobiSys 11, pp , New York, NY, USA, [15] F. D. Cerbo, A. Girardello, F. Michahelles, and S. Voronkova, Detection of malicious applications on android os, in Proc. the 4 th international conference on Computational forensics, pp , Berlin, Heidelberg, 2011, Springer-Verlag. [16] M. Grace, Y. Zhou, Z. Wang, and X. Jiang, Systematic detection of capability leaks in stock Android smartphones, in Proc. the 19th Network and Distributed System Security Symposium (NDSS), Feb [17] S. Kim, J. I. Cho, H. W. Myeong, and D. H. Lee, A study on static analysis model of mobile application for privacy protection, in J. J. J. H. Park, H.-C. Chao, M. S. Obaidat, and J. Kim, editors, Computer Science and Convergence, Lecture Notes in Electrical Engineering, pp , Springer Netherlands, vol. 114, [18] W. Zhou, Y. Zhou, X. Jiang, and P. Ning. Detecting repackaged smartphone applications in third-party android marketplaces, in Proc. the second ACM conference on Data and Application Security and Privacy, CODASPY 12, pp , New York, NY, USA, ACM, [19] B. Dixon, Y. Jiang, A. Jaiantilal, and S. Mishra, Location based power analysis to detect malicious code in smartphones, in Proc. the 1st ACM workshop on Security and privacy in smartphones and mobile devices, SPSM 11, pp , New York, NY, USA, ACM, [20] W. Enck, P. Gilbert, B.-G. Chun, L. P. Cox, J. Jung, P. McDaniel, and A. N. Sheth, Taintdroid: An information-flow tracking system for realtime privacy monitoring on smartphones, in Proc. the 9 th USENIX conference on Operating systems design and implementation, OSDI 10, pp. 1 6, Berkeley, CA, USA, USENIX Association, [21] P. Gilbert, B.-G. Chun, L. P. Cox, and J. Jung, Vision: Automated security validation of mobile apps at app markets, in Proc. the second international workshop on Mobile cloud computing and services, MCS 11, pp , New York, NY, USA, ACM, [22] U. Mitra, A. Ortega, J. Heidemann, and C. Papadopoulos, Detecting and Identifying Malware: A New Signal Processing Goal, IEEE Signal Processing Magazine, pp , September [23] Android Deveopers. (April 15, 2014). Signing Your Applications. [Online]. Available: [24] Oracle. (April 15, 2014). Jarsigner - JAR Signing and Verification Tool. [Online]. Available: r.html. [25] Android Deveopers. (April 15, 2014). Android Debug Bridge. Web. [Online]. Available: [26] Android Deveopers. (April 15, 2014). Profiling with Traceview and dmtracedump. Web. [Online]. Available: [27] Wikipedia. (April 15, 2014). Comma-separated values. [Online]. Available: [28] Y. J. Zhou and X. X. Jiang, Dissecting android malware: characterization and evolution, presented at the 33rd IEEE Symposium on Security and Privacy San Francisco, CA, May Seonho Choi is currently a professor in the Computer Science Department at Bowie State University, USA. His primary research interests lie in the computer and network security. In 1991, he received a B.S. in computer science and statistics from Seoul National University in Korea and a Ph.D. in computer science in 1997 from the University of Maryland, College Park, USA. Michael A. Bijou Jr. was born in Arlington, Virginia in June He is pursuing an undergraduate degree in computer science at Bowie State University, in Bowie, Maryland. Mr. Bijou is focusing on security research while studying at Bowie State. He is currently a participant in the U.S. Army s Undergraduate Research Apprenticeship Program, while concurrently acting as a research assistant to Dr. Seonho Choi at Bowie State. Mr. Bijou has published four papers for the National BDPA IT Showcase, and has submitted a paper for the 2014 International Conference on Appropriate Technology. He is currently interested in mobile security and communications research. Mr. Bijou is a member of the National BDPA s Washington, D.C. chapter. He is a two time Johnson and Johnson Scholar. Kun Sun is a research professor in Center for Secure Information Systems (CSIS) at George Mason University, and will join the Computer Science Department at College of William and Mary in August He received his Ph.D. in computer science from North Carolina State University in Dr. Sun was a research scientist in Intelligent Automation Inc. between 2006 and His current research focuses on trustworthy computing environment, moving target defense, smart phone security, cloud security, and wireless security. Dr. Sun is a member of IEEE and ACM. Edward Jung received both a B.S. degree (1987) and a Ph.D. degree (1994) in computer science from the University of Minnesota, Minneapolis, USA. From 1994 to 2007, he worked at R&D labs (Bell Labs, Samsung Research) where he was a director of a security research group at Samsung prior to moving to academia. During , he was a Murray visting professor of computer science at Rutgers University, New Brunswick, New Jersey, USA. Since 2009, he has been an assistanct professor with the Computer Science and Software Engineering Department at Southern Polytechnic State University, Marietta/Atlanta, GA, USA. His primary research interestes lie in the foundations of computer security, nework security, IP and design protection, and optimization of sequential systems. Mr. Jung is a senior member of the IEEE and a member of the ACM. 465
The Behavioral Analysis of Android Malware
, pp.41-47 http://dx.doi.org/10.14257/astl.2014.63.09 The Behavioral Analysis of Android Malware Fan Yuhui, Xu Ning Department of Computer and Information Engineering, Huainan Normal University, Huainan,
QRCloud: Android Vulnerability Query and Push Services Based on QR Code in Cloud Computing
Journal of Computational Information Systems 11: 11 (2015) 3875 3881 Available at http://www.jofcis.com QRCloud: Android Vulnerability Query and Push Services Based on QR Code in Cloud Computing Jingzheng
Hacking your Droid ADITYA GUPTA
Hacking your Droid ADITYA GUPTA adityagupta1991 [at] gmail [dot] com facebook[dot]com/aditya1391 Twitter : @adi1391 INTRODUCTION After the recent developments in the smart phones, they are no longer used
Detection and Identification of Android Malware Based on Information Flow Monitoring
Detection and Identification of Android Malware Based on Information Flow Monitoring Radoniaina Andriatsimandefitra, Valérie Viet Triem Tong To cite this version: Radoniaina Andriatsimandefitra, Valérie
Malware Detection in Android by Network Traffic Analysis
Malware Detection in Android by Network Traffic Analysis Mehedee Zaman, Tazrian Siddiqui, Mohammad Rakib Amin and Md. Shohrab Hossain Department of Computer Science and Engineering, Bangladesh University
Android Programming and Security
Android Programming and Security Dependable and Secure Systems Andrea Saracino [email protected] Outlook (1) The Android Open Source Project Philosophy Players Outlook (2) Part I: Android System
Beginners Guide to Android Reverse Engineering
(W)ORK-SH/OP: Beginners Guide to Android Reverse Engineering (W)ORK-SH/OP: [email protected] Hall[14], Day 3 11:00h Agenda Purpose Recommended or needed tools (De)construction of Android apps Obtaining APKs Decompiling
Pentesting Android Apps. Sneha Rajguru (@Sneharajguru)
Pentesting Android Apps Sneha Rajguru (@Sneharajguru) About Me Penetration Tester Web, Mobile and Infrastructure applications, Secure coding ( part time do secure code analysis), CTF challenge writer (at
Control Theoretic Adaptive Monitoring Tools for the Android Platform
Control Theoretic Adaptive Monitoring Tools for the Android Platform DAVID REYNOLDS Department of Computer Science Texas State University San Marcos, USA [email protected] MINA GUIRGUIS Department of
International Journal of Advance Research in Computer Science and Management Studies
Volume 3, Issue 3, March 2015 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online
Reputation Based Security Model for Android Applications
2012 IEEE 11th International Conference on Trust, Security and Privacy in Computing and Communications Reputation Based Security Model for Android Applications Welderufael Berhane Tesfay, Todd Booth, and
Performance Measuring in Smartphones Using MOSES Algorithm
Performance Measuring in Smartphones Using MOSES Algorithm Ms.MALARVIZHI.M, Mrs.RAJESWARI.P ME- Communication Systems, Dept of ECE, Dhanalakshmi Srinivasan Engineering college, Perambalur, Tamilnadu, India,
Detection of Malicious Android Mobile Applications Based on Aggregated System Call Events
Detection of Malicious Android Mobile Applications Based on Aggregated System Call Events You Joung Ham and Hyung-Woo Lee devices, and analyses the characteristics of malicious apps with activation pattern
Index Terms: Smart phones, Malwares, security, permission violation, malware detection, mobile devices, Android, security
Permission Based Malware Detection Approach Using Naive Bayes Classifier Technique For Android Devices. Pranay Kshirsagar, Pramod Mali, Hrishikesh Bidwe. Department Of Information Technology G. S. Moze
Android Application Repackaging
ISA 564, Laboratory 4 Android Exploitation Software Requirements: 1. Android Studio http://developer.android.com/sdk/index.html 2. Java JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html
Research on Situation and Key Issues of Smart Mobile Terminal Security
Research on Situation and Key Issues of Smart Mobile Terminal Security Hao-hao Song, Jun-bing Zhang, Lei Lu and Jian Gu Abstract As information technology continues to develop, smart mobile terminal has
Remote Android Assistant with Global Positioning System Tracking
IOSR Journal of Computer Engineering (IOSR-JCE) e-issn: 2278-0661, p- ISSN: 2278-8727Volume 16, Issue 2, Ver. III (Mar-Apr. 2014), PP 95-99 Remote Android Assistant with Global Positioning System Tracking
Analysis of advanced issues in mobile security in android operating system
Available online atwww.scholarsresearchlibrary.com Archives of Applied Science Research, 2015, 7 (2):34-38 (http://scholarsresearchlibrary.com/archive.html) ISSN 0975-508X CODEN (USA) AASRC9 Analysis of
Review of Malware Defense in Mobile Network using Dynamic Analysis of Android Application
Review of Malware Defense in Mobile Network using Dynamic Analysis of Android Application Miss. Ashwini A. Dongre M. E. 3 rd sem, Dept. of Computer Science and engineering P. R. Patil College of engineering
Studying Security Weaknesses of Android System
, pp. 7-12 http://dx.doi.org/10.14257/ijsia.2015.9.3.02 Studying Security Weaknesses of Android System Jae-Kyung Park* and Sang-Yong Choi** *Chief researcher at Cyber Security Research Center, Korea Advanced
A Review on Android Security
A Review on Android Security Dr. Vikash Kumar Singh 1, Devendra Singh Kushwaha 2, Raju Sujane 3, Roshni Tiwari 4 Head (I/C), Dept. of computer Science IGNTU Amarkantak (M.P.) 1 Assistant Professor, Faculty
ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY
ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY Suhas Holla #1, Mahima M Katti #2 # Department of Information Science & Engg, R V College of Engineering Bangalore, India Abstract In the advancing
The Droid Knight: a silent guardian for the Android kernel, hunting for rogue smartphone malware applications
Virus Bulletin 2013 The Droid Knight: a silent guardian for the Android kernel, hunting for rogue smartphone malware applications Next Generation Intelligent Networks Research Center (nexgin RC) http://wwwnexginrcorg/
WallDroid: Cloud Assisted Virtualized Application Specific Firewalls for the Android OS
2012 IEEE 11th International Conference on Trust, Security and Privacy in Computing and Communications WallDroid: Cloud Assisted Virtualized Application Specific Firewalls for the Android OS Caner Kilinc,
Understanding Android s Security Framework
Understanding Android s Security Framework William Enck and Patrick McDaniel Tutorial October 2008 Systems and Internet Infrastructure Security Laboratory (SIIS) 1 2 Telecommunications Nets. The telecommunications
Hey, We Catch You: Dynamic Analysis of Android Applications. Wenjun Hu(MindMac) PacSec, Tokyo 2014.11
Hey, We Catch You: Dynamic Analysis of Android Applications Wenjun Hu(MindMac) PacSec, Tokyo 2014.11 Recent years witness the colossal growth of Android malware Vanja Svajcer, SophosLabs, Sophos Mobile
Fast remote data access for control of TCP/IP network using android Mobile device
RESEARCH ARTICLE OPEN ACCESS Fast remote data access for control of TCP/IP network using android Mobile device Vaibhav Muddebihalkar *, R.M Gaudar** (Department of Computer Engineering, MIT AOE Alandi
Example of Standard API
16 Example of Standard API System Call Implementation Typically, a number associated with each system call System call interface maintains a table indexed according to these numbers The system call interface
The OWASP Foundation http://www.owasp.org
Android reverse engineering: understanding third-party applications OWASP EU Tour 2013 June 5, 2013. Bucharest (Romania) Vicente Aguilera Díaz OWASP Spain Chapter Leader Co-founder of Internet Security
Lab 4 In class Hands-on Android Debugging Tutorial
Lab 4 In class Hands-on Android Debugging Tutorial Submit lab 4 as PDF with your feedback and list each major step in this tutorial with screen shots documenting your work, i.e., document each listed step.
Research and Design of Universal and Open Software Development Platform for Digital Home
Research and Design of Universal and Open Software Development Platform for Digital Home CaiFeng Cao School of Computer Wuyi University, Jiangmen 529020, China [email protected] Abstract. With the development
Smartphone applications Common Criteria is going Mobile ICCC2012 Paris
Dr. Jens Oberender SRC Security Research & Consulting GmbH Smartphone applications ICCC2012 Paris How to CC-evaluate smartphone apps? Agenda Specify Security Target TOE scope Application specific SFRs
Mobile App Reputation
Mobile App Reputation A Webroot Security Intelligence Service Timur Kovalev and Darren Niller April 2013 2012 Webroot Inc. All rights reserved. Contents Rise of the Malicious App Machine... 3 Webroot App
Android Security - Common attack vectors
Institute of Computer Science 4 Communication and Distributed Systems Rheinische Friedrich-Wilhelms-Universität Bonn, Germany Lab Course: Selected Topics in Communication Management Android Security -
DroidTrace: A Ptrace Based Android Dynamic Analysis System with Forward Execution Capability
DroidTrace: A Ptrace Based Android Dynamic Analysis System with Forward Execution Capability Min Zheng, Mingshen Sun, John C.S. Lui The Chinese University of Hong Kong {mzheng,mssun,cslui}@cse.cuhk.edu.hk
Secure Your Mobile Workplace
Secure Your Mobile Workplace Sunny Leung Senior System Engineer Symantec 3th Dec, 2013 1 Agenda 1. The Threats 2. The Protection 3. Q&A 2 The Mobile Workplaces The Threats 4 Targeted Attacks up 42% in
AppRAy: UseRdRiven And fully AUtomAted AndRoid App security Assessment. dennis titze, philipp stephanow, dr. JUliAn schütte
FraunhoFer InstItute For applied and Integrated security AppRAy: UseRdRiven And fully AUtomAted AndRoid App security dennis titze, philipp stephanow, dr. JUliAn schütte App-Ray: User-driven and Fully Automated
IJREAT International Journal of Research in Engineering & Advanced Technology, Volume 1, Issue 1, March, 2013 ISSN: 2320-8791 www.ijreat.
Intrusion Detection in Cloud for Smart Phones Namitha Jacob Department of Information Technology, SRM University, Chennai, India Abstract The popularity of smart phone is increasing day to day and the
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected]
Automating Linux Malware Analysis Using Limon Sandbox Monnappa K A [email protected] A number of devices are running Linux due to its flexibility and open source nature. This has made Linux platform
Smart Shopping- An Android Based Shopping Application
Smart Shopping- An Android Based Shopping Application 1 Adarsh Borkar, 2 Madhura Ansingkar, 3 Monali Khobragade, 4 Pooja Nashikkar, 5 Arti Raut 1,2,3,4 Department of Computer Science and Engineering, 5
ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)
ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Who am I? Lo Chi Wing, Peter Lecture 1: Introduction to Android Development Email: [email protected] Facebook: http://www.facebook.com/peterlo111
A Practical Analysis of Smartphone Security*
A Practical Analysis of Smartphone Security* Woongryul Jeon 1, Jeeyeon Kim 1, Youngsook Lee 2, and Dongho Won 1,** 1 School of Information and Communication Engineering, Sungkyunkwan University, Korea
RecDroid: A Resource Access Permission Control Portal and Recommendation Service for Smartphone Users
RecDroid: A Resource Access Permission Control Portal and Recommendation Service for Smartphone Users Bahman Rashidi Virginia Commonwealth University [email protected] Carol Fung Virginia Commonwealth University
A Research on Camera Based Attack and Prevention Techniques on Android Mobile Phones
A Research on Camera Based Attack and Prevention Techniques on Android Mobile Phones Anushree Pore, Prof. Mahip Bartere PG Student, Dept. of CSE, G H Raisoni College of Engineering, Amravati, Maharashtra,
Smartphone market share
Smartphone market share Gartner predicts that Apple s ios will remain the second biggest platform worldwide through 2014 despite its share deceasing slightly after 2011. Android will become the most popular
Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( [email protected] )
Graduate presentation for CSCI 5448 By Janakiram Vantipalli ( [email protected] ) Content What is Android?? Versions and statistics Android Architecture Application Components Inter Application
OPERATING SYSTEM SERVICES
OPERATING SYSTEM SERVICES USER INTERFACE Command line interface(cli):uses text commands and a method for entering them Batch interface(bi):commands and directives to control those commands are entered
Review on Android and Smartphone Security
Review Paper Abstract Research Journal of Computer and Information Technology Sciences ISSN 2320 6527 Vol. 1(6), 12-19, November (2013) Review on Android and Smartphone Security Tiwari Mohini, Srivastava
AppUse - Android Pentest Platform Unified
AppUse - Android Pentest Platform Unified Standalone Environment AppUse is designed to be a weaponized environment for Android application penetration testing. It is a unique, free, and rich platform aimed
Windows PowerShell Cookbook
Windows PowerShell Cookbook Lee Holmes O'REILLY' Beijing Cambridge Farnham Koln Paris Sebastopol Taipei Tokyo Table of Contents Foreword Preface xvii xxi Part I. Tour A Guided Tour of Windows PowerShell
Running a Program on an AVD
Running a Program on an AVD Now that you have a project that builds an application, and an AVD with a system image compatible with the application s build target and API level requirements, you can run
APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK
APPLICATION SECURITY: FROM WEB TO MOBILE. DIFFERENT VECTORS AND NEW ATTACK John T Lounsbury Vice President Professional Services, Asia Pacific INTEGRALIS Session ID: MBS-W01 Session Classification: Advanced
Reversing Android Malware
Reversing Android Malware The Honeynet Project 10 th Annual Workshop ESIEA PARIS.FR 2011-03-21 MAHMUD AB RAHMAN (MyCERT, CyberSecurity Malaysia) Copyright 2011 CyberSecurity Malaysia MYSELF Mahmud Ab Rahman
Introduction to Android
Introduction to Android Poll How many have an Android phone? How many have downloaded & installed the Android SDK? How many have developed an Android application? How many have deployed an Android application
High Secure Mobile Operating System Based on a New Mobile Internet Device Hardware Architecture
, pp. 127-136 http://dx.doi.org/10.14257/ijfgcn.2015.8.1.14 High Secure Mobile Operating System Based on a New Mobile Internet Device Hardware Architecture Gengxin Sun and Sheng Bin International College
Messing with the Android Runtime
Northeastern University Systems Security Lab Messing with the Android Runtime Collin Mulliner, April 26th 2013, Singapore crm[at]ccs.neu.edu SyScan Singapore 2013 $ finger [email protected] 'postdoc'
BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: 10.1.1. Security Note
BlackBerry Enterprise Service 10 Secure Work Space for ios and Android Version: 10.1.1 Security Note Published: 2013-06-21 SWD-20130621110651069 Contents 1 About this guide...4 2 What is BlackBerry Enterprise
As shown, the emulator instance connected to adb on port 5555 is the same as the instance whose console listens on port 5554.
Tools > Android Debug Bridge Android Debug Bridge (adb) is a versatile tool lets you manage the state of an emulator instance or Android-powered device. It is a client-server program that includes three
Malware Analysis for Android Operating
Malware Analysis for Android Operating Kriti Sharma, Trushank Dand, Tae Oh and William Stackpole Abstract The number of mobile devices has dramatically increased in the last decade. As the mobile devices
AndroLIFT: A Tool for Android Application Life Cycles
AndroLIFT: A Tool for Android Application Life Cycles Dominik Franke, Tobias Royé, and Stefan Kowalewski Embedded Software Laboratory Ahornstraße 55, 52074 Aachen, Germany { franke, roye, kowalewski}@embedded.rwth-aachen.de
Blackbox Android. Breaking Enterprise Class Applications and Secure Containers. Marc Blanchou Mathew Solnik 10/13/2011. https://www.isecpartners.
Blackbox Android Breaking Enterprise Class Applications and Secure Containers Marc Blanchou Mathew Solnik 10/13/2011 https://www.isecpartners.com Agenda Background Enterprise Class Applications Threats
A proposal to realize the provision of secure Android applications - ADMS: an application development and management system -
2012 Sixth International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing A proposal to realize the provision of secure Android applications - ADMS: an application development
CAS : A FRAMEWORK OF ONLINE DETECTING ADVANCE MALWARE FAMILIES FOR CLOUD-BASED SECURITY
CAS : A FRAMEWORK OF ONLINE DETECTING ADVANCE MALWARE FAMILIES FOR CLOUD-BASED SECURITY ABHILASH SREERAMANENI DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SEOUL NATIONAL UNIVERSITY OF SCIENCE AND TECHNOLOGY
International Engineering Journal For Research & Development
Evolution Of Operating System And Open Source Android Application Nilesh T.Gole 1, Amit Manikrao 2, Niraj Kanot 3,Mohan Pande 4 1,M.tech(CSE)JNTU, 2 M.tech(CSE)SGBAU, 3 M.tech(CSE),JNTU, Hyderabad 1 [email protected],
An Introduction to Android
An Introduction to Android Michalis Katsarakis M.Sc. Student [email protected] Tutorial: hy439 & hy539 16 October 2012 http://www.csd.uoc.gr/~hy439/ Outline Background What is Android Android as a
Industrial Adoption of Automatically Extracted GUI Models for Testing
Industrial Adoption of Automatically Extracted GUI Models for Testing Pekka Aho 1,2 [email protected], Matias Suarez 3 [email protected], Teemu Kanstrén 1,4 [email protected], and Atif M. Memon
Design and Implementation of Automatic Attendance Check System Using BLE Beacon
, pp.177-186 http://dx.doi.org/10.14257/ijmue.2015.10.10.19 Design and Implementation of Automatic Attendance Check System Using BLE Beacon Mi-Young Bae and Dae-Jea Cho * Dept. Of Multimedia Engineering,
Android Geek Night. Application framework
Android Geek Night Application framework Agenda 1. Presentation 1. Trifork 2. JAOO 2010 2. Google Android headlines 3. Introduction to an Android application 4. New project using ADT 5. Main building blocks
Defending Behind The Device Mobile Application Risks
Defending Behind The Device Mobile Application Risks Tyler Shields Product Manager and Strategist Veracode, Inc Session ID: MBS-301 Session Classification: Advanced Agenda The What The Problem Mobile Ecosystem
How To Use Titanium Studio
Crossplatform Programming Lecture 3 Introduction to Titanium http://dsg.ce.unipr.it/ http://dsg.ce.unipr.it/?q=node/37 [email protected] 2015 Parma Outline Introduction Installation and Configuration
Android Application for Accessing KNX Devices via IP Connection
Android Application for Accessing KNX Devices via IP Connection J. A. Nazabal, J. Gómez, F. Falcone, C. Fernández-Valdivielso, P. E. Branchi and I. R. Matías Electrical and Electronic Engineering Department,
Harvesting Developer Credentials in Android Apps
8 th ACM Conference on Security and Privacy in Wireless and Mobile Networks, New York City, Jun 24-26 Harvesting Developer Credentials in Android Apps Yajin Zhou, Lei Wu, Zhi Wang, Xuxian Jiang Florida
Fight fire with fire when protecting sensitive data
Fight fire with fire when protecting sensitive data White paper by Yaniv Avidan published: January 2016 In an era when both routine and non-routine tasks are automated such as having a diagnostic capsule
Introduction to Android
Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 Development on Android 3 Applications:
Automation of Smartphone Traffic Generation in a Virtualized Environment. Tanya Jha Rashmi Shetty
Automation of Smartphone Traffic Generation in a Virtualized Environment Tanya Jha Rashmi Shetty Abstract Scalable and comprehensive analysis of rapidly evolving mobile device application traffic is extremely
Mobile security, forensics & malware analysis with Santoku Linux. * Copyright 2013 viaforensics, LLC. Proprietary Information.
Mobile security, forensics & malware analysis with Santoku Linux PRESENTER - ANDREW HOOG CEO/Co-founder of viaforensics Andrew is a published author, computer scientist, and mobile security & forensics
DroidBarrier: Know What is Executing on Your Android
DroidBarrier: Know What is Executing on Your Android Hussain M. J. Almohri [email protected] Department of Computer Science Kuwait University, Kuwait Danfeng (Daphne) Yao [email protected] Department
Mobile Application Hacking for Android and iphone. 4-Day Hands-On Course. Syllabus
Mobile Application Hacking for Android and iphone 4-Day Hands-On Course Syllabus Android and iphone Mobile Application Hacking 4-Day Hands-On Course Course description This course will focus on the techniques
Trend Micro Incorporated Research Paper 2012. Adding Android and Mac OS X Malware to the APT Toolbox
Trend Micro Incorporated Research Paper 2012 Adding Android and Mac OS X Malware to the APT Toolbox Contents Abstract... 1 Introduction... 1 Technical Analysis... 2 Remote Access Trojan Functionality...
Dependability Issues of Android Games: A First Look via Software Analysis
Dependability Issues of Android Games: A First Look via Software Analysis Jiaojiao Fu Yangfan Zhou Yu Kang School of Computer Science, Fudan University Shenzhen Key Laboratory of Rich Media Big Data Analytics
Open Access Research and Design for Mobile Terminal-Based on Smart Home System
Send Orders for Reprints to [email protected] The Open Automation and Control Systems Journal, 2015, 7, 479-484 479 Open Access Research and Design for Mobile Terminal-Based on Smart Home System
Introduction to Android
Introduction to Android 26 October 2015 Lecture 1 26 October 2015 SE 435: Development in the Android Environment 1 Topics for Today What is Android? Terminology and Technical Terms Ownership, Distribution,
Frequently Asked Questions. Secure Log Manager. Last Update: 6/25/01. 6303 Barfield Road Atlanta, GA 30328 Tel: 404.236.2600 Fax: 404.236.
Frequently Asked Questions Secure Log Manager Last Update: 6/25/01 6303 Barfield Road Atlanta, GA 30328 Tel: 404.236.2600 Fax: 404.236.2626 1. What is Secure Log Manager? Secure Log Manager (SLM) is designed
Adobe Flash Player and Adobe AIR security
Adobe Flash Player and Adobe AIR security Both Adobe Flash Platform runtimes Flash Player and AIR include built-in security and privacy features to provide strong protection for your data and privacy,
Bypassing SSL Pinning on Android via Reverse Engineering
Bypassing SSL Pinning on Android via Reverse Engineering Denis Andzakovic Security-Assessment.com 15 May 2014 Table of Contents Bypassing SSL Pinning on Android via Reverse Engineering... 1 Introduction...
Intrusion Detection System in Campus Network: SNORT the most powerful Open Source Network Security Tool
Intrusion Detection System in Campus Network: SNORT the most powerful Open Source Network Security Tool Mukta Garg Assistant Professor, Advanced Educational Institutions, Palwal Abstract Today s society
Offloading file search operation for performance improvement of smart phones
Offloading file search operation for performance improvement of smart phones Ashutosh Jain [email protected] Vigya Sharma [email protected] Shehbaz Jaffer [email protected] Kolin Paul
Malware detection methods for fixed and mobile networks
Malware detection methods for fixed and mobile networks Gavin McWilliams January 2013 [email protected] Academic Centre of Excellence in Cyber Security Research Presentation Outline Malware detection
Two Vulnerabilities in Android OS Kernel
IEEE ICC 2013 - Wireless Networking Symposium Two Vulnerabilities in Android OS Kernel Xiali Hei, Xiaojiang Du and Shan Lin Department of Computer and Information Sciences Temple University Philadelphia,
Data Mining in Web Search Engine Optimization and User Assisted Rank Results
Data Mining in Web Search Engine Optimization and User Assisted Rank Results Minky Jindal Institute of Technology and Management Gurgaon 122017, Haryana, India Nisha kharb Institute of Technology and Management
