FireDroid: Hardening Security in Almost-Stock Android Presented By: Kenneth Siu.

Slides:



Advertisements
Similar presentations
Operating System Security
Advertisements

Syracuse University, New York, USA
FireDroid: Hardening Security in Almost-Stock Android Giovanni Russello, Arturo Blas Jimenez, Habib Naderi, Wannes van der Mark 1 University of Auckland,
Dissecting Android Malware : Characterization and Evolution
Aurasium: Practical Policy Enforcement for Android Applications By Yaoqi USENIX Security Symposium 2012.
Chapter 6 Security Kernels.
Building and Deploying Safe and Secure Android Apps for Enterprise Presented by Technology Consulting Group at Endeavour Software Technologies.
A SECURE JAILING SYSTEM FOR CONFINING UNTRUSTED APPLICATIONS Guido Noordende, ´Ad´am Balogh, Rutger Hofman, Frances M. T. Brazier, and Andrew S. Tanenbaum.
Aurasium: Practical Policy Enforcement for Android Applications R. Xu, H. Saidi and R. Anderson Presented By: Rajat Khandelwal – 2009CS10209 Parikshit.
ROOTKIT VIRUS by Himanshu Mishra Points to be covered Introduction History Uses Classification Installation and Cloaking Detection Removal.
Aurasium: Practical Policy Enforcement for Android Applications R. Xu, H. Saidi and R. Anderson.
Android Security Enforcement and Refinement. Android Applications --- Example Example of location-sensitive social networking application for mobile phones.
William Enck, Machigar Ongtang, and Patrick McDaniel.
R ETRO S KELETON : R ETROFITTING A NDROID A PPS Benjamin Davis, Hao Chen University of California, Davis MobiSys 2013.
IOS & Android Security, Hacking and Tweaking Workshop D.Papamartzivanos University Of the Aegean – Info Sec Lab Android Security – Cydia Substrate Dimitris.
CS 153 Design of Operating Systems Spring 2015 Lecture 24: Android OS.
Presentation By Deepak Katta
Understanding Android Security Yinshu Wu William Enck, Machigar Ongtang, and PatrickMcDaniel Pennsylvania State University.
Introduction Our Topic: Mobile Security Why is mobile security important?
A METHODOLOGY FOR EMPIRICAL ANALYSIS OF PERMISSION-BASED SECURITY MODELS AND ITS APPLICATION TO ANDROID.
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
Lei Wu, Michael Grace, Yajin Zhou, Chiachih Wu, Xuxian Jiang Department of Computer Science North Carolina State University CCS 2013.
Enhancing User Privacy on Android Devices Bachelor of Computer Science (Honours) Name: Quang Do Supervisor: Raymond Choo Associate Supervisor: Ben Martini.
Detecting and Preventing Privilege- Escalation on Android Jiaojiao Fu 1.
All Your Droid Are Belong To Us: A Survey of Current Android Attacks 단국대학교 컴퓨터 보안 및 OS 연구실 김낙영
Presented by: Kushal Mehta University of Central Florida Michael Spreitzenbarth, Felix Freiling Friedrich-Alexander- University Erlangen, Germany michael.spreitzenbart,
Lecture slides prepared for “Computer Security: Principles and Practice”, 3/e, by William Stallings and Lawrie Brown, Chapter 5 “Database and Cloud Security”.
Monitoring Malware at Runtime. From Last Lecture Malware authors use advanced coding for avoiding detection AnserverBot is a very sophisticate piece of.
CSE 4481 Computer Security Lab Mark Shtern. INTRODUCTION.
Three fundamental concepts in computer security: Reference Monitors: An access control concept that refers to an abstract machine that mediates all accesses.
Rensselaer Polytechnic Institute CSCI-4210 – Operating Systems CSCI-6140 – Computer Operating Systems David Goldschmidt, Ph.D.
Lecture 2 Title: Computer Software By: Mr Hashem Alaidaros MIS 101.
AppShield: A Virtual File System in Enterprise Mobility Management Zhengyang Qu 1 Northwestern University, IL, US,
A multi-Criteria-based Evaluation of Android Application Andrea Saracino, G. Dini, F. Martinelli, I. Matteucci, M.Petrocchi, D. Sgandurra InTrust 2012.
Mathieu Castets October 17th,  What is a rootkit?  History  Uses  Types  Detection  Removal  References 2/11.
1 Company Proprietary and ConfidentialThe document name can go here Android OS Security Omar Alaql July 8, 2013 Kent State University Android OS Security.
Week 10-11c Attacks and Malware III. Remote Control Facility distinguishes a bot from a worm distinguishes a bot from a worm worm propagates itself and.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
CSE 4481 Computer Security Lab Mark Shtern. INTRODUCTION.
Android Security Auditing Slides and projects at samsclass.info.
Android Security Extensions. Android Security Model Main objective is simplicity Users should not be bothered Does the user care? Most do not care…until.
VMM Based Rootkit Detection on Android Class Presentation Pete Bohman, Adam Kunk, Erik Shaw.
Virtual Workspaces Kate Keahey Argonne National Laboratory.
CompSci 725 RiskRanker Authors Michael Grace - North Carolina State University, Raleigh, NC, USA & NQ Mobile Security Research Center, Beijing, China Yajin.
ANDROID BY:-AANCHAL MEHTA MNW-880-2K11. Introduction to Android Open software platform for mobile development A complete stack – OS, Middleware, Applications.
Android System Security Xinming Ou. Android System Basics An open-source operating system for mobile devices (AOSP, led by Google) – Consists of a base.
Security Vulnerabilities in A Virtual Environment
Wireless and Mobile Security
1 REMOTE CONTROL SYSTEM V7 2 Introduction.
Computer virus Speaker : 蔡尚倫.  Introduction  Infection target  Infection techniques Outline.
Computer Security Threats CLICKTECHSOLUTION.COM. Computer Security Confidentiality –Data confidentiality –Privacy Integrity –Data integrity –System integrity.
Dilip Dwarakanath.  The topic I’m about to present was taken from a paper titled “Apple iOS 4 Security Evaluation” written by Dino A Dai Zovi.  Dino.
VMM Based Rootkit Detection on Android
Mark Shtern.  Our life depends on computer systems  Traffic control  Banking  Medical equipment  Internet  Social networks  Growing number of.
Security-Enhanced Linux Stephanie Stelling Center for Information Security Department of Computer Science University of Tulsa, Tulsa, OK
Nguyen Thi Thanh Nha HMCL by Roelof Kemp, Nicholas Palmer, Thilo Kielmann, and Henri Bal MOBICASE 2010, LNICST 2012 Cuckoo: A Computation Offloading Framework.
Securing a Host Computer BY STEPHEN GOSNER. Definition of a Host  Host  In networking, a host is any device that has an IP address.  Hosts include.
PREPARED BY: MS. ANGELA R.ICO & MS. AILEEN E. QUITNO (MSE-COE) COURSE TITLE: OPERATING SYSTEM PROF. GISELA MAY A. ALBANO PREPARED BY: MS. ANGELA R.ICO.
DeepDroid Dynamically Enforcing Enterprise Policy Manwoong (Andy) Choi
Android and IOS Permissions Why are they here and what do they want from me?
COMPSCI 702 DeepDroid Dynamically Enforcing Enterprise Policy on Android Devices Presenter: Jie Yuan (Jeff)
ANDROID ACCESS CONTROL Presented by: Justin Williams Masters of Computer Science Candidate.
Database and Cloud Security
BotTracer: Bot User Detection Using Clustering Method in RecDroid
Firmware threat Dhaval Chauhan MIS 534.
Android System Security
TaintART: A Practical Multi-level Information-Flow Tracking System for Android RunTime Sadiq Basha.
Suwen Zhu, Long Lu, Kapil Singh
Android.Adware.Plankton.A % Android.Adware.Wapsx.A – 4.73%
Understanding Android Security
Presentation transcript:

FireDroid: Hardening Security in Almost-Stock Android Presented By: Kenneth Siu

Motivation Malware prevalent on Android devices Anti-virus software fails to detect 21% of malware Devices are still vulnerable to many attacks Need more sophistication than checking privileges Need a way to enforce policies Most fine-grained approaches require modifying the Android image Difficult because of many variations of Android images available

Recent Malware Examples sophistication-in-mobile-malware/ App disguised as a game Gains root access and installs an APK (“The Backdoor”) as a system application Uses package of exploits to gain root access APK executes code from a server and does not let user uninstall Overlays ads on other applications

Recent Malware Examples Durak, IQ Test App, History App, and many more. Waits multiple weeks before opening ads every time a user unlocks phone Sends premium SMS if user follows ads Sometimes even sends users to security apps infect-millions-of-users-with-adware/

Introduction to FireDroid Enforces fine-grained security policies Does not need to change internal modules of Android OS (no need to modify Android Image) Exploits how Android spawns applications Does not rely on user input Able to monitor any code executed on a device Implements a FireDroid Policy Language to easily maintain permissions on any application

FireDroid System Overview

FireDroid App Monitor (FDAM) Each Linux process monitored by FDAM Attaches to process using ptrace() Policy Enforcement Point (PEP) Policy Decision Point (PDP) Policy Repository (PR) System call arguments are sent to the buffer before copying arguments back to original address

FireDroid Service (FDS) Service implemented as an app Requests user for input on whether to allow, deny, or kill Policy Administration Point (PAP) Remote Policy Manager (RPM) Global Policy Repository (GPR)

Zygote Zygote Process Forks new processes and copies its initialized structures Allows for faster startup of applications Exploit this process

FireDroid Main Monitor (FDMM) Responsible for monitoring Zygote it forks() itself FDMM is inserted as a parent process to Zygote By becoming the parent process, it becomes the parent process to all processes run on the device Can intercept and monitor all system calls Zygote ptrace() FDMM

Implementation of FDMM Need to modify init.rc init.rc is a text file that is used in android when booting up. May need device to be rooted to extract boot partition Unroots device after modification of file Allows one to monitor both third-party and pre-installed applications Can even control IPC

FireDroid Policy Language Syntax of FireDroid Policy Language

Limiting SMS Messages Preventing Malicious Code to Hide Received SMS Prevent Sending of SMS Messages

Preventing Vulnerabilities Prevent Application from Forking Too Many Times

Testing – Benchmarks Used Quadrant and BenchmarkPi as benchmarking tools (HTC One X) Tested on a variety of devices Large overhead in I/O Overhead due to context switching

Testing – Test Application Created Test Application Simulates web browsing Sends implicit intent Accesses contact list Accesses GPS FireDroid allows each of these actions Tested Energy Efficiency Only 3.3% less efficient than without FireDroid

Related Work - MockDroid Modified Image of Android ‘Mocks’ application access to a resource Can send constant or empty values Revoke resources at run-time Needs to modify the Android OS Inflexible and is difficult to implement in a variety of devices

Related Work – TISSA Taming Information-Stealing Smartphone Applications Focuses on adding a privacy mode to users that can be controlled in a fine-grained manner Uses the PEP and PAP similar to FireDroid Can send bogus or anonymized results back to application Needs a modification to the Android Image Only focuses on protecting privacy Does not allow the user to decide on a permission nor does it allow the killing of a process

Related Work – RetroSkeleton Rewrites applications and repackages APK Redeploys APK with policy enforcer in place Does not need rooting the device nor changing the Android OS High level of flexibility Each app has to be digitally resigned – will use a different developer key Does not work for Native Development Kit (NDK) applications

Related Work - RecDroid Builds on top of the idea of FireDroid Also uses the idea that users are mainly inexperienced Takes into account expert’s opinion on applications Ranks applications based on security assessment Needs changing the Android OS

Critique Somewhat high overhead – especially in I/O intensive applications Claims to not change Android OS – still needs to root device and change init.rc Not as flexible as frameworks like RetroSkeleton Can not modify what happens on policy invocation

Future Work Change how FireDroid interacts with ptrace() Can assess system calls without context switching Reduce overhead Allow for dynamic analysis of system calls All FireDroid does currently is checks if a system call is being invoked Create a more flexible framework Allow for changing functionality when some permissions are requested Allow to send back bogus or anonymous information

Questions?

Bibliography 1.Giovanni Russello, Arturo Blas Jimenez, Habib Naderi, and Wannes van der Mark FireDroid: hardening security in almost-stock Android. In Proceedings of the 29th Annual Computer Security Applications Conference (ACSAC '13). ACM, New York, NY, USA, DOI= 2.Alastair R. Beresford, Andrew Rice, Nicholas Skehin, and Ripduman Sohan MockDroid: trading privacy for application functionality on smartphones. In Proceedings of the 12th Workshop on Mobile Computing Systems and Applications (HotMobile '11). ACM, New York, NY, USA, DOI= 3.Benjamin Davis and Hao Chen RetroSkeleton: retrofitting android apps. In Proceeding of the 11th annual international conference on Mobile systems, applications, and services (MobiSys '13). ACM, New York, NY, USA, DOI= 4.Yajin Zhou, Xinwen Zhang, Xuxian Jiang, and Vincent W. Freeh Taming information-stealing smartphone applications (on Android). In Proceedings of the 4th international conference on Trust and trustworthy computing (TRUST'11), Jonathan M. McCune, Boris Balacheff, Adrian Perrig, Ahmad-Reza Sadeghi, and Angela Sasse (Eds.). Springer-Verlag, Berlin, Heidelberg, Bahman Rashidi, Carol Fung, and Tam Vu RecDroid: a resource access permission control portal and recommendation service for smartphone users. In Proceedings of the ACM MobiCom workshop on Security and privacy in mobile environments (SPME '14). ACM, New York, NY, USA, DOI=