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
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
bolot
February 24, 2017
Technology
0
310
What Android developers should know about security
Presented at DevNexus in Atlanta
bolot
February 24, 2017
Tweet
Share
More Decks by bolot
See All by bolot
Coroutines: Kotlin Versus DCSF18
bolot
2
910
MLKit DevFest18 ATL
bolot
0
180
Kotlin Coroutines: Beyond async-await
bolot
2
670
Kotlin - Class Destroyer
bolot
0
610
Secure Networking, Connect Tech 2017
bolot
0
87
Defensive Android Security
bolot
0
120
android transition framework
bolot
0
160
Other Decks in Technology
See All in Technology
生成AI活用でQAエンジニアにどのような仕事が生まれるか/Support Required of QA Engineers for Generative AI
goyoki
1
340
システム標準化PMOから ガバメントクラウドCoEへ
techniczna
1
150
【Λ(らむだ)】最近のアプデ情報 / RPALT20260318
lambda
0
130
今のWordPress の制作手法ってなにがあんねん?(改) / What’s the Deal with WordPress Development These Days?
tbshiki
0
520
Copilot 宇宙へ 〜生成AIで「専門データの壁」を壊す方法〜
nakasho
0
130
「通るまでRe-run」から卒業!落ちないテストを書く勘所
asumikam
2
420
"作る"から"使われる"へ:Backstage 活用の現在地
sbtechnight
0
230
Phase04_ターミナル基礎
overflowinc
0
390
スピンアウト講座02_ファイル管理
overflowinc
0
230
VLAモデル構築のための AIロボット向け模倣学習キット
kmatsuiugo
0
310
VPCエンドポイント意外とお金かかるなぁ。せや、共有したろ!
tommy0124
1
720
形式手法特論:SMT ソルバで解く認可ポリシの静的解析 #kernelvm / Kernel VM Study Tsukuba No3
ytaka23
1
700
Featured
See All Featured
Claude Code のすすめ
schroneko
67
220k
Writing Fast Ruby
sferik
630
63k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
190
My Coaching Mixtape
mlcsv
0
82
The browser strikes back
jonoalderson
0
810
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.8k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
14k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
240
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
160
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
320
Facilitating Awesome Meetings
lara
57
6.8k
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