OWASP Mobile Top 10: M2 Insecure Data Storage

Null Bangalore Meet

30 August 2014

Abstract

This Session will focus on Mobile Top 10 2014-M2 : Insecure Data Storage. We will try to understand Insecure Data storage and how this affects the overall security of Mobile Devices. We will use some sample vulnerable application to understand the cause of the issues as well as what kind of protection can be applied.

Slides

AI Generated Summary

AI Generated Content Disclaimer

Note: This summary is AI-generated and may contain inaccuracies, errors, or omissions. If you spot any issues, please contact the site owner for corrections. Errors or omissions are unintended.

This presentation covers OWASP Mobile Top 10 Risk M2: Insecure Data Storage, explaining how mobile applications on both Android and iOS frequently store sensitive data in plaintext or trivially reversible formats. Through real-world examples including Google Authenticator and Microsoft Outlook, Anant Shrivastava demonstrates how insecure storage practices can lead to identity theft, fraud, and compliance violations, while providing practical guidance on detection and mitigation.

Key Topics Covered

Actionable Takeaways

  1. Never store credentials, tokens, or PII on the mobile device filesystem in plaintext or trivially reversible formats — use platform-provided secure storage APIs with proper encryption.
  2. When auditing an Android app, extract and inspect /data/data/<app_name> and /sdcard/ for any sensitive data stored in XML, SQLite, plist, config, or log files.
  3. Use SQLCipher for encrypting SQLite databases and avoid MODE_WORLD_READABLE shared preferences on Android.
  4. On iOS, avoid NSUserDefaults for sensitive data and be aware that NSManagedObject data is stored unencrypted by default.
  5. Treat device keychains as a defense-in-depth measure, not a complete solution — they become readable on rooted or jailbroken devices.
  6. Force re-authentication on app launch via HTTPS rather than storing persistent session tokens locally.

Social chatter