secure mobile app development: differences from traditional approach

23
Suhas Desai Aujas Information Risk Services SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH Session ID: MBS-T02 Session Classification: Intermediate

Upload: others

Post on 03-Feb-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Suhas DesaiAujas Information Risk Services

SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Session ID: MBS-T02

Session Classification: Intermediate

Page 2: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► Trends in Mobile Technology► Mobile App SDLC Challenges► Security Risks in mobile applications► Secure SDLC Approach

Agenda

Page 3: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Trends in Mobile Technology

Page 4: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► By 2014, over 3 billion adults will be able to transact electronically

► By 2013, mobile phones will overtake PCs (Source : Gartner)

Trends in Mobile Technology

Fig : Mobile in Marketing Industry, Forecast : 2009 -2014

Fig: Mobile App Download Market, Forecast : 2009 -2015

Page 5: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Mobile Apps are everywhere!

Page 6: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Mobile App SDLC Challenges over traditional application SDLC

Page 7: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Mobile App SDLC ChallengesSupport forvarious displaysand screen sizes

Rich user interfaces with push notifications (Wherever applicable)

Effective usage oflocal devicedatabase &memory

Effective usage ofcommunicationchannels – SMS /USSD (UnstructuredSupplementaryService Data) / IPand web services

Releasing secure(signed)applicationexecutables

Page 8: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Security Risks in Mobile Applications

Page 9: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Stats : Mobile threats

"The SmartphoneOS will become amajor securitytarget," saidAndroid SecurityLeader RichCannings, speakingat the UsenixSecuritySymposium.

Page 10: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► Fraudulent Transactions through message tampering

► Weak Cryptography

► Mobile Application Server Issues

► Reverse Engineering Threats

► Communication Channel Attacks – SMS / USSD

► Web Services Attacks

► Device lost/theft case scenarios

Risks in Mobile Applications

Page 11: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Mobile Application Architecture1. Install XYZ Telecom’s Money Application  (J2ME Application)

Transaction Requests

Request/Response processing towards Bank’s Interfaces / Payment Gateways

Request/Response Validation

Request/Response Authentication

2. Payment Service Providers –Mobile Validation Layer

User ‐Authenticatio

n and Validation

Request Request Message Validation

Request Request Message Processin

g

Success –Response Message

Failure ‐Response Message

Protocol Errors/Communication Errors

5. Txn 

Respo

nse 3. Bank Interfaces/Payment 

Gateways

Page 12: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► Reverse engineering of mobile application► Transactions Request/Response Attacks► Message Replay Attack► Fraudulent Transactions through Data storage► Verify strong Cryptographic Implementation► Improper Session Management► Authentication Attacks► Web Services Attacks

Attack vector

Page 13: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC – SMS Req/Res Attacks

Figure 1. Application SMS Req / Res Attack

Page 14: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC – Message Replay Attacks

Figure 1. Proxy Settings Figure 2. Intercepted Message

Figure 3. Message Replay Attack

Page 15: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC – Local data modification

Figure 4. Modified application

Figure 1. Original application

Figure 2. Local database modification

Figure 3. Local database modified

Page 16: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC – USSD Gateway Attack

Figure 1. USSD Gateway Emulator

Page 17: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC: iOS App R/R capture

Figure 1. Request/Response Capture

Page 18: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

PoC: iOS App R/R Tampering

Figure 1. Entering Credentials

Figure 2. Intercepted Message

Page 19: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Secure SDLC Approach

Page 20: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Secure SDLC Approach

Requirements Design Development Release Sustenance

• Software risk profile

• Security requirement definition

• Security investment analysis

• Software risk profile

• Security requirement definition

• Security investment analysis

• Threat modeling

• Security arch design

• Security controls

• Developer training

• Threat modeling

• Security arch design

• Security controls

• Developer training

• Secure coding best practices

• Secure code libraries

• Pair programming / peer reviews

• Secure coding best practices

• Secure code libraries

• Pair programming / peer reviews

• Functional, architecture, code & deployment testing

• Security controls validation

• Remediation

• Functional, architecture, code & deployment testing

• Security controls validation

• Remediation

• Security metrics analysis

• Change management

• Incident & consequence management

• Security metrics analysis

• Change management

• Incident & consequence management

Page 21: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► Secure data transmission► Secure data storage► Ensure to implement proper session management► Validate all trusted and un-trusted inputs► Ensure to implement strong authentication mechanism

Secure SDLC – Best Practices

Page 22: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

► Ensure to implement response and request messages encryption

► Ensure to implement proper message authentication mechanism to validate requests/responses are generated through authenticated users

► Ensure to implement and use Secure SMS/USSD/IP communication channels

► Secure Interface between payment gateways and mobile payment application

Contd..

Page 23: SECURE MOBILE APP DEVELOPMENT: DIFFERENCES FROM TRADITIONAL APPROACH

Thank You!

www.aujas.com