Privacy on Smartphones Presentation by Claude Barthels Roadmap - - PowerPoint PPT Presentation

privacy on smartphones
SMART_READER_LITE
LIVE PREVIEW

Privacy on Smartphones Presentation by Claude Barthels Roadmap - - PowerPoint PPT Presentation

Privacy on Smartphones Presentation by Claude Barthels Roadmap TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones MockDroid: Trading Privacy for Application Functionality on Smartphones


slide-1
SLIDE 1

Privacy on Smartphones

Presentation by Claude Barthels

slide-2
SLIDE 2

Roadmap

■ TaintDroid: An Information-Flow Tracking System for

Realtime Privacy Monitoring on Smartphones

■ MockDroid: Trading Privacy for Application Functionality

  • n Smartphones

■ Paranoid Android: Versatile Protection for Smartphones

slide-3
SLIDE 3

TaintDroid

An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones Paper by W. Enck, P. Gilbert, B.-G. Chun,

  • L. P. Cox, J. Jung, P. McDaniel, A. N. Sheth
slide-4
SLIDE 4

Problem Setting

?

slide-5
SLIDE 5

What is TaintDroid?

Extension of the Android platform Tracks flow of information through an application Realtime analysis & feedback Tracks data between processes (file, IPC, ...)

slide-6
SLIDE 6

General idea

Mark (taint) sensitive information Taint sources and sinks

Taint Source Taint Sink Application Sensitive Information Tainted Information ALERT! if (taint == true)

slide-7
SLIDE 7

Design Challenges

Limited resources & performance Identifying private information Multiple types and sources of sensitive data Data sharing between applications

slide-8
SLIDE 8

User notification

slide-9
SLIDE 9

How it works - Variable level

Multiple taint markings stored in a taint tag Taint tag is a 32bit vector Stored adjacent to the variables Only one taint tag per array

slide-10
SLIDE 10

How it works - Stack layout

slide-11
SLIDE 11

How it works - Message & file level

Only one tag per message or file Union over all taint tags of the variables contained in the message or file Potential for false positives Less overhead than a finer granularity

slide-12
SLIDE 12

How it works - Propagation logic

slide-13
SLIDE 13

Where to place taint sources & sinks?

Low-bandwidth sensors (location, accelerometer, ...) High-bandwidth sensors (camera, microphone, ...) Information databases (calendar, address book, ...) Device identifiers (SIM number, IMEI number, ...) Network Taint Sink

slide-14
SLIDE 14

Limitations

Data flow tracking only / No control flow tracking Native code is unmonitored ○ Conservative heuristic: Assign union of argument taint markings to return type Sometimes too coarse grained ○ One taint tag per message or file ○ One taint tag per array

slide-15
SLIDE 15

Performance

slide-16
SLIDE 16

Experiment - Setup

30 popular applications ~ 100 minutes of recording Network access + additional permissions Nexus One with Android 2.1

slide-17
SLIDE 17

Experiment - Applications

slide-18
SLIDE 18

Experiment - Results

slide-19
SLIDE 19

Reviews

6 Reviews - Average Score 2.16 (accept) + Privacy is an issue (Data scandal is a matter of time) + Low overhead / Good performance - accuracy tradeoff

+/- Study with open source software as ground truth +/- A lot of implementation details

  • No native code tracking or static code analysis
  • A lot of Android knowledge required
  • Too sophisticated for 'normal' user
  • May force developers to create new malicious ways to

get the data

  • Only notifications / No control
slide-20
SLIDE 20

MockDroid

Trading Privacy for Application Functionality on Smartphones Paper by A. R. Beresford, A. Rice, N. Skehin,

  • R. Sohan
slide-21
SLIDE 21

Problem setting

Similar problem setting as TaintDroid Applications often require sensitive data to work correctly Access to resources is granted

  • nce at install time and cannot

be changed afterwards

slide-22
SLIDE 22

What is MockDroid?

Extension of the Android platform MockDroid allows to fake (mock) sensitive data Decision of faking data can be done/changed at runtime

slide-23
SLIDE 23

What is MockDroid?

slide-24
SLIDE 24

How it works

Granted permissions are stored by Android in an in- memory data structure and on disk API calls check the in-memory data structure MockDroid extends the data structure with a 'real' and a 'mocked' version of the permission Internet permissions requires inet group. MockDroid therefore adds a mocked_inet group

slide-25
SLIDE 25

What can be faked?

Location - no location fix Internet - connection timeout Calendar & contacts - empty database - zero rows affected Device id - Fake constant value Broadcast intents - Intents never sent/received

slide-26
SLIDE 26

Limitations

Limited in what can be faked ○ Instead of no location, just an approximate indication (e.g. next big city) ○ Instead of empty contact or calendar database, MockDroid could return a subset (like public events)

slide-27
SLIDE 27

Evaluation

Local

○ location used for

location based advertisements

○ No reduced

functionality Internet:

○ Limited functionality

when mocking internet access

○ Continue to run even without internet access

slide-28
SLIDE 28

Paranoid Android

Versatile Protection for Smartphones Paper by G. Portokalidis, P. Homburg,

  • K. Anagostakis, H. Bos
slide-29
SLIDE 29

Problem setting

Smartphones hold privacy sensitive information Become highly valuable targets for attacks Security solutions from PCs are not always applicable to smartphones

slide-30
SLIDE 30

What is Paranoid Android?

Security as a service Security checks are performed by security servers Security servers hold an exact replica of the phone in a virtual environment Record & replay model

slide-31
SLIDE 31

Overall architecture

slide-32
SLIDE 32

Security Model

Buffer overflows & Code injection (implemented in prototype) Open source AntiVirus scanner (for file scans) (implemented in prototype) Memory scanner for patterns of malicious code Abnormal system call detection ... flexible model which can be extended

slide-33
SLIDE 33

Notification & Recovery

Notifications, Emails or SMS may be blocked Hardware support Restore to clean state using the replica Minimizing data loss

slide-34
SLIDE 34

Evaluation

Amount of trace data Overhead of the tracer Performance and scalability of the server

slide-35
SLIDE 35

Evaluation - Amount of trace data

slide-36
SLIDE 36

Evaluation - Overhead

slide-37
SLIDE 37

Evaluation - Server scalability

slide-38
SLIDE 38

Thank you very much for your attention!

Questions & Discussion

■ Which approach do you like most? Or other ways to

protect privacy?

■ Will it become a necessity to run AV software on a

phone?

■ Has anyone installed an AV already? ■ What is a better approach: restricted platforms like iOS or

more open platforms like Android?