Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What Android developers should know about security
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
bolot
February 24, 2017
Technology
340
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
What Android developers should know about security
Presented at DevNexus in Atlanta
bolot
February 24, 2017
More Decks by bolot
See All by bolot
Coroutines: Kotlin Versus DCSF18
bolot
2
940
MLKit DevFest18 ATL
bolot
0
200
Kotlin Coroutines: Beyond async-await
bolot
2
700
Kotlin - Class Destroyer
bolot
0
660
Secure Networking, Connect Tech 2017
bolot
0
100
Defensive Android Security
bolot
0
140
android transition framework
bolot
0
180
Other Decks in Technology
See All in Technology
Microsoft MVP プログラムを紹介するから目指す人増えてくれ
tsubakimoto_s
0
150
「面白い!」を信じ抜け。激動の時代を貫く、オンリーワン・エンジニアの条件
kizawa2020
2
440
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
470
OpenID for Verifiable Credentials 実装から見えた相互運用性確保までの道のり(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
380
AIレビュー時代に必要なのは、SLOで引く撤退ライン
nobuoooo
0
150
Claude Codeの体系的な理解と知識のフック
oikon48
9
6.2k
VPCでもFloatingIPを使いたいんだ
y_kotani
1
130
dbt in Microsoft Fabric
ryomaru0825
0
300
internal/testlog で遊ぼう
rokuosan
0
410
分割40%キーボードにスムーズに入門するには
hoto17296
1
200
GopherCon @シアトル に行ってきました
logica0419
0
450
会計事務所と顧問先の契約関係をOIDC・OAuthで表現する
terara
0
520
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Code Reviewing Like a Champion
maltzj
528
40k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
47
4.2k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Visualization
eitanlees
152
17k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
210
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
500
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The Spectacular Lies of Maps
axbom
PRO
1
950
New Earth Scene 8
popppiees
3
2.5k
Transcript
What Android Developers Should Know About Security
Bolot Kerimbaev Android and iOS instructor and developer
Android App Developers https://www.bignerdranch.com/app-development/case-studies/
What Is Security?
None
What Is Security? • Confidentiality • Integrity • Availability
What Is Security? • Threats • Risks • Responses •
Remediations
Threat model • Malicious apps • Stolen phones • Wi-Fi
hotspots • Malicious HTML, SMS
Case Study: Stagefright • Media server framework • Attack via
malicious MMS • Remote code execution • Privilege escalation • Publicly disclosed July 2015 • Apps are impacted
Demolition Man, 1993
Android Security
Android Security • Application Signing • (SE)Linux • Permissions •
Interprocess Communication • Verified Boot
KitKat Lollipop Marshmallow Nougat SELinux, enforcing mode Full disk encryption,
hardware bound Hardware-Isolated Security File-based encryption, Direct Boot Device monitoring warnings WebView updates Verified Boot Verified Boot, strictly enforced Per user VPN Position Independent Executables Fingerprints Library load-order randomization Fortify Source level 2 TLS v1.2 Runtime Permissions APK Signature v2 Certificate pinning Smart Lock StrictMode, disable cleartext Network security config https://source.android.com/security/enhancements/index.html
Challenges • Fragmentation • Google vs OEMs vs Carriers vs
Qualcomm • Vulnerabilities
Case Study: Stagefright Pre-N Nougat
Who Cares About Security?
Security and Design • Most people think it’s important •
Cannot be applied at the end • Changes can be costly if not planned
None
Mobile & Server
Security practices https://security.googleblog.com/2015/07/new-research-comparing-how-security.html
Security practices • Software Updates • Password Manager • 2-Factor
Authentication
Security Updates
Password Managers
2-Factor Authentication
Security practices • Software Updates • Password Manager • 2-Factor
Authentication • VPN • Backups • Leak Notifications
What Can App Developers Do?
Checklists • Android Security Checklist • Industry Specific: PCI, HIPAA
• OWASP
https://www.owasp.org/index.php/OWASP_Mobile_Security_Project
Software Updates • Follow best practices, plan for upgrades •
Train engineers • Perform audits • APIs: evolution, deprecation • Keep up with tools updates
Password Management • Integrate with password managers • Implement single
sign-on, OAuth, etc. • Don’t use device ID • Don’t store passwords • Careful about custom password text fields
Case Study: Smart Lock
2-Factor Authentication • TOTP (Google Authenticator, Authy) • FIDO U2F
(Yubikey) • Don’t use SMS
Secure Communication • Use HTTPS (TLS) everywhere • Enable Network
Security Configuration • Certificate pinning
Protect User Data • Secure storage • Easy backups and
data restoration • Cryptography
Vulnerability Reporting • Make it easy to report issues in
your app • Track vulnerabilities
What Can Developers Do? • Practice security as a user
• Optimize for best security practices • Training • Checklists • Audits, Reviews
Questions? • @bolot • @bignerdranch • Android Security course, Q3
2017