46
Mobile Application Security Chris Clark [email protected] iSEC Partners, Inc. 04/23/09 | AND-301 Session Classification: Intermediate

Mobile Application Security

Tags:

Embed Size (px)

DESCRIPTION

An overview of the security challenges and opportunities that mobile application developers must work through

Citation preview

Page 1: Mobile Application Security

Mobile Application Security

Chris Clark

[email protected]

iSEC Partners, Inc.

04/23/09 | AND-301

Session Classification:

Intermediate

Page 2: Mobile Application Security

2

Agenda

Security Challenges

Mobile Today

Supporting Security

Actions

Page 3: Mobile Application Security

Mobile Today

Page 4: Mobile Application Security

Mobile Phone Sales Per Year

0

200

400

600

800

1000

1200

1997 2009

4

Data from Tomi Ahonen Almanac 2009

Phones

In

Millions

Page 5: Mobile Application Security

5

Page 6: Mobile Application Security

Major Smartphone Platforms

6

Page 7: Mobile Application Security

7

Page 8: Mobile Application Security

Trend Catalysts

• Sexier Devices

• Younger Generation

• F500 Acceptance

• Multi-Environment Phones

• Unlimited Data Plans

• Provider App Stores

8

Page 9: Mobile Application Security

Security Challenges

Page 10: Mobile Application Security

What is Security?

• Not the PC or Server Model

– Single User

– High-Value Information

– Low-Value Applications

• Availability and Power

• Local Attacker Resistance

10

Page 11: Mobile Application Security

The Airline Pocket

• Physical Security Just Doesn’t Exist

• Phones will Be Lost

• Need Ways of Protecting Data

– Local encryption

– Cloud storage

11

Page 12: Mobile Application Security

Hardware Limitations

• Limited Bandwidth

• Power

• CPU

• Size

12

Technology Will Solve These

Page 13: Mobile Application Security

Screen Size

13

*From RSnake

Page 14: Mobile Application Security

Poor Keyboards

14

C)sOz*ao1pdn

Page 15: Mobile Application Security

Regulations

15

Page 16: Mobile Application Security

User Identification

• Real Time

• Must be Available Immediately

• One Handed Interface

• More Prompts than PC

16

Page 17: Mobile Application Security

“Ownership”

• OS Vendor

• Carrier

17

• User

• Application Developer

All “Own” the Phone and Have Differing Objectives

Page 18: Mobile Application Security

Distribution Challenges

• Indirect Customer Relationship

• Patching Difficulties

– Carriers are anti-patch

• Long Update Lag

• Multiple Hardware Platforms

18

Page 19: Mobile Application Security

Web Browsers

• Different Browser Chrome

• Inconsistent Standards Support

• Too Much WebKit

19

Page 20: Mobile Application Security

Unsafe Languages

• Windows Mobile (C/C++)

– .Net Mobile Framework (safe)

– /GS, SafeCRT

• iPhone (Objective-C)

– Has C Constructs

– NX Stack/Heap

• Symbian (Symbian C++)

– C++ with more Complex Memory Management

20

Page 21: Mobile Application Security

Technical Comparison

21

Feature Blackberry WinMo 6.x iPhone 2.2.1 Android

Enterprise Mail

and Calendar

Remote Wipe

Side-Load

Applications

Application

Sandbox

User

permission UI

App Signing

Browser

Page 22: Mobile Application Security

Technical Comparison

Feature Blackberry WinMo 6 iPhone 2.2.1 Android

Application

Language

Permission

Model

App Buffer

Overflows

OS Buffer

Overflow

Protections

Signature

Required?

Page 23: Mobile Application Security

Vulnerability Count by Platform

23

Page 24: Mobile Application Security

Desktop Heritage

24

Page 25: Mobile Application Security

Growing Security Activity

• Targeted by Security Community

• CanSecWest

• Asian & European Research

• Commercial Spy Products

25

Page 26: Mobile Application Security

Mobile Web Presence

• Multiple Internet Presences

– Mobile vs. Standard

• Both are on the Internet

– Accept “All” Connections

– Pen-Test from Desktop

• Common Real World Result:

– Primary website secured

– Mobile site unprotected

26

Page 27: Mobile Application Security

Common Mobile Portal Mistakes

• Using a Different SLD

– bank.mobilecorp.com

– mobilecorp.com/bank

• Same Credentials as .com

• Phishing Education Destroyed

– If it Ever Worked

Page 28: Mobile Application Security

SupportingSecurity

Page 29: Mobile Application Security

Security Goals

• Users can Safely Run Applications

• OS Protected from Applications

– A.K.A. Steal Carrier Revenue

• Per-Application Private Data

• Contain Vulnerabilities

29

Page 30: Mobile Application Security

Two Models

30

Old Way

Normal Privileged

New Way

App App App

App App App

Page 31: Mobile Application Security

Old Way

• BlackBerry & Windows Mobile

• All or Nothing

• Signatures Defines Permission Level

• No or Limited File Permission Systems

• No “users”

– Good, because it doesn’t make sense

31

Page 32: Mobile Application Security

Pros/Cons

32

Pros

• Easy to Understand

• Easy to Test

Cons

• No Exploit Containment

• User can’t Make Granular Choices

Page 33: Mobile Application Security

Kernel

App 1 App 2 App 3 App 4

File System

Windows Mobile

33

Kernel

Page 34: Mobile Application Security

Blackberry

• J2ME Based

• No Raw Device Access

• Web Services and Web Based Models

34

Page 35: Mobile Application Security

Security Opportunities

• More Granular Permissions

• Sandboxed Applications

• Reduced Attack Surface

• Give Users Control of Data

35

Page 36: Mobile Application Security

iPhone

36

Kernel

App 1 App 2 App 3 App 4

App 1

Data

App 2

Data

App 3

Data

App 4

Data

Page 37: Mobile Application Security

iPhone

• One Distribution Method

• Strict AppStore Policy

• Non-Technological Policy Enforcement

37

Application Store is a Security Barrier

Page 38: Mobile Application Security

Kernel

App 1 App 2 App 3 App 4

App 1

Data

App 2

Data

App 3

Data

App 4

Data

Android & Symbian

38

Page 39: Mobile Application Security

Benefits

• Extensible to Custom Data Types

• Users Have Control

• Same-Developer Sandbox

– An Office Suite is Possible

– Attack Surface Increased

39

Page 40: Mobile Application Security

Challenges

40

Page 41: Mobile Application Security

Android Market

• Self-Signed Certificates

• Community Reputation

• No Unsigned Code Allowed

41

Application Store is a Security Barrier

Page 42: Mobile Application Security

Actions

Page 43: Mobile Application Security

For Enterprises

• Define a Mobile Application Security Policy

• Set User Application Security Policy

– Are App Stores Allowed?

• Build Secure Line of Business Applications

• Create a Unified Model for Mobile Interactions

– Don’t mix “m.” with /mobile or .mobi domains

43

Page 44: Mobile Application Security

For Developers

• Define Security Assertions for Users

• Define Threats

– Lost Phone

– Network Attacks

• Create Limits

– E.g. Read-only Mobile Endpoints

• Apply Secure Development Guidelines

• Test on Real Devices

44

Page 45: Mobile Application Security

For Mobile Web Developers

• Disallow Older Browsers

• Do Not Decrease Overall Security

– Tightly-Scope Functionality

– Use SSL and Proper Domains

• Strong Authentication

– Unique Authentication for Mobile Sites

• Don’t Make Phishing Easier

– Keep Links out of Email

– Maintain Clear Message

45