SlideShare a Scribd company logo
William Enck, Machigar Ongtang, and PatrickMcDanielWilliam Enck, Machigar Ongtang, and PatrickMcDaniel
Pennsylvania State UniversityPennsylvania State University
Presented by:
Dilruk G.A .(148209B)
Jagoda S.D. (148214K)
Outline
 Introduction
 Android Applications
 Security Enforcement
 Security Refinements
 Lessons in Defining Policy
Introduction
 Android (Google)
 Open source
 A base operation system for
mobiles
 Application middleware layer
 Java software development kit
 Collection of system
applications
Feature of Android OS
 Doesn’t support applications developed for other
platforms
 Restricts application interaction to its special APIs
by running each application as its own user identity
 Uses a simple permission label assignment model to
restrict access to resources and other applications
Android OS Architecture
Example Application
FriendTracker - Component Interaction
Intent - message
object containing
a destination
component
address and data
Action - the
process of inter-
components
communication
Security Enforcement
 Android applications execute as its own user identity, allowing the
underlying Linux system to provide system-level isolation
 Android middleware contains a reference monitor that mediates the
establishment of inter-component communication (ICC)
Security Enforcement
 Core idea of Android security enforcement - labels assignment to
applications and components
 A reference monitor provides mandatory access control (MAC)
enforcement of how applications access components
 Access to each component is restricted by assigning it an access
permission label. Applications are assigned collections of permission
labels
 When a component initiates ICC, the reference monitor looks at the
permission labels assigned to its containing application and— if the target
component’s access permission label is in that collection— allows ICC
establishment to proceed.
Security Enforcement : Access permission logic Example
 Component A’s ability to access components B and C is determined
by comparing the access permission labels on B and C to the
collection of labels assigned to application 1.
Android
Security Refinements
Public and Private Components
 Applications often contain components that another
application should never access. For example,
component related to password storing.
 The solution is to Instead of defining an access
permission user can define the component as private.
 Best Practice: Always set the “exported” attribute.
 This significantly reduces the attack surface for many
applications.
Implicitly Open Components
 At development time, if the decision of access
permission is unclear, The developer can permit
the functionality by not assigning an access
permission to it.
 If a public component doesn’t explicitly have an
access permission listed in its manifest definition,
Android permits any application to access it.
 Best Practice: Should always assign access
permissions to public components.
Intent Broadcast Permissions
 Sending the unprotected intent is a privacy risk.
 Android API for broadcasting intents optionally
allows the developer to specify a permission label
to restrict access to the intent object.
 Best Practice: Always specify an access
permission on Intent broadcasts
Content Provider Permissions
 If the developer want his application to be the only
one to update the contents but for other
applications to be able to read them.
 Android allows such a security policy assigning
read or write permissions.
 Best Practice: Always define separate read and
write permissions.
Service Hooks
 Android only lets the developer assign one
permission label to restrict starting, stopping, and
binding to a service.
 Under this model, any application can start or stop
Friend tracker can also tell it to monitor new
friends.
 Best Practice: Use service hooks and let the
developers write code to perform custom runtime
security.
 Eg.. Use checkPermission() to mediate
“administrative” operations in Friend Tracker .
Protected APIs
 Not all system are accessed through components—
instead, Android provides direct API access.
 Android protects these sensitive APIs with
additional permission label checks: an application
must declare a corresponding permission label in
its manifest file to use them.
 Best Practice: Application need to request
permissions for protected APIs
Permission Protection Levels
 The permission protection levels provide a means of
controlling how developers assign permission labels.
 Normal – grant to any application that request them in
its manifest
 Dangerous – granted only after user confirmation
 Signature – granted only to application signed by the
same developer key
 Signature or system – same like signature but exist for
legacy compatibility.
 Best Practice: Use either signature or dangerous
permissions depending on the application behaviour
Pending Intents
 The Pending Intent object is simply a reference
pointer that can pass to another application.
 Recipient application can modify the original
intent and specify when the action is invoked.
 Pending intents allow applications included with
the framework to integrate better with third-party
applications.
 Best Practice: Only use Pending Intents as
“delayed callbacks” to private Components and
always specify the private broadcast receiver.
Lessons in Defining Policy
 Android security policy begins with a relatively
easy-to-understand MAC enforcement model
 Some refinements push policy into the application
code
 The permission label itself is merely a text string,
but its assignment to an application provides
access to potentially limitless resources
Understanding Android Security
Ad

More Related Content

What's hot (20)

Android pentesting
Android pentestingAndroid pentesting
Android pentesting
Mykhailo Antonishyn
 
Getting started with Android pentesting
Getting started with Android pentestingGetting started with Android pentesting
Getting started with Android pentesting
Minali Arora
 
Windows Security
Windows Security Windows Security
Windows Security
Pooja Talreja
 
Android PPT Presentation 2018
Android PPT Presentation 2018Android PPT Presentation 2018
Android PPT Presentation 2018
Rao Purna
 
Android OS 2019
Android OS 2019Android OS 2019
Android OS 2019
HadiqaMengal
 
Mobile security
Mobile securityMobile security
Mobile security
dilipdubey5
 
Android Security
Android SecurityAndroid Security
Android Security
Arqum Ahmad
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
Benny Skogberg
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
Neha Sharma
 
Broadcast receivers
Broadcast receiversBroadcast receivers
Broadcast receivers
maamir farooq
 
Mobile Application Security
Mobile Application SecurityMobile Application Security
Mobile Application Security
Ishan Girdhar
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
Andreas Jakl
 
Android security and penetration testing | DIVA | Yogesh Ojha
Android security and penetration testing | DIVA | Yogesh OjhaAndroid security and penetration testing | DIVA | Yogesh Ojha
Android security and penetration testing | DIVA | Yogesh Ojha
Yogesh Ojha
 
Basic Security Concepts of Computer
Basic Security Concepts of ComputerBasic Security Concepts of Computer
Basic Security Concepts of Computer
Faizan Janjua
 
Android application security testing
Android application security testingAndroid application security testing
Android application security testing
Mykhailo Antonishyn
 
Android - A brief introduction
Android - A brief introductionAndroid - A brief introduction
Android - A brief introduction
Roshan Gautam
 
Web Information Systems Lecture 1: Introduction
Web Information Systems Lecture 1: IntroductionWeb Information Systems Lecture 1: Introduction
Web Information Systems Lecture 1: Introduction
Katrien Verbert
 
Android Security
Android SecurityAndroid Security
Android Security
Lars Jacobs
 
XXE Exposed: SQLi, XSS, XXE and XEE against Web Services
XXE Exposed: SQLi, XSS, XXE and XEE against Web ServicesXXE Exposed: SQLi, XSS, XXE and XEE against Web Services
XXE Exposed: SQLi, XSS, XXE and XEE against Web Services
Abraham Aranguren
 
The Future of Cyber Security
The Future of Cyber SecurityThe Future of Cyber Security
The Future of Cyber Security
Stephen Lahanas
 
Getting started with Android pentesting
Getting started with Android pentestingGetting started with Android pentesting
Getting started with Android pentesting
Minali Arora
 
Android PPT Presentation 2018
Android PPT Presentation 2018Android PPT Presentation 2018
Android PPT Presentation 2018
Rao Purna
 
Android Security
Android SecurityAndroid Security
Android Security
Arqum Ahmad
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
Benny Skogberg
 
Mobile Operating System
Mobile Operating SystemMobile Operating System
Mobile Operating System
Neha Sharma
 
Mobile Application Security
Mobile Application SecurityMobile Application Security
Mobile Application Security
Ishan Girdhar
 
Mobile Operating Systems
Mobile Operating SystemsMobile Operating Systems
Mobile Operating Systems
Andreas Jakl
 
Android security and penetration testing | DIVA | Yogesh Ojha
Android security and penetration testing | DIVA | Yogesh OjhaAndroid security and penetration testing | DIVA | Yogesh Ojha
Android security and penetration testing | DIVA | Yogesh Ojha
Yogesh Ojha
 
Basic Security Concepts of Computer
Basic Security Concepts of ComputerBasic Security Concepts of Computer
Basic Security Concepts of Computer
Faizan Janjua
 
Android application security testing
Android application security testingAndroid application security testing
Android application security testing
Mykhailo Antonishyn
 
Android - A brief introduction
Android - A brief introductionAndroid - A brief introduction
Android - A brief introduction
Roshan Gautam
 
Web Information Systems Lecture 1: Introduction
Web Information Systems Lecture 1: IntroductionWeb Information Systems Lecture 1: Introduction
Web Information Systems Lecture 1: Introduction
Katrien Verbert
 
Android Security
Android SecurityAndroid Security
Android Security
Lars Jacobs
 
XXE Exposed: SQLi, XSS, XXE and XEE against Web Services
XXE Exposed: SQLi, XSS, XXE and XEE against Web ServicesXXE Exposed: SQLi, XSS, XXE and XEE against Web Services
XXE Exposed: SQLi, XSS, XXE and XEE against Web Services
Abraham Aranguren
 
The Future of Cyber Security
The Future of Cyber SecurityThe Future of Cyber Security
The Future of Cyber Security
Stephen Lahanas
 

Viewers also liked (20)

Understanding android security model
Understanding android security modelUnderstanding android security model
Understanding android security model
Pragati Rai
 
Displays for advertising
Displays for advertisingDisplays for advertising
Displays for advertising
Serigrafiarte
 
su vab dong cua ti gia hoi doai
su vab dong cua ti gia hoi doaisu vab dong cua ti gia hoi doai
su vab dong cua ti gia hoi doai
menngan
 
SITCON2014 LT 快倒的座位表
SITCON2014 LT 快倒的座位表SITCON2014 LT 快倒的座位表
SITCON2014 LT 快倒的座位表
Yi Tseng
 
Military service in Swaziland
Military service in SwazilandMilitary service in Swaziland
Military service in Swaziland
Derik Lu
 
Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0
Asanka Dilruk
 
Dracula Presentation with Answers
Dracula Presentation with AnswersDracula Presentation with Answers
Dracula Presentation with Answers
alexteacherproa
 
BitonicSortSIMD
BitonicSortSIMDBitonicSortSIMD
BitonicSortSIMD
Asanka Dilruk
 
‫فايروس الاختصارات
‫فايروس الاختصارات ‫فايروس الاختصارات
‫فايروس الاختصارات
Groh-alroh
 
Health recordsandinformationmanagersbill2015
Health recordsandinformationmanagersbill2015Health recordsandinformationmanagersbill2015
Health recordsandinformationmanagersbill2015
kiptisia
 
11 Model-Driven Testing with UML 2
11 Model-Driven Testing with UML 211 Model-Driven Testing with UML 2
11 Model-Driven Testing with UML 2
Asanka Dilruk
 
Day 6
Day 6Day 6
Day 6
alexteacherproa
 
Potassium humte
Potassium humtePotassium humte
Potassium humte
1humic acid
 
Evaluation question 5
Evaluation question 5Evaluation question 5
Evaluation question 5
maryamkhanbanbhan
 
Evaluation question 5
Evaluation question 5Evaluation question 5
Evaluation question 5
maryamkhanbanbhan
 
sự vận động của tỷ giá hối đoái
sự vận động của tỷ giá hối đoáisự vận động của tỷ giá hối đoái
sự vận động của tỷ giá hối đoái
menngan
 
La comida marroquí
La comida marroquíLa comida marroquí
La comida marroquí
raniaouriaghli
 
HydraFS
HydraFSHydraFS
HydraFS
Asanka Dilruk
 
La ciudad de tanger
La ciudad de tanger La ciudad de tanger
La ciudad de tanger
raniaouriaghli
 
Understanding android security model
Understanding android security modelUnderstanding android security model
Understanding android security model
Pragati Rai
 
Displays for advertising
Displays for advertisingDisplays for advertising
Displays for advertising
Serigrafiarte
 
su vab dong cua ti gia hoi doai
su vab dong cua ti gia hoi doaisu vab dong cua ti gia hoi doai
su vab dong cua ti gia hoi doai
menngan
 
SITCON2014 LT 快倒的座位表
SITCON2014 LT 快倒的座位表SITCON2014 LT 快倒的座位表
SITCON2014 LT 快倒的座位表
Yi Tseng
 
Military service in Swaziland
Military service in SwazilandMilitary service in Swaziland
Military service in Swaziland
Derik Lu
 
Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0Model-Driven Testing with UML 2.0
Model-Driven Testing with UML 2.0
Asanka Dilruk
 
Dracula Presentation with Answers
Dracula Presentation with AnswersDracula Presentation with Answers
Dracula Presentation with Answers
alexteacherproa
 
‫فايروس الاختصارات
‫فايروس الاختصارات ‫فايروس الاختصارات
‫فايروس الاختصارات
Groh-alroh
 
Health recordsandinformationmanagersbill2015
Health recordsandinformationmanagersbill2015Health recordsandinformationmanagersbill2015
Health recordsandinformationmanagersbill2015
kiptisia
 
11 Model-Driven Testing with UML 2
11 Model-Driven Testing with UML 211 Model-Driven Testing with UML 2
11 Model-Driven Testing with UML 2
Asanka Dilruk
 
sự vận động của tỷ giá hối đoái
sự vận động của tỷ giá hối đoáisự vận động của tỷ giá hối đoái
sự vận động của tỷ giá hối đoái
menngan
 
Ad

Similar to Understanding Android Security (20)

COVERT app
COVERT appCOVERT app
COVERT app
itba9
 
Getting started with android
Getting started with androidGetting started with android
Getting started with android
Vandana Verma
 
Android_Nougats_security_issues_and_solutions.pdf
Android_Nougats_security_issues_and_solutions.pdfAndroid_Nougats_security_issues_and_solutions.pdf
Android_Nougats_security_issues_and_solutions.pdf
Talha Naqash
 
Mediating Applications on the Android System
Mediating Applications on the Android SystemMediating Applications on the Android System
Mediating Applications on the Android System
Nizar Maan
 
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
IJNSA Journal
 
Mitigating Privilege-Escalation Attacks on Android Report
Mitigating Privilege-Escalation Attacks on Android  ReportMitigating Privilege-Escalation Attacks on Android  Report
Mitigating Privilege-Escalation Attacks on Android Report
Vinoth Kanna
 
Android Basic- CMC
Android Basic- CMCAndroid Basic- CMC
Android Basic- CMC
Pragati Singh
 
Securing android applications
Securing android applicationsSecuring android applications
Securing android applications
Jose Manuel Ortega Candel
 
Android security
Android securityAndroid security
Android security
Dr Amira Bibo
 
Android security
Android securityAndroid security
Android security
Dr Amira Bibo
 
Detection of Android Third Party Libraries based attacks
Detection of Android Third Party Libraries based attacksDetection of Android Third Party Libraries based attacks
Detection of Android Third Party Libraries based attacks
Amina WADDIZ
 
What is Android app Pentesting in 2022- DetoxTechnologies.pdf
What is Android app Pentesting in 2022- DetoxTechnologies.pdfWhat is Android app Pentesting in 2022- DetoxTechnologies.pdf
What is Android app Pentesting in 2022- DetoxTechnologies.pdf
Cyber security professional services- Detox techno
 
Malware analysis Automatic Call Recorder.pptx
Malware analysis Automatic Call Recorder.pptxMalware analysis Automatic Call Recorder.pptx
Malware analysis Automatic Call Recorder.pptx
Shekh Md Mehedi Hasan
 
Android open-source operating System for mobile devices
Android open-source operating System for mobile devicesAndroid open-source operating System for mobile devices
Android open-source operating System for mobile devices
IOSR Journals
 
Security on android
Security on androidSecurity on android
Security on android
pk464312
 
Android Overview
Android OverviewAndroid Overview
Android Overview
Raju Kadam
 
A Framework for Providing Selective Permissions to Android Applications
A Framework for Providing Selective Permissions to Android ApplicationsA Framework for Providing Selective Permissions to Android Applications
A Framework for Providing Selective Permissions to Android Applications
IOSR Journals
 
Security and privacy in smartphones
Security and privacy in smartphonesSecurity and privacy in smartphones
Security and privacy in smartphones
Mysa Vijay
 
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
csandit
 
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptxUNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
LeeroyMugadza
 
COVERT app
COVERT appCOVERT app
COVERT app
itba9
 
Getting started with android
Getting started with androidGetting started with android
Getting started with android
Vandana Verma
 
Android_Nougats_security_issues_and_solutions.pdf
Android_Nougats_security_issues_and_solutions.pdfAndroid_Nougats_security_issues_and_solutions.pdf
Android_Nougats_security_issues_and_solutions.pdf
Talha Naqash
 
Mediating Applications on the Android System
Mediating Applications on the Android SystemMediating Applications on the Android System
Mediating Applications on the Android System
Nizar Maan
 
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
SYSTEM CALL DEPENDENCE GRAPH BASED BEHAVIOR DECOMPOSITION OF ANDROID APPLICAT...
IJNSA Journal
 
Mitigating Privilege-Escalation Attacks on Android Report
Mitigating Privilege-Escalation Attacks on Android  ReportMitigating Privilege-Escalation Attacks on Android  Report
Mitigating Privilege-Escalation Attacks on Android Report
Vinoth Kanna
 
Detection of Android Third Party Libraries based attacks
Detection of Android Third Party Libraries based attacksDetection of Android Third Party Libraries based attacks
Detection of Android Third Party Libraries based attacks
Amina WADDIZ
 
Malware analysis Automatic Call Recorder.pptx
Malware analysis Automatic Call Recorder.pptxMalware analysis Automatic Call Recorder.pptx
Malware analysis Automatic Call Recorder.pptx
Shekh Md Mehedi Hasan
 
Android open-source operating System for mobile devices
Android open-source operating System for mobile devicesAndroid open-source operating System for mobile devices
Android open-source operating System for mobile devices
IOSR Journals
 
Security on android
Security on androidSecurity on android
Security on android
pk464312
 
Android Overview
Android OverviewAndroid Overview
Android Overview
Raju Kadam
 
A Framework for Providing Selective Permissions to Android Applications
A Framework for Providing Selective Permissions to Android ApplicationsA Framework for Providing Selective Permissions to Android Applications
A Framework for Providing Selective Permissions to Android Applications
IOSR Journals
 
Security and privacy in smartphones
Security and privacy in smartphonesSecurity and privacy in smartphones
Security and privacy in smartphones
Mysa Vijay
 
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
DROIDSWAN: Detecting Malicious Android Applications Based on Static Feature A...
csandit
 
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptxUNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
UNIT5newpart1pptx__2024_11_13_09_51_59 (1).pptx
LeeroyMugadza
 
Ad

More from Asanka Dilruk (6)

oracle tables
oracle tablesoracle tables
oracle tables
Asanka Dilruk
 
Software architecture quality attributes & Trade-offs
Software architecture quality attributes & Trade-offs Software architecture quality attributes & Trade-offs
Software architecture quality attributes & Trade-offs
Asanka Dilruk
 
Agile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical StudyAgile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical Study
Asanka Dilruk
 
Bitonic Sort in Shared SIMD Array Processor
Bitonic Sort in Shared SIMD Array ProcessorBitonic Sort in Shared SIMD Array Processor
Bitonic Sort in Shared SIMD Array Processor
Asanka Dilruk
 
Oracle DB Performance Tuning Tips
Oracle DB Performance Tuning TipsOracle DB Performance Tuning Tips
Oracle DB Performance Tuning Tips
Asanka Dilruk
 
Windows OS Architecture in Summery
Windows OS Architecture in SummeryWindows OS Architecture in Summery
Windows OS Architecture in Summery
Asanka Dilruk
 
Software architecture quality attributes & Trade-offs
Software architecture quality attributes & Trade-offs Software architecture quality attributes & Trade-offs
Software architecture quality attributes & Trade-offs
Asanka Dilruk
 
Agile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical StudyAgile Requirements Engineering Practices: An Empirical Study
Agile Requirements Engineering Practices: An Empirical Study
Asanka Dilruk
 
Bitonic Sort in Shared SIMD Array Processor
Bitonic Sort in Shared SIMD Array ProcessorBitonic Sort in Shared SIMD Array Processor
Bitonic Sort in Shared SIMD Array Processor
Asanka Dilruk
 
Oracle DB Performance Tuning Tips
Oracle DB Performance Tuning TipsOracle DB Performance Tuning Tips
Oracle DB Performance Tuning Tips
Asanka Dilruk
 
Windows OS Architecture in Summery
Windows OS Architecture in SummeryWindows OS Architecture in Summery
Windows OS Architecture in Summery
Asanka Dilruk
 

Recently uploaded (20)

A Comprehensive Guide to CRM Software Benefits for Every Business Stage
A Comprehensive Guide to CRM Software Benefits for Every Business StageA Comprehensive Guide to CRM Software Benefits for Every Business Stage
A Comprehensive Guide to CRM Software Benefits for Every Business Stage
SynapseIndia
 
Solar-wind hybrid engery a system sustainable power
Solar-wind  hybrid engery a system sustainable powerSolar-wind  hybrid engery a system sustainable power
Solar-wind hybrid engery a system sustainable power
bhoomigowda12345
 
Time Estimation: Expert Tips & Proven Project Techniques
Time Estimation: Expert Tips & Proven Project TechniquesTime Estimation: Expert Tips & Proven Project Techniques
Time Estimation: Expert Tips & Proven Project Techniques
Livetecs LLC
 
sequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineeringsequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineering
aashrithakondapalli8
 
Digital Twins Software Service in Belfast
Digital Twins Software Service in BelfastDigital Twins Software Service in Belfast
Digital Twins Software Service in Belfast
julia smits
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
Robotic Process Automation (RPA) Software Development Services.pptx
Robotic Process Automation (RPA) Software Development Services.pptxRobotic Process Automation (RPA) Software Development Services.pptx
Robotic Process Automation (RPA) Software Development Services.pptx
julia smits
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Serato DJ Pro Crack Latest Version 2025??
Serato DJ Pro Crack Latest Version 2025??Serato DJ Pro Crack Latest Version 2025??
Serato DJ Pro Crack Latest Version 2025??
Web Designer
 
Adobe Audition Crack FRESH Version 2025 FREE
Adobe Audition Crack FRESH Version 2025 FREEAdobe Audition Crack FRESH Version 2025 FREE
Adobe Audition Crack FRESH Version 2025 FREE
zafranwaqar90
 
Troubleshooting JVM Outages – 3 Fortune 500 case studies
Troubleshooting JVM Outages – 3 Fortune 500 case studiesTroubleshooting JVM Outages – 3 Fortune 500 case studies
Troubleshooting JVM Outages – 3 Fortune 500 case studies
Tier1 app
 
Medical Device Cybersecurity Threat & Risk Scoring
Medical Device Cybersecurity Threat & Risk ScoringMedical Device Cybersecurity Threat & Risk Scoring
Medical Device Cybersecurity Threat & Risk Scoring
ICS
 
The Elixir Developer - All Things Open
The Elixir Developer - All Things OpenThe Elixir Developer - All Things Open
The Elixir Developer - All Things Open
Carlo Gilmar Padilla Santana
 
Buy vs. Build: Unlocking the right path for your training tech
Buy vs. Build: Unlocking the right path for your training techBuy vs. Build: Unlocking the right path for your training tech
Buy vs. Build: Unlocking the right path for your training tech
Rustici Software
 
How I solved production issues with OpenTelemetry
How I solved production issues with OpenTelemetryHow I solved production issues with OpenTelemetry
How I solved production issues with OpenTelemetry
Cees Bos
 
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint PresentationFrom Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
Shay Ginsbourg
 
How to Troubleshoot 9 Types of OutOfMemoryError
How to Troubleshoot 9 Types of OutOfMemoryErrorHow to Troubleshoot 9 Types of OutOfMemoryError
How to Troubleshoot 9 Types of OutOfMemoryError
Tier1 app
 
Beyond the code. Complexity - 2025.05 - SwiftCraft
Beyond the code. Complexity - 2025.05 - SwiftCraftBeyond the code. Complexity - 2025.05 - SwiftCraft
Beyond the code. Complexity - 2025.05 - SwiftCraft
Dmitrii Ivanov
 
Programs as Values - Write code and don't get lost
Programs as Values - Write code and don't get lostPrograms as Values - Write code and don't get lost
Programs as Values - Write code and don't get lost
Pierangelo Cecchetto
 
How to Install and Activate ListGrabber Plugin
How to Install and Activate ListGrabber PluginHow to Install and Activate ListGrabber Plugin
How to Install and Activate ListGrabber Plugin
eGrabber
 
A Comprehensive Guide to CRM Software Benefits for Every Business Stage
A Comprehensive Guide to CRM Software Benefits for Every Business StageA Comprehensive Guide to CRM Software Benefits for Every Business Stage
A Comprehensive Guide to CRM Software Benefits for Every Business Stage
SynapseIndia
 
Solar-wind hybrid engery a system sustainable power
Solar-wind  hybrid engery a system sustainable powerSolar-wind  hybrid engery a system sustainable power
Solar-wind hybrid engery a system sustainable power
bhoomigowda12345
 
Time Estimation: Expert Tips & Proven Project Techniques
Time Estimation: Expert Tips & Proven Project TechniquesTime Estimation: Expert Tips & Proven Project Techniques
Time Estimation: Expert Tips & Proven Project Techniques
Livetecs LLC
 
sequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineeringsequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineering
aashrithakondapalli8
 
Digital Twins Software Service in Belfast
Digital Twins Software Service in BelfastDigital Twins Software Service in Belfast
Digital Twins Software Service in Belfast
julia smits
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
Robotic Process Automation (RPA) Software Development Services.pptx
Robotic Process Automation (RPA) Software Development Services.pptxRobotic Process Automation (RPA) Software Development Services.pptx
Robotic Process Automation (RPA) Software Development Services.pptx
julia smits
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Serato DJ Pro Crack Latest Version 2025??
Serato DJ Pro Crack Latest Version 2025??Serato DJ Pro Crack Latest Version 2025??
Serato DJ Pro Crack Latest Version 2025??
Web Designer
 
Adobe Audition Crack FRESH Version 2025 FREE
Adobe Audition Crack FRESH Version 2025 FREEAdobe Audition Crack FRESH Version 2025 FREE
Adobe Audition Crack FRESH Version 2025 FREE
zafranwaqar90
 
Troubleshooting JVM Outages – 3 Fortune 500 case studies
Troubleshooting JVM Outages – 3 Fortune 500 case studiesTroubleshooting JVM Outages – 3 Fortune 500 case studies
Troubleshooting JVM Outages – 3 Fortune 500 case studies
Tier1 app
 
Medical Device Cybersecurity Threat & Risk Scoring
Medical Device Cybersecurity Threat & Risk ScoringMedical Device Cybersecurity Threat & Risk Scoring
Medical Device Cybersecurity Threat & Risk Scoring
ICS
 
Buy vs. Build: Unlocking the right path for your training tech
Buy vs. Build: Unlocking the right path for your training techBuy vs. Build: Unlocking the right path for your training tech
Buy vs. Build: Unlocking the right path for your training tech
Rustici Software
 
How I solved production issues with OpenTelemetry
How I solved production issues with OpenTelemetryHow I solved production issues with OpenTelemetry
How I solved production issues with OpenTelemetry
Cees Bos
 
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint PresentationFrom Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
Shay Ginsbourg
 
How to Troubleshoot 9 Types of OutOfMemoryError
How to Troubleshoot 9 Types of OutOfMemoryErrorHow to Troubleshoot 9 Types of OutOfMemoryError
How to Troubleshoot 9 Types of OutOfMemoryError
Tier1 app
 
Beyond the code. Complexity - 2025.05 - SwiftCraft
Beyond the code. Complexity - 2025.05 - SwiftCraftBeyond the code. Complexity - 2025.05 - SwiftCraft
Beyond the code. Complexity - 2025.05 - SwiftCraft
Dmitrii Ivanov
 
Programs as Values - Write code and don't get lost
Programs as Values - Write code and don't get lostPrograms as Values - Write code and don't get lost
Programs as Values - Write code and don't get lost
Pierangelo Cecchetto
 
How to Install and Activate ListGrabber Plugin
How to Install and Activate ListGrabber PluginHow to Install and Activate ListGrabber Plugin
How to Install and Activate ListGrabber Plugin
eGrabber
 

Understanding Android Security

  • 1. William Enck, Machigar Ongtang, and PatrickMcDanielWilliam Enck, Machigar Ongtang, and PatrickMcDaniel Pennsylvania State UniversityPennsylvania State University Presented by: Dilruk G.A .(148209B) Jagoda S.D. (148214K)
  • 2. Outline  Introduction  Android Applications  Security Enforcement  Security Refinements  Lessons in Defining Policy
  • 3. Introduction  Android (Google)  Open source  A base operation system for mobiles  Application middleware layer  Java software development kit  Collection of system applications
  • 4. Feature of Android OS  Doesn’t support applications developed for other platforms  Restricts application interaction to its special APIs by running each application as its own user identity  Uses a simple permission label assignment model to restrict access to resources and other applications
  • 7. FriendTracker - Component Interaction Intent - message object containing a destination component address and data Action - the process of inter- components communication
  • 8. Security Enforcement  Android applications execute as its own user identity, allowing the underlying Linux system to provide system-level isolation  Android middleware contains a reference monitor that mediates the establishment of inter-component communication (ICC)
  • 9. Security Enforcement  Core idea of Android security enforcement - labels assignment to applications and components  A reference monitor provides mandatory access control (MAC) enforcement of how applications access components  Access to each component is restricted by assigning it an access permission label. Applications are assigned collections of permission labels  When a component initiates ICC, the reference monitor looks at the permission labels assigned to its containing application and— if the target component’s access permission label is in that collection— allows ICC establishment to proceed.
  • 10. Security Enforcement : Access permission logic Example  Component A’s ability to access components B and C is determined by comparing the access permission labels on B and C to the collection of labels assigned to application 1.
  • 12. Public and Private Components  Applications often contain components that another application should never access. For example, component related to password storing.  The solution is to Instead of defining an access permission user can define the component as private.  Best Practice: Always set the “exported” attribute.  This significantly reduces the attack surface for many applications.
  • 13. Implicitly Open Components  At development time, if the decision of access permission is unclear, The developer can permit the functionality by not assigning an access permission to it.  If a public component doesn’t explicitly have an access permission listed in its manifest definition, Android permits any application to access it.  Best Practice: Should always assign access permissions to public components.
  • 14. Intent Broadcast Permissions  Sending the unprotected intent is a privacy risk.  Android API for broadcasting intents optionally allows the developer to specify a permission label to restrict access to the intent object.  Best Practice: Always specify an access permission on Intent broadcasts
  • 15. Content Provider Permissions  If the developer want his application to be the only one to update the contents but for other applications to be able to read them.  Android allows such a security policy assigning read or write permissions.  Best Practice: Always define separate read and write permissions.
  • 16. Service Hooks  Android only lets the developer assign one permission label to restrict starting, stopping, and binding to a service.  Under this model, any application can start or stop Friend tracker can also tell it to monitor new friends.  Best Practice: Use service hooks and let the developers write code to perform custom runtime security.  Eg.. Use checkPermission() to mediate “administrative” operations in Friend Tracker .
  • 17. Protected APIs  Not all system are accessed through components— instead, Android provides direct API access.  Android protects these sensitive APIs with additional permission label checks: an application must declare a corresponding permission label in its manifest file to use them.  Best Practice: Application need to request permissions for protected APIs
  • 18. Permission Protection Levels  The permission protection levels provide a means of controlling how developers assign permission labels.  Normal – grant to any application that request them in its manifest  Dangerous – granted only after user confirmation  Signature – granted only to application signed by the same developer key  Signature or system – same like signature but exist for legacy compatibility.  Best Practice: Use either signature or dangerous permissions depending on the application behaviour
  • 19. Pending Intents  The Pending Intent object is simply a reference pointer that can pass to another application.  Recipient application can modify the original intent and specify when the action is invoked.  Pending intents allow applications included with the framework to integrate better with third-party applications.  Best Practice: Only use Pending Intents as “delayed callbacks” to private Components and always specify the private broadcast receiver.
  • 20. Lessons in Defining Policy  Android security policy begins with a relatively easy-to-understand MAC enforcement model  Some refinements push policy into the application code  The permission label itself is merely a text string, but its assignment to an application provides access to potentially limitless resources

Editor's Notes

  • #2: In the first part of the paper they explain about android market and android flat form. Then they discussed sample application developed by them to explain android framework architecture and application components. After that main topic android security implementation is explained as two major topics which are security enforcement and security refinements. Finally paper is discussed about the lessons in defining android security policy.
  • #3: Our presentation is organized as here. First we will give brief introduction about android OS. Then let’s looking to the android application framework. Next we are willing to talk about security enforcement and security refinements of android application. And finally about the lesion in defining security policy.
  • #4: Android is a base operating system for mobile applications which is led by Google. It is widely anticipated open source application development platform and a large community of developers organized around android. Because of that many new products and application are now available for it. Android provides base operating system, application middleware layer, Java development kit (SDK) and collection of system level applications. Android is supporting for lot of online services like Google's Gmail, calendar and contacts. Phones which are used android is automatically synchronized with these services.
  • #5: Here we can see several main features of android which is very important when we talked about the android application security. First android OS Doesn’t support applications developed for other platforms Android Restricts application interaction to its special APIs by running each application as its own user identity Android Uses a simple permission label assignment model to restrict access to resources and other applications We will looking to these in more details under security enforcements section.
  • #6: The Android operating system is built on a modified Linux kernel. The software stack contains Java applications running on a virtual machine called Dalvik virtual machine. The system components are written in Java, C, C++, and XML. Android OS consist of lot of core libraries which is support java. On top of that application framework is build to support android application developments.
  • #7: Authors are developed sample application to explain android application components. Which is called friend tracker application and developed as two android applications. One is called friend tracker and other is friend viewer. This is mainly due to explain communication between two applications. Android application doesn’t have a main () function or single entry point for execution, instead, developers must design applications in terms of components. There are four components Activity, Broadcast Receiver, Service and Content Provider.
  • #8: Components in android applications are communicate each other using intents and actions. Intent is a message object, which is containing a destination component address and data. Action is a process of inter component communication.
  • #12: 9 security refinements Some are extension to basic MAC model and some are new concepts
  • #13: Some Applications often contain components that another application should never need access.
  • #14: This is also related to the first point.
  • #15: That can leak the user privacy information to explicitly listening attackers.
  • #16: Insert, Update or delete
  • #18: resources(for example, network, camera, microphone
  • #19: Early model had two levels application or system But new model has 4 protection levels for permission labels Nomal is same as application permission in previous model
  • #20: In Android defines an intent object to perform an action. However, instead of performing the action, it passes the intent to a special method that creates a Pending Intent object corresponding to that action.
  • #21: Android has to find a answer for how to control access to permission label Things like allowing a application to use both microphone and internet
  翻译: