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
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
bolot
February 24, 2017
Technology
310
0
Share
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
920
MLKit DevFest18 ATL
bolot
0
180
Kotlin Coroutines: Beyond async-await
bolot
2
680
Kotlin - Class Destroyer
bolot
0
620
Secure Networking, Connect Tech 2017
bolot
0
89
Defensive Android Security
bolot
0
120
android transition framework
bolot
0
160
Other Decks in Technology
See All in Technology
プロダクトを育てるように生成AIによる開発プロセスを育てよう
kakehashi
PRO
1
800
ASTのGitHub CopilotとCopilot CLIの現在地をお話しします/How AST Operates GitHub Copilot and Copilot CLI
aeonpeople
1
190
主催・運営として"場をつくる”というアウトプットのススメ
_mossann_t
0
120
推し活エージェント
yuntan_t
1
860
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
77k
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
4
13k
OpenClaw初心者向けセミナー / OpenClaw Beginner Seminar
cmhiranofumio
0
350
Babylon.js Japan Activities (2026/4)
limes2018
0
180
すごいぞManaged Kubernetes
harukasakihara
1
340
ログ基盤・プラグイン・ダッシュボード、全部整えた。でも最後は人だった。
makikub
4
760
ふりかえりを 「あそび」にしたら、 学習が勝手に進んだ / Playful Retros Drive Learning
katoaz
0
290
不確実性と戦いながら見積もりを作成するプロセス/mitsumori-process
hirodragon112
1
190
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Unsuck your backbone
ammeep
672
58k
Facilitating Awesome Meetings
lara
57
6.8k
The SEO identity crisis: Don't let AI make you average
varn
0
430
Building an army of robots
kneath
306
46k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
160
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
180
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
330
Context Engineering - Making Every Token Count
addyosmani
9
800
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
140
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
210
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
230
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