SlideShare a Scribd company logo
1 of 53
Download to read offline
Using Authorization Logic to
Capture User Policies in
Mobile Ecosystems
Joseph Hallett
J.Hallett@sms.ed.ac.uk
Are people picky about
what they’ll install?
no!
(mostly)
App stores sell apps
• How we distribute software on mobile devices
• Lots of choice of apps
• Partially curated by store owners
• Mainly for malware and quality control
• …but some still slips through
• …especially in the third-party stores
Apps access data
• Location and movements
• Who you speak to and what you text
• What you install
• What you look at on the internet
• Your camera and microphone
…but it’s mostly legitimate
• Location and movements
• Who you speak to and what you text
• What you install
• What you look at on the internet
• Your camera and microphone
google maps
facebook messager
amazon’s app store
anything web based
(everything)
instagram
…but it’s maybe legitimate?
• Location and movements
• Who you speak to and what you text
• What you install
• What you look at on the internet
• Your camera and microphone
local advertising
marketing
analytics
targeted advertising
…spying?
Does anyone care?
yes!
Privacy preferences
• Fantastic paper from SOUPS 2014
• Modelling Users’ Mobile App Privacy Preferences:

Restoring Usability in a Sea of Permission Settings

Jialiu Lin, Bin Liu, Norman Sadeh, Jason I. Hong
• Figured out why some apps need certain permissions
• Asked users if they were okay with that
Four kinds of users
• From the users’ answers they discovered four different
clusters of users
• Conservatives (12%)
• Advanced (18%)
• Fencesitters (48%)
• Unconcerned (22%)
• Unconcerned users didn’t care
• Happy to disclose data to third
parties
• Little bit uncomfortable granting
account info to social networks
• Fencesitters seemed ambivalent
• Didn’t actively like or dislike
anything
• User fatigue?
• Conservatives really care
• Don’t want anyone to have
anything for any reason
• Advanced users are concerned
but pragmatic
• Okay giving social networks info
• Okay giving coarse information
Users have privacy preferences
• Do they make app choices on the basis of them?
• Can we help them make that decision?
• Can we warn them when they’re making a bad decision?
AppPAL
an authorization logic
for picking apps
AppPAL
• Based on SecPAL
• Used for access control in distributed systems
• Written in Java, runs on Android
• Lets principals (users) make judgements about apps
alice says

apk://com.rovio.angrybirds
isRunnable.
alice says

apk://com.rovio.angrybirds
isRunnable.
speaker
subject
predicate
alice says App isRunnable
if App meets(conservativePolicy).
alice says App isRunnable
if App meets(conservativePolicy).
variables
conditionals
constant
alice says App isRunnable
if App meets(workPolicy)
where currentLocation(work) = true,
hasPermission(App, location) = true.
constraint
checked at
query time
implicit in
the app
alice says App isRunnable
if App meets(workPolicy)
where currentLocation(work) = true,
hasPermission(App, location) = true.
alice says itdepartment can-say
App meets(workPolicy).
alice says itdepartment can-say
App meets(workPolicy).
delegationdelegatee
alice says itdepartment can-say inf
App meets(workPolicy).
strictly speaking
either delegation where
further delegation is
allowed or…
alice says itdepartment can-say 0
App meets(workPolicy).
…where it is not
alice says
ian can-act-as itdepartment.
alice says
ian can-act-as itdepartment.
role
assignment
alice says 

apk://com.rovio.angrybirds.space
can-act-as
apk://com.rovio.angrybirds
role
assignment
not limited to
speakers
So do users follow
privacy policies?
Plan of attack
• Get data about which users installed which apps
• Express Lin et al.’s privacy policies in AppPAL
• Check what percentage of a user’s apps met the policy
• If a user is following a policy we’ll expect them to mostly
install apps which satisfy the policy
Plan of attack
• Get data about which users installed which apps
• Express Lin et al.’s privacy policies in AppPAL
• Check what percentage of a user’s apps met the policy
• If a user is following a policy we’ll expect them to mostly
install apps which satisfy the policy
this data is
hard to get
Carat
• Project from UC Berkeley and University of Helsinki
• Measures power usage of the apps on your phone
• Also collects anonymised app installation 

data for researchers
• Users replaced with an incrementing number
• Apps replaced with hash of package name
Carat
• We identified 4,300 apps out of ~90,000
• Selected 44,000 users for whom we knew 

at least 20 app installations
• (after taking into account system and 

common apps like Facebook and Twitter)
Privacy policies in AppPAL
• Approximated the Lin et al. 

policies as sets of permissions
• If a group of users felt
uncomfortable about a
permission for any reason we
banned it.
• Not as subtle as we’d like but a
reasonable approximation.
C A F U
GET_ACCOUNTS ✘ ✘ ✘ ✘
ACCESS_FINE_LOCATION ✘ ✘ ✘
READ_CONTACT ✘ ✘ ✘
READ_PHONE_STATE ✘ ✘
SEND_SMS ✘ ✘
ACCESS_COARSE_LOCATION ✘
Limitations
• We’re using an approximation of the policies
• We have only a partial purchase history
• …so we can only test if a sample of a user’s apps meet the
policies
• We might not have the same version as the user
• Permissions can increase or decrease; apps change
• …but typically only increase
Results
0
10000
20000
30000
0.00 0.25 0.50 0.75 1.00
%age of user’s apps meeting policy
Usercount
variable
C
A
F
U
0
10000
20000
30000
0.00 0.25 0.50 0.75 1.00
%age of user’s apps meeting policy
Usercount
variable
C
A
F
UAlmost
no one follows
a policy all the
time
0
10000
20000
30000
0.00 0.25 0.50 0.75 1.00
%age of user’s apps meeting policy
Usercount
variable
C
A
F
U
…or even
some of the
time
C A F U
≥ 50%
179
(0.41%)
206
(0.47%)
696
(1.58%)
2390
(5.43%)
≥ 60%
45
(0.10%)
49
(0.11%)
209
(0.48%)
867
(2.0%)
≥ 70%
18

(0.04%)
19
(0.04%)
79
(0.18%)
331
(0.75%)
≥ 80%
15
(0.03%)
16
(0.04%)
49
(0.11%)
151
(0.34%)
≥ 90%
13
(0.03%)
14
(0.03%)
37
(0.08%)
69
(0.16%)
= 100%
13
(0.03%)
14
(0.03%)
37
(0.08%)
67
(0.15%)
C A F U
≥ 50%
179
(0.41%)
206
(0.47%)
696
(1.58%)
2390
(5.43%)
≥ 60%
45
(0.10%)
49
(0.11%)
209
(0.48%)
867
(2.0%)
≥ 70%
18

(0.04%)
19
(0.04%)
79
(0.18%)
331
(0.75%)
≥ 80%
15
(0.03%)
16
(0.04%)
49
(0.11%)
151
(0.34%)
≥ 90%
13
(0.03%)
14
(0.03%)
37
(0.08%)
69
(0.16%)
= 100%
13
(0.03%)
14
(0.03%)
37
(0.08%)
67
(0.15%)
but it
isn’t zero
What about malware?
0
50
100
150
0.7 0.8 0.9 1.0
%age of user’s apps meeting policy
Usercount
variable
not PUP
not Malware
0
50
100
150
0.7 0.8 0.9 1.0
%age of user’s apps meeting policy
Usercount
variable
not PUP
not Malware
Almost
no malware
installed
Do users who follow a policy 

install less malware?
0.80
0.85
0.90
0.95
1.00
0.00 0.25 0.50 0.75 1.00
%age of apps meeting ‘Advanced’ policy
%ageofappsmeeting‘Not−PUP’policy
yes!
0.80
0.85
0.90
0.95
1.00
0.00 0.25 0.50 0.75 1.00
%age of apps meeting ‘Advanced’ policy
%ageofappsmeeting‘Not−PUP’policy
So what did we learn?
• What people say and what people do are 

two different things
• Being picky seems to stop you installing rubbish
• AppPAL works great for exploring properties of apps
What is next?
• On device policy checking
• check your installed apps against a policy
• Building stores with policies
• searching and building stores with policies
• What is causing this disconnect?
• fatigue? lack of awareness? lack of choice?
thanks!
J.Hallett@sms.ed.ac.uk

More Related Content

Viewers also liked

Convergent evolution
Convergent evolutionConvergent evolution
Convergent evolutionAftab Badshah
 
Vánoční-dárky.cz - Prezentace 2015
Vánoční-dárky.cz - Prezentace 2015Vánoční-dárky.cz - Prezentace 2015
Vánoční-dárky.cz - Prezentace 2015ACOMWARE s.r.o.
 
Intrapopulation variations 9
Intrapopulation variations 9Intrapopulation variations 9
Intrapopulation variations 9Aftab Badshah
 
The sense of smell (1)
The sense of smell (1)The sense of smell (1)
The sense of smell (1)Aftab Badshah
 
Monoclonal antibodies
Monoclonal antibodiesMonoclonal antibodies
Monoclonal antibodiesAftab Badshah
 
Principles of systematic zoology
Principles of systematic zoologyPrinciples of systematic zoology
Principles of systematic zoologyAftab Badshah
 
Taxonomic collection and identification
Taxonomic collection and identificationTaxonomic collection and identification
Taxonomic collection and identificationAftab Badshah
 
Electrical activity of heart
Electrical activity of heartElectrical activity of heart
Electrical activity of heartAftab Badshah
 

Viewers also liked (13)

What is evolution
What is evolutionWhat is evolution
What is evolution
 
Fisika
FisikaFisika
Fisika
 
Convergent evolution
Convergent evolutionConvergent evolution
Convergent evolution
 
Biostatistics
BiostatisticsBiostatistics
Biostatistics
 
Vánoční-dárky.cz - Prezentace 2015
Vánoční-dárky.cz - Prezentace 2015Vánoční-dárky.cz - Prezentace 2015
Vánoční-dárky.cz - Prezentace 2015
 
Intrapopulation variations 9
Intrapopulation variations 9Intrapopulation variations 9
Intrapopulation variations 9
 
The sense of smell (1)
The sense of smell (1)The sense of smell (1)
The sense of smell (1)
 
Monoclonal antibodies
Monoclonal antibodiesMonoclonal antibodies
Monoclonal antibodies
 
Bacterial genetics
Bacterial geneticsBacterial genetics
Bacterial genetics
 
Genetics of cancer
Genetics of cancerGenetics of cancer
Genetics of cancer
 
Principles of systematic zoology
Principles of systematic zoologyPrinciples of systematic zoology
Principles of systematic zoology
 
Taxonomic collection and identification
Taxonomic collection and identificationTaxonomic collection and identification
Taxonomic collection and identification
 
Electrical activity of heart
Electrical activity of heartElectrical activity of heart
Electrical activity of heart
 

Similar to IFIP Summer School 2015 - Using Authorization Logic to Capture User Policies in Mobile Ecosystems

Mobility innovation and unknowns
Mobility innovation and unknownsMobility innovation and unknowns
Mobility innovation and unknownsLisa Marie Martinez
 
Sonatype's 2013 OSS Software Survey
 Sonatype's 2013 OSS Software Survey Sonatype's 2013 OSS Software Survey
Sonatype's 2013 OSS Software SurveySonatype
 
Intro To Mobile Analytics
Intro To Mobile AnalyticsIntro To Mobile Analytics
Intro To Mobile AnalyticsTapmint
 
Recommendation Systems - Why How and Real Life Applications
Recommendation Systems - Why How and Real Life ApplicationsRecommendation Systems - Why How and Real Life Applications
Recommendation Systems - Why How and Real Life ApplicationsLiron Zighelnic
 
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013Jason Hong
 
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...GoQA
 
PSU Web 2013: User Research Power Tool: Pareto Principle Based User Research
PSU Web 2013: User Research Power Tool: Pareto Principle Based User ResearchPSU Web 2013: User Research Power Tool: Pareto Principle Based User Research
PSU Web 2013: User Research Power Tool: Pareto Principle Based User ResearchJennifer Aldrich
 
The Hidden Risk of Component Based Software Development
The Hidden Risk of Component Based Software DevelopmentThe Hidden Risk of Component Based Software Development
The Hidden Risk of Component Based Software DevelopmentSonatype
 
Fostering an Ecosystem for Smartphone Privacy
Fostering an Ecosystem for Smartphone PrivacyFostering an Ecosystem for Smartphone Privacy
Fostering an Ecosystem for Smartphone PrivacyJason Hong
 
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...Edge AI and Vision Alliance
 
Measuring the Right App Metrics - Guide for Beginners
Measuring the Right App Metrics - Guide for BeginnersMeasuring the Right App Metrics - Guide for Beginners
Measuring the Right App Metrics - Guide for BeginnersDeepak Abbot
 
Live 2014 Survey Results: Open Source Development and Application Security Su...
Live 2014 Survey Results: Open Source Development and Application Security Su...Live 2014 Survey Results: Open Source Development and Application Security Su...
Live 2014 Survey Results: Open Source Development and Application Security Su...Sonatype
 
App Store Optimization Using Math
App Store Optimization Using MathApp Store Optimization Using Math
App Store Optimization Using MathNathan Mellor
 
Webinar Series - How To Launch Your App Idea
Webinar Series - How To Launch Your App IdeaWebinar Series - How To Launch Your App Idea
Webinar Series - How To Launch Your App IdeaTheAppLabb
 
#CMOUS Staying ahead on mobile - challenges, measurement and strategies
#CMOUS Staying ahead on mobile - challenges, measurement and strategies#CMOUS Staying ahead on mobile - challenges, measurement and strategies
#CMOUS Staying ahead on mobile - challenges, measurement and strategiesJennifer Wong
 
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891Warren Raisch
 
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...Rio SEO
 
How Mobile Technology is Changing the Shape of B2B Marketing
How Mobile Technology is Changing the Shape of B2B MarketingHow Mobile Technology is Changing the Shape of B2B Marketing
How Mobile Technology is Changing the Shape of B2B MarketingRobert Woo
 

Similar to IFIP Summer School 2015 - Using Authorization Logic to Capture User Policies in Mobile Ecosystems (20)

Mobility innovation and unknowns
Mobility innovation and unknownsMobility innovation and unknowns
Mobility innovation and unknowns
 
Sonatype's 2013 OSS Software Survey
 Sonatype's 2013 OSS Software Survey Sonatype's 2013 OSS Software Survey
Sonatype's 2013 OSS Software Survey
 
Intro To Mobile Analytics
Intro To Mobile AnalyticsIntro To Mobile Analytics
Intro To Mobile Analytics
 
Recommendation Systems - Why How and Real Life Applications
Recommendation Systems - Why How and Real Life ApplicationsRecommendation Systems - Why How and Real Life Applications
Recommendation Systems - Why How and Real Life Applications
 
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013
Analyzing the Privacy of Smartphone Apps, for CMU Cylab Talk on April 2013
 
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...
КАТЕРИНА АБЗЯТОВА «Тестування мобільних додатків: Як створити виграшну страте...
 
PSU Web 2013: User Research Power Tool: Pareto Principle Based User Research
PSU Web 2013: User Research Power Tool: Pareto Principle Based User ResearchPSU Web 2013: User Research Power Tool: Pareto Principle Based User Research
PSU Web 2013: User Research Power Tool: Pareto Principle Based User Research
 
Ecosystem overview
Ecosystem overviewEcosystem overview
Ecosystem overview
 
The Hidden Risk of Component Based Software Development
The Hidden Risk of Component Based Software DevelopmentThe Hidden Risk of Component Based Software Development
The Hidden Risk of Component Based Software Development
 
Fostering an Ecosystem for Smartphone Privacy
Fostering an Ecosystem for Smartphone PrivacyFostering an Ecosystem for Smartphone Privacy
Fostering an Ecosystem for Smartphone Privacy
 
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...
“Responsible AI: Tools and Frameworks for Developing AI Solutions,” a Present...
 
Measuring the Right App Metrics - Guide for Beginners
Measuring the Right App Metrics - Guide for BeginnersMeasuring the Right App Metrics - Guide for Beginners
Measuring the Right App Metrics - Guide for Beginners
 
Live 2014 Survey Results: Open Source Development and Application Security Su...
Live 2014 Survey Results: Open Source Development and Application Security Su...Live 2014 Survey Results: Open Source Development and Application Security Su...
Live 2014 Survey Results: Open Source Development and Application Security Su...
 
App Store Optimization Using Math
App Store Optimization Using MathApp Store Optimization Using Math
App Store Optimization Using Math
 
Webinar Series - How To Launch Your App Idea
Webinar Series - How To Launch Your App IdeaWebinar Series - How To Launch Your App Idea
Webinar Series - How To Launch Your App Idea
 
#CMOUS Staying ahead on mobile - challenges, measurement and strategies
#CMOUS Staying ahead on mobile - challenges, measurement and strategies#CMOUS Staying ahead on mobile - challenges, measurement and strategies
#CMOUS Staying ahead on mobile - challenges, measurement and strategies
 
App Privacy
App PrivacyApp Privacy
App Privacy
 
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891
Dmdwebinardeckoctober27thfinal 151029230707-lva1-app6891
 
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...
Rio SEO Webinar: Transforming Mobile Searches Into Sales: The Hype Around Bea...
 
How Mobile Technology is Changing the Shape of B2B Marketing
How Mobile Technology is Changing the Shape of B2B MarketingHow Mobile Technology is Changing the Shape of B2B Marketing
How Mobile Technology is Changing the Shape of B2B Marketing
 

Recently uploaded

Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Lisi Hocke
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AIAGATSoftware
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdfSelfMade bd
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletAndrea Goulet
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMarkus Moeller
 
Your Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | EvmuxYour Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | Evmuxevmux96
 
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-CloudAlluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-CloudAlluxio, Inc.
 
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jGraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jNeo4j
 
Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringPrakhyath Rai
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Andreas Granig
 
Novo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNovo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNeo4j
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Maxim Salnikov
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit MilanNeo4j
 
Encryption Recap: A Refresher on Key Concepts
Encryption Recap: A Refresher on Key ConceptsEncryption Recap: A Refresher on Key Concepts
Encryption Recap: A Refresher on Key Conceptsthomashtkim
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Flutter Agency
 

Recently uploaded (20)

Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
Team Transformation Tactics for Holistic Testing and Quality (NewCrafts Paris...
 
BusinessGPT - Security and Governance for Generative AI
BusinessGPT  - Security and Governance for Generative AIBusinessGPT  - Security and Governance for Generative AI
BusinessGPT - Security and Governance for Generative AI
 
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
Abortion Pill Prices Turfloop ](+27832195400*)[ 🏥 Women's Abortion Clinic in ...
 
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
Auto Affiliate  AI Earns First Commission in 3 Hours..pdfAuto Affiliate  AI Earns First Commission in 3 Hours..pdf
Auto Affiliate AI Earns First Commission in 3 Hours..pdf
 
Community is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea GouletCommunity is Just as Important as Code by Andrea Goulet
Community is Just as Important as Code by Andrea Goulet
 
Microsoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdfMicrosoft365_Dev_Security_2024_05_16.pdf
Microsoft365_Dev_Security_2024_05_16.pdf
 
Your Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | EvmuxYour Ultimate Web Studio for Streaming Anywhere | Evmux
Your Ultimate Web Studio for Streaming Anywhere | Evmux
 
Abortion Pill Prices Jozini ](+27832195400*)[ 🏥 Women's Abortion Clinic in Jo...
Abortion Pill Prices Jozini ](+27832195400*)[ 🏥 Women's Abortion Clinic in Jo...Abortion Pill Prices Jozini ](+27832195400*)[ 🏥 Women's Abortion Clinic in Jo...
Abortion Pill Prices Jozini ](+27832195400*)[ 🏥 Women's Abortion Clinic in Jo...
 
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
Abortion Clinic In Johannesburg ](+27832195400*)[ 🏥 Safe Abortion Pills in Jo...
 
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
Abortion Pill Prices Germiston ](+27832195400*)[ 🏥 Women's Abortion Clinic in...
 
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-CloudAlluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
Alluxio Monthly Webinar | Simplify Data Access for AI in Multi-Cloud
 
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4jGraphSummit Milan - Visione e roadmap del prodotto Neo4j
GraphSummit Milan - Visione e roadmap del prodotto Neo4j
 
Software Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements EngineeringSoftware Engineering - Introduction + Process Models + Requirements Engineering
Software Engineering - Introduction + Process Models + Requirements Engineering
 
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
Abortion Clinic In Stanger ](+27832195400*)[ 🏥 Safe Abortion Pills In Stanger...
 
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024Automate your OpenSIPS config tests - OpenSIPS Summit 2024
Automate your OpenSIPS config tests - OpenSIPS Summit 2024
 
Novo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMsNovo Nordisk: When Knowledge Graphs meet LLMs
Novo Nordisk: When Knowledge Graphs meet LLMs
 
Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?Prompt Engineering - an Art, a Science, or your next Job Title?
Prompt Engineering - an Art, a Science, or your next Job Title?
 
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
Workshop -  Architecting Innovative Graph Applications- GraphSummit MilanWorkshop -  Architecting Innovative Graph Applications- GraphSummit Milan
Workshop - Architecting Innovative Graph Applications- GraphSummit Milan
 
Encryption Recap: A Refresher on Key Concepts
Encryption Recap: A Refresher on Key ConceptsEncryption Recap: A Refresher on Key Concepts
Encryption Recap: A Refresher on Key Concepts
 
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
Navigation in flutter – how to add stack, tab, and drawer navigators to your ...
 

IFIP Summer School 2015 - Using Authorization Logic to Capture User Policies in Mobile Ecosystems

  • 1. Using Authorization Logic to Capture User Policies in Mobile Ecosystems Joseph Hallett J.Hallett@sms.ed.ac.uk
  • 2. Are people picky about what they’ll install?
  • 4. App stores sell apps • How we distribute software on mobile devices • Lots of choice of apps • Partially curated by store owners • Mainly for malware and quality control • …but some still slips through • …especially in the third-party stores
  • 5. Apps access data • Location and movements • Who you speak to and what you text • What you install • What you look at on the internet • Your camera and microphone
  • 6. …but it’s mostly legitimate • Location and movements • Who you speak to and what you text • What you install • What you look at on the internet • Your camera and microphone google maps facebook messager amazon’s app store anything web based (everything) instagram
  • 7. …but it’s maybe legitimate? • Location and movements • Who you speak to and what you text • What you install • What you look at on the internet • Your camera and microphone local advertising marketing analytics targeted advertising …spying?
  • 10. Privacy preferences • Fantastic paper from SOUPS 2014 • Modelling Users’ Mobile App Privacy Preferences:
 Restoring Usability in a Sea of Permission Settings
 Jialiu Lin, Bin Liu, Norman Sadeh, Jason I. Hong • Figured out why some apps need certain permissions • Asked users if they were okay with that
  • 11. Four kinds of users • From the users’ answers they discovered four different clusters of users • Conservatives (12%) • Advanced (18%) • Fencesitters (48%) • Unconcerned (22%)
  • 12. • Unconcerned users didn’t care • Happy to disclose data to third parties • Little bit uncomfortable granting account info to social networks • Fencesitters seemed ambivalent • Didn’t actively like or dislike anything • User fatigue? • Conservatives really care • Don’t want anyone to have anything for any reason • Advanced users are concerned but pragmatic • Okay giving social networks info • Okay giving coarse information
  • 13. Users have privacy preferences • Do they make app choices on the basis of them? • Can we help them make that decision? • Can we warn them when they’re making a bad decision?
  • 16. AppPAL • Based on SecPAL • Used for access control in distributed systems • Written in Java, runs on Android • Lets principals (users) make judgements about apps
  • 19. alice says App isRunnable if App meets(conservativePolicy).
  • 20. alice says App isRunnable if App meets(conservativePolicy). variables conditionals constant
  • 21. alice says App isRunnable if App meets(workPolicy) where currentLocation(work) = true, hasPermission(App, location) = true.
  • 22. constraint checked at query time implicit in the app alice says App isRunnable if App meets(workPolicy) where currentLocation(work) = true, hasPermission(App, location) = true.
  • 23. alice says itdepartment can-say App meets(workPolicy).
  • 24. alice says itdepartment can-say App meets(workPolicy). delegationdelegatee
  • 25. alice says itdepartment can-say inf App meets(workPolicy). strictly speaking either delegation where further delegation is allowed or…
  • 26. alice says itdepartment can-say 0 App meets(workPolicy). …where it is not
  • 27. alice says ian can-act-as itdepartment.
  • 28. alice says ian can-act-as itdepartment. role assignment
  • 30. So do users follow privacy policies?
  • 31. Plan of attack • Get data about which users installed which apps • Express Lin et al.’s privacy policies in AppPAL • Check what percentage of a user’s apps met the policy • If a user is following a policy we’ll expect them to mostly install apps which satisfy the policy
  • 32. Plan of attack • Get data about which users installed which apps • Express Lin et al.’s privacy policies in AppPAL • Check what percentage of a user’s apps met the policy • If a user is following a policy we’ll expect them to mostly install apps which satisfy the policy this data is hard to get
  • 33. Carat • Project from UC Berkeley and University of Helsinki • Measures power usage of the apps on your phone • Also collects anonymised app installation 
 data for researchers • Users replaced with an incrementing number • Apps replaced with hash of package name
  • 34. Carat • We identified 4,300 apps out of ~90,000 • Selected 44,000 users for whom we knew 
 at least 20 app installations • (after taking into account system and 
 common apps like Facebook and Twitter)
  • 35. Privacy policies in AppPAL • Approximated the Lin et al. 
 policies as sets of permissions • If a group of users felt uncomfortable about a permission for any reason we banned it. • Not as subtle as we’d like but a reasonable approximation. C A F U GET_ACCOUNTS ✘ ✘ ✘ ✘ ACCESS_FINE_LOCATION ✘ ✘ ✘ READ_CONTACT ✘ ✘ ✘ READ_PHONE_STATE ✘ ✘ SEND_SMS ✘ ✘ ACCESS_COARSE_LOCATION ✘
  • 36. Limitations • We’re using an approximation of the policies • We have only a partial purchase history • …so we can only test if a sample of a user’s apps meet the policies • We might not have the same version as the user • Permissions can increase or decrease; apps change • …but typically only increase
  • 38. 0 10000 20000 30000 0.00 0.25 0.50 0.75 1.00 %age of user’s apps meeting policy Usercount variable C A F U
  • 39. 0 10000 20000 30000 0.00 0.25 0.50 0.75 1.00 %age of user’s apps meeting policy Usercount variable C A F UAlmost no one follows a policy all the time
  • 40. 0 10000 20000 30000 0.00 0.25 0.50 0.75 1.00 %age of user’s apps meeting policy Usercount variable C A F U …or even some of the time
  • 41. C A F U ≥ 50% 179 (0.41%) 206 (0.47%) 696 (1.58%) 2390 (5.43%) ≥ 60% 45 (0.10%) 49 (0.11%) 209 (0.48%) 867 (2.0%) ≥ 70% 18
 (0.04%) 19 (0.04%) 79 (0.18%) 331 (0.75%) ≥ 80% 15 (0.03%) 16 (0.04%) 49 (0.11%) 151 (0.34%) ≥ 90% 13 (0.03%) 14 (0.03%) 37 (0.08%) 69 (0.16%) = 100% 13 (0.03%) 14 (0.03%) 37 (0.08%) 67 (0.15%)
  • 42. C A F U ≥ 50% 179 (0.41%) 206 (0.47%) 696 (1.58%) 2390 (5.43%) ≥ 60% 45 (0.10%) 49 (0.11%) 209 (0.48%) 867 (2.0%) ≥ 70% 18
 (0.04%) 19 (0.04%) 79 (0.18%) 331 (0.75%) ≥ 80% 15 (0.03%) 16 (0.04%) 49 (0.11%) 151 (0.34%) ≥ 90% 13 (0.03%) 14 (0.03%) 37 (0.08%) 69 (0.16%) = 100% 13 (0.03%) 14 (0.03%) 37 (0.08%) 67 (0.15%) but it isn’t zero
  • 44. 0 50 100 150 0.7 0.8 0.9 1.0 %age of user’s apps meeting policy Usercount variable not PUP not Malware
  • 45. 0 50 100 150 0.7 0.8 0.9 1.0 %age of user’s apps meeting policy Usercount variable not PUP not Malware Almost no malware installed
  • 46. Do users who follow a policy 
 install less malware?
  • 47. 0.80 0.85 0.90 0.95 1.00 0.00 0.25 0.50 0.75 1.00 %age of apps meeting ‘Advanced’ policy %ageofappsmeeting‘Not−PUP’policy
  • 48. yes! 0.80 0.85 0.90 0.95 1.00 0.00 0.25 0.50 0.75 1.00 %age of apps meeting ‘Advanced’ policy %ageofappsmeeting‘Not−PUP’policy
  • 49. So what did we learn?
  • 50. • What people say and what people do are 
 two different things • Being picky seems to stop you installing rubbish • AppPAL works great for exploring properties of apps
  • 52. • On device policy checking • check your installed apps against a policy • Building stores with policies • searching and building stores with policies • What is causing this disconnect? • fatigue? lack of awareness? lack of choice?