Font Size: a A A

Improving The Security Of Android Platform

Posted on:2015-08-18Degree:DoctorType:Dissertation
Country:ChinaCandidate:Y ZhangFull Text:PDF
GTID:1108330464955442Subject:Computer system architecture
Abstract/Summary:PDF Full Text Request
Mobile computing is currently the most popular computing wave. With the development of wireless internet, complex computations that previously can’t be afforded by mobile platform can be conveniently migrated to cloud. Meanwhile, the rich hardware facilities together with powerful programmability of mobile platform have brought dramatic experience and flexibility. In mobile computing, Android platform has been expanding its market share as the most popular platform in the world wide. Currently, it has been applied to consumer devices, enterprise, government, military, automobiles, manufacturing, etc.As the wide application of Android-powered devices to all areas of our life, one indispensable requirement of Android platform is the security of the system itself as well as the applications. However, Android ecosystem is now facing severe security threats, such as widespread malware, frequently reported vulnerabilities. Due to some specific features of Android platform, several challenges are faced when improving the security of Android platform, such as:1) security analysis of massive applications, which requires automatic analysis of application behavior; 2) coordination of multi-layer software stacks, which requires the security extension should protect resources in all software layers; 3) flexible deployment, which demands vulnerability patches distributed transparently to fragmented Android versions; 4) performance impact, that should be considered in applying security extensions practically.Generally, previous research efforts in Android security can be categorized into three aspects:1) Malware analysis and detection, which investigates techniques to figure the sensitive behavior of Android applications and extract significant malicious behavior fingerprints for detecting already-known and zero-day malware samples. For example, DroidScope proposes a technique to reconstruct Java behaviors at the level of native code execution, which contributes to comprehension of Android application behavior; 2) Vulnerability analysis and detection, which explores unknown threats to Android system and designs techniques to detect such flaws. For example, CHEX points out the flaws in component interaction, and combines data flow analysis with code split enumeration technique to achieve automatic and accurate detection of such vulnerabilities; 3) System security hardening, by retrofitting current security mechanism to support new paradigm of security service from the system layer. For example, TrustDroid introduces trust domain concept to protect trusted applications by forbidding interactions from untrusted applications.However, there are still several problems in current Android security research area. Most system hardening efforts usually focus on a separate security problem and always lack flexibility. Current work have not well observed the flaws in the security mechanism itself, while trying to fix exposed security problems one by one. For example, IPC Inspection only prevents improper permission use through application interaction, while Compac only prevents improper permission use via in-application attack. Besides, current behavior analysis work could not effectively figure sensitive behaviors inside applications as well as interactions between application and system, due to not considering the new programming model and security mechanism in Android. Additionally, security improvements always come with a price. Performance penalty is the most important problem to solve when applying security techniques to real world, while this part is less addressed in existing security research.Based on the detailed analysis of Android platform and its specific features, this dissertation proposes practical and systematic solutions to improve the security of Android platform for both its two main components:application market and end system. These solutions are invented to address limitations of current security research in Android from various aspects, i.e. from application security analysis to system security enhancement, and from security application design to system performance optimization.Specifically, the proposed solutions are composed of the following key techniques and systems that solve different difficulties:1. Practical and effective behavior analysis of Android applications by introducing systematic permission use analysis. Design and implementation of VetDroid system based on the idea. VetDroid system performs dynamic analysis and automatically collects permission-sensitive behaviors during the analysis, including explicit and implicit permission use behaviors. To cope with specific features of Android, VetDroid crafts several techniques to achieve complete permission use identification and accurate permission information extraction. As a general behavior analysis technique, VetDroid could not only analyze internal behaviors of malware samples, but also vet undesirable behaviors inside benign applications.2. General and flexible security hardening of Android system by proposing application context tracking. Design and implementation of FineDroid system based on the idea. Along with the application execution, FineDroid system automatically tracks the application context which is composed of two parts: intra-application context and inter-application context. By retrofitting key components of Android system, FineDroid provides strong guarantee in context tracking and such tracking is seamless. Combining with a policy-driven framework, FineDroid achieves flexible and context-sensitive regulations over the permission usage. The policy framework is designed to be extensible to support new applications built upon FineDroid.3. Three security applications based on FineDroid to provide different security benefits for end-users, administrators and developers. Aurasuim+ system provides in-context permission granting for end-users to balance security and usability. DroidFence technique enables administrators to transparently fix security vulnerabilities without modifying system nor applications, rendering appealing flexibility in deployment. CompJail system provides developers with the ability to declare fine-grained permission specifications to isolate untrusted in-app third-party code components.4. Lightweight and effective performance optimization of Android system by presenting register mapping based Just-In-Time compilation. Design and Implementation of Swift system based on the idea. With the observation that more than 90% Java methods use no more than 11 virtual registers, Swift performs one-to-one mapping from virtual register to physical registers to achieve fast register allocation. By exploiting the similarity between register-based bytecode and register-based processor, Swift efficiently generates code with good quality. Compared with the state-of-the-art technique, Swift achieves a further performance speedup of 40%.
Keywords/Search Tags:Android Security, Software Analysis, Permission Model, Vulnerability, Just-In-Time Compilation
PDF Full Text Request
Related items