Enhancing Android App Security with SAINT Policy Framework
360 likes | 396 Vues
Explore the advanced defense strategies for securing Android applications using the SAINT Policy framework. Learn about permission labels, policies, and architecture to protect against malicious activities.
Enhancing Android App Security with SAINT Policy Framework
E N D
Presentation Transcript
MachigarOngtang, Stephen McLaughlin, William Enck, Patrick McDaniel Department of Computer Science and Engineering The Pennsylvania State University ACSCA 2009 Semantically Rich Application-Centric Security in Android Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Introduction • Applications on mobile platform • Apple’s App Store • Android’s Market • BlackBerry App World • Android Security • Using permission label Advanced Defense Laboratory
Introduction (cont.) • In Manifest.xml: • You can not use the functions which are not in your application permission Advanced Defense Laboratory
Introduction (cont.) • Users are impossible to make good choices about the application permissions • The Android system protects the phone from malicious applications, but provides severely limited infrastructure for applications to protect themselves Advanced Defense Laboratory
Introduction (cont.) • Android Security Framework • Permission Assignment Policy • Interface Exposure Policy • Interface Use Policy • Secure Application INTeraction (Saint) framework • Installation-time Policy • Runtime Policy Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Smartphone Application Security PersonalShopper can get location info only if it holds the permissions. • Example: If Ledger has the permission to access Internet, it might leak transaction info. PeronalShopper only trust Secure Payment and Trust Checkout . Password vault app contain bugs in v1.1. So application needs the new version. Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Android http://developer.android.com/intl/zh-TW/guide/basics/what-is-android.html Advanced Defense Laboratory
Android (cont.) • Applications are ostensibly isolated • Android IPC : Binder and Intent • ioctl driver • Intent Filter: Advanced Defense Laboratory
Android (cont.) • Activity • Display on screen Advanced Defense Laboratory
Android (cont.) • Service • Background process Advanced Defense Laboratory
Android (cont.) • Broadcast Receiver • Asynchronous event notification Advanced Defense Laboratory
Android (cont.) • Content Provider • Share data between applications • Do not use Intents • Use URI (Uniform Resource Identifier) Advanced Defense Laboratory
Android (cont.) • Permission label in Android • Normal • Dangerous • Signature • signatureOrSystem • Developers can define permission labels to access their interface • But developers indirectly influence security Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Application Policies • Policy Tree: • Double-stoke boxes is supported by Android Advanced Defense Laboratory
Application Policies (cont.) • Signature-based policy (1.2) • Define set of except signatures • Configuration-based policy (1.3) • E.g., Application version and the set of request permissions Advanced Defense Laboratory
Application Policies (cont.) • Signature-based policy (2.2) • Configuration-based policy (2.3) • Phone Context-based Policy (2.4) Advanced Defense Laboratory
Application Policies (cont.) • Install-time Policy Example • com.abc.lbs with “QueryByLocation” service • Developer Permission: com.abc.perm.getloc • Permission: ACCESS_LOCATION • Runtime Policy Example • com.ok.shopper wants to check the payment application • Signature checks Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
SAINT Policy Install-Time Run-Time Advanced Defense Laboratory
SAINT Policy (cont.) • Install-time Policy Example Advanced Defense Laboratory
SAINT Policy (cont.) • Runtime Policy • Access policy • Identify the caller’s security requirements • Expose policy • Identify the callee’s security requirements • Saint is a “conjunctional default allow policy” Advanced Defense Laboratory
SAINT Policy (cont.) • Runtime PolicyExample Advanced Defense Laboratory
SAINT Policy (cont.) • Administrative Policy • May users override the system/application policies? • Operational Policy Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
SAINT Architecture • Saint Installer • PackageParser / PackageManager • Insert each policy into AppPolicy provider only if its permission label is declared by the application Advanced Defense Laboratory
SAINT Architecture (cont.) • Saint Mediator Advanced Defense Laboratory
SAINT Architecture (cont.) • AppPolicy Provider • SQLite • verifyPermissionGrant API • insertApplicationPolicy API • FrameworkPolicyManager • Only FrameworkPolicyManager can update AppPolicy provider Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Related Work • Kirin • Enforce install policies • Application Security Framework by OMTP • Certificate-based mechanism • Symbian • Symbian-signed Advanced Defense Laboratory
Related Work (cont.) • Linux Security Module (LSM) Framework • Isolation • SELinux on OpenMoko • Rao et al. • MAC system • Windows Mobile .Net • Bind each application to a behavioral profile enforced at runtime Advanced Defense Laboratory
Outline • Introduction • Smartphone Application Security • Android • Application Policies • SAINT Policy • SAINT Architecture • Related Work • Conclusion Advanced Defense Laboratory
Conclusion • Saint framework • Install-time and runtime policy enforcement Advanced Defense Laboratory