SlideShare a Scribd company logo
CNIT 128
Hacking Mobile Devices
5. Attacking Android Applications

Part 1
Topics
• Part 1
• Exposing Security Model Quirks
• Attacking Application Components 

(to p. 271)
• Part 2
• Attacking Application Components (finishes)
Topics
• Part 3
• Accessing Storage and Logging
• Misusing Insecure Communications
• Exploiting Other Vectors
• Additional Testing Techniques
Three Main Components
Application Container
• Ways to defeat application sandbox
• Gain access to app data
• Malicious app on a device
• Physical access to device
• Other vulnerabilities in the app
Communications
• ARP poisoning
• Hosting a malicious wireless network
• Compromising upstream providers
• Intercept and modify traffic
Internet Server
• Server may have vulnerabilities
• Compromised server exposes all information
flowing to and from mobile apps
Exposing Security Model
Quirks
Interacting with App
Components
targetSdkVersion
• Determines default publishing of components
• Other values: compileSdkVersion and
minSdkVersion (link Ch 7a)
Android Distribution
Dashboard
• Link Ch 7b
CNIT 128 7. Attacking Android Applications (Part 1)
Explicitly Exported
Components
• Explicitly 

exported
• Unspecified; will be exported implicitly
if targetSdkVersion < 17
Implicitly Exported
• Any component using an <intent-filter> is
exported by default
• Like this activity
Finding Exported
Components
• Examine Manifest
• Drozer's attacksurface module shows
exported components
app.<component>.info
• Broadcast receivers exposed by the Android
browser
Intent Filters
• -i switch
Supreme User Contexts
• root and system users can interact with
application components
• Even when they are not exported
• Components that are not exported in the
manifest are private
• Limited to internal use by the app
• Only attackers with root privileges can attack
them
Permission Protection
Levels
• Best protection is a custom permission with
protection level signature
• Only apps with the same signature can have
that permission
Protection Level
Downgrade Attack
• The first app that sets a permission's
protection level wins
• Later apps can't change it
• A malicious app that defines a permission first
can downgrade its permission level, for
example to normal
• Fixed in Android 5.0
• Links Ch 7e, 7f
Attacking Application
Components (to p. 271)
Intents
• Intent is a data object that defines a task to
be performed
• To start an activity, call startActivity(Intent)
• sendBroadcast(Intent) sends to a broadcast
receiver
• startService(Intent) sends to a service
• Intent is generic, does not specify tye type of
component receiving it
Example
• Link Ch 7g
CNIT 128 7. Attacking Android Applications (Part 1)
Explicit Intents
• State the component that must receive it
• Using setComponent() or setClass()
• Bypasses the intent resolution process in the
OS
• Directly delivers the intent to the specified
component
Implicit Intent
• Does not specify the component to be used
• Relies on the OS to determine the best
candidate to deliver it to
• Ex: "Play this MP3"
• Using whatever player is available
• A box may pop up asking the user which app
to use
Example
• This intent tells the Android system to display
a webpage
• All installed Web browsers should be
registered to via an intent filter
Intent Filters
• Defined by installed apps
• Filters can match
• Action
• Data
• Category
• Action is mandatory
Example Intent Filters
Example Intent Filters
am: Activity Manager
• Part of Android
• Lets you send intents to app components
• Link Ch 7h
• Sieve: vulnerable
password manager
Attack Surface
Activity Info
• No Permissions on them: they are unprotected
• Any app or user can launch them
PIN Bypass
• Reveals
usernames
Auditing Content Providers
• Only /Keys requires permissions
Finding URIs
• /Passwords requires no permissions
Password Exposure
• It's not in plaintext yet
SQL Injection
• SQL error indicates vulnerability
• Enumerate table names
Reveal Plaintext Password
Real-World Examples
CNIT 128 7. Attacking Android Applications (Part 1)
Lock Screen Bypass
• adb shell am start -n com.android.settings/
com.android.settings.ChooseLockGeneric --ez
confirm_credentials false --ei
lockscreen.password_type 0 --activity-clear-task
•
Tapjacking
• Malicious app overlays a false UI on top of
buttons
• So taps activate something unexpected
• Using toasts --small graphic elements
CNIT 128 7. Attacking Android Applications (Part 1)
Recently-Used App
Screenshots
• May contain sensitive info
• Stored in RAM
• Only available to privileged
users
Fragment Injection
• On Android 4.3 and earlier
• Using a "fragment", could change PIN without
knowing old PIN
Opens
this
screen
directly
CNIT 128 7. Attacking Android Applications (Part 1)
CNIT 128 7. Attacking Android Applications (Part 1)

More Related Content

PDF
CNIT 128 7. Attacking Android Applications (Part 3)
PDF
CNIT 128 7. Attacking Android Applications (Part 2)
PDF
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 3)
PDF
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 2)
PDF
6. Analyzing Android Applications Part 2
PDF
CNIT 128: 7. Attacking Android Applications (Part 1 of 3)
PDF
CNIT 128 6. Analyzing Android Applications (Part 3)
PDF
CNIT 128 6. Analyzing Android Applications (Part 3 of 3)
CNIT 128 7. Attacking Android Applications (Part 3)
CNIT 128 7. Attacking Android Applications (Part 2)
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 3)
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 2)
6. Analyzing Android Applications Part 2
CNIT 128: 7. Attacking Android Applications (Part 1 of 3)
CNIT 128 6. Analyzing Android Applications (Part 3)
CNIT 128 6. Analyzing Android Applications (Part 3 of 3)

What's hot (20)

PDF
CNIT 128 6. Analyzing Android Applications (Part 1)
PDF
CNIT 128 2. Analyzing iOS Applications (Part 2)
PDF
CNIT 128 7. Attacking Android Applications (Part 2)
PDF
CNIT 128: 3. Attacking iOS Applications (Part 2)
PDF
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 1)
PDF
CNIT 128 9. Writing Secure Android Applications
PDF
CNIT 128 6. Analyzing Android Applications (Part 2 of 3)
PDF
CNIT 128 7. Attacking Android Applications (Part 3)
PDF
CNIT 128 2. Analyzing iOS Applications (Part 1)
PDF
CNIT 128 8. Android Implementation Issues (Part 3)
PDF
CNIT 128: Android Implementation Issues (Part 2)
PDF
CNIT 128 9. Writing Secure Android Applications
PDF
Hacking Tizen: The OS of everything - Whitepaper
PDF
CNIT 128 8. Android Implementation Issues (Part 2)
PDF
CNIT 129S: Ch 12: Attacking Users: Cross-Site Scripting
PDF
Abusing, Exploiting and Pwning with Firefox Add-ons
PDF
2015.04.24 Updated > Android Security Development - Part 1: App Development
PPTX
Android Security
PDF
Android Security
PDF
The Dark Side of PowerShell by George Dobrea
CNIT 128 6. Analyzing Android Applications (Part 1)
CNIT 128 2. Analyzing iOS Applications (Part 2)
CNIT 128 7. Attacking Android Applications (Part 2)
CNIT 128: 3. Attacking iOS Applications (Part 2)
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 1)
CNIT 128 9. Writing Secure Android Applications
CNIT 128 6. Analyzing Android Applications (Part 2 of 3)
CNIT 128 7. Attacking Android Applications (Part 3)
CNIT 128 2. Analyzing iOS Applications (Part 1)
CNIT 128 8. Android Implementation Issues (Part 3)
CNIT 128: Android Implementation Issues (Part 2)
CNIT 128 9. Writing Secure Android Applications
Hacking Tizen: The OS of everything - Whitepaper
CNIT 128 8. Android Implementation Issues (Part 2)
CNIT 129S: Ch 12: Attacking Users: Cross-Site Scripting
Abusing, Exploiting and Pwning with Firefox Add-ons
2015.04.24 Updated > Android Security Development - Part 1: App Development
Android Security
Android Security
The Dark Side of PowerShell by George Dobrea
Ad

Similar to CNIT 128 7. Attacking Android Applications (Part 1) (20)

PDF
7. Attacking Android Applications (Part 1)
PDF
7. Attacking Android Applications (Part 2)
PDF
8 Android Implementation Issues (Part 1)
PDF
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 1)
PPTX
Android overview
PPTX
android is ready for study to all the students and share as soon as possible
PDF
6 Analyzing Android Applications (Part 2)
PDF
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
PDF
9 Writing Secure Android Applications
PDF
CNIT 128 Ch 4: Android
PPTX
128-ch4.pptx
PPTX
Android Mobile App Development basics PPT
PPT
Android Security
PDF
Android Development Tutorial
PPTX
COVERT app
PDF
[Warsaw 26.06.2018] SDL Threat Modeling principles
PDF
Tizen Web Application Checker
PPTX
Security on android
PPTX
Android Security and Peneteration Testing
PPTX
Basics 4
7. Attacking Android Applications (Part 1)
7. Attacking Android Applications (Part 2)
8 Android Implementation Issues (Part 1)
CNIT 128 8. Identifying and Exploiting Android Implementation Issues (Part 1)
Android overview
android is ready for study to all the students and share as soon as possible
6 Analyzing Android Applications (Part 2)
Anti-tampering in Android and Take Look at Google SafetyNet Attestation API
9 Writing Secure Android Applications
CNIT 128 Ch 4: Android
128-ch4.pptx
Android Mobile App Development basics PPT
Android Security
Android Development Tutorial
COVERT app
[Warsaw 26.06.2018] SDL Threat Modeling principles
Tizen Web Application Checker
Security on android
Android Security and Peneteration Testing
Basics 4
Ad

More from Sam Bowne (20)

PDF
Introduction to the Class & CISSP Certification
PDF
Cyberwar
PDF
3: DNS vulnerabilities
PDF
8. Software Development Security
PDF
4 Mapping the Application
PDF
3. Attacking iOS Applications (Part 2)
PDF
12 Elliptic Curves
PDF
11. Diffie-Hellman
PDF
2a Analyzing iOS Apps Part 1
PDF
12 Investigating Windows Systems (Part 2 of 3)
PDF
10 RSA
PDF
12 Investigating Windows Systems (Part 1 of 3
PDF
9. Hard Problems
PDF
11 Analysis Methodology
PDF
8. Authenticated Encryption
PDF
5. Stream Ciphers
PDF
6 Scope & 7 Live Data Collection
PDF
4. Block Ciphers
PDF
4 Getting Started & 5 Leads
PDF
3. Cryptographic Security
Introduction to the Class & CISSP Certification
Cyberwar
3: DNS vulnerabilities
8. Software Development Security
4 Mapping the Application
3. Attacking iOS Applications (Part 2)
12 Elliptic Curves
11. Diffie-Hellman
2a Analyzing iOS Apps Part 1
12 Investigating Windows Systems (Part 2 of 3)
10 RSA
12 Investigating Windows Systems (Part 1 of 3
9. Hard Problems
11 Analysis Methodology
8. Authenticated Encryption
5. Stream Ciphers
6 Scope & 7 Live Data Collection
4. Block Ciphers
4 Getting Started & 5 Leads
3. Cryptographic Security

Recently uploaded (20)

PPTX
Microbial diseases, their pathogenesis and prophylaxis
PPTX
Institutional Correction lecture only . . .
PDF
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
PDF
O7-L3 Supply Chain Operations - ICLT Program
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PDF
Pre independence Education in Inndia.pdf
PDF
01-Introduction-to-Information-Management.pdf
PDF
Insiders guide to clinical Medicine.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
Renaissance Architecture: A Journey from Faith to Humanism
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
Anesthesia in Laparoscopic Surgery in India
PDF
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
PDF
Computing-Curriculum for Schools in Ghana
PPTX
master seminar digital applications in india
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
RMMM.pdf make it easy to upload and study
Microbial diseases, their pathogenesis and prophylaxis
Institutional Correction lecture only . . .
BÀI TẬP BỔ TRỢ 4 KỸ NĂNG TIẾNG ANH 9 GLOBAL SUCCESS - CẢ NĂM - BÁM SÁT FORM Đ...
O7-L3 Supply Chain Operations - ICLT Program
2.FourierTransform-ShortQuestionswithAnswers.pdf
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Pre independence Education in Inndia.pdf
01-Introduction-to-Information-Management.pdf
Insiders guide to clinical Medicine.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Renaissance Architecture: A Journey from Faith to Humanism
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Anesthesia in Laparoscopic Surgery in India
Physiotherapy_for_Respiratory_and_Cardiac_Problems WEBBER.pdf
Computing-Curriculum for Schools in Ghana
master seminar digital applications in india
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
Microbial disease of the cardiovascular and lymphatic systems
RMMM.pdf make it easy to upload and study

CNIT 128 7. Attacking Android Applications (Part 1)