Upgrade to Pro — share decks privately, control downloads, hide ads and more …

What Android developers should know about security

bolot
February 24, 2017

What Android developers should know about security

Presented at DevNexus in Atlanta

bolot

February 24, 2017
Tweet

More Decks by bolot

Other Decks in Technology

Transcript

  1. Case Study: Stagefright • Media server framework • Attack via

    malicious MMS • Remote code execution • Privilege escalation • Publicly disclosed July 2015 • Apps are impacted
  2. 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
  3. Security and Design • Most people think it’s important •

    Cannot be applied at the end • Changes can be costly if not planned
  4. Security practices • Software Updates • Password Manager • 2-Factor

    Authentication • VPN • Backups • Leak Notifications
  5. Software Updates • Follow best practices, plan for upgrades •

    Train engineers • Perform audits • APIs: evolution, deprecation • Keep up with tools updates
  6. 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
  7. Secure Communication • Use HTTPS (TLS) everywhere • Enable Network

    Security Configuration • Certificate pinning
  8. What Can Developers Do? • Practice security as a user

    • Optimize for best security practices • Training • Checklists • Audits, Reviews