Introduction to Mobile Application Security
The Prenetation Testing Process
Pre-engagement
Define sensive data
user creds, user info, etc
PII
Data protected by laws and regulations
Indentify security related items
Hashing
Encyption
Encoding
Token storage (API,session,etc...)
Random number generators
Recon
Purpose of the app
Developer of the app
Industry, how the app works
App mapping - Scanning
App architecture
How it manafes user sessions
How the app communicates
Threat modeling
Exploitation - CI/CD
Not all vulnerabilities are relevant or exploitable
Look at:
Damage potential
Discoverability
Reproducibility
Explotability
Data or user impacted
Reporting
Executive summary
Definition of the scope
Methods used
Findings
Recommendatios
Common Mobile Application Vulnerabilities
Insecure Data Store
Storing sensitive data like credentials or session tokens in plaintext
Common storage issues:
Using SharedPreferences on unencrypted SQLite databaes
Impact. Data theft if the device is compromised
Insecure Communication
Transmitting sensitive data over HTTP instead if HTTPS
Failing to validate SSL/TLS cetfs
Impact: Data interception via man-in-the-middle attacks
Weak Authentication and Authorization
Hadcoded credentials in the app
Poor implementation of user authentication mechanisms
Missing access control for backend APIs
Impact: Unathorized access and privilege escalation
Excesive Permissions
Apps requesting unnecesary permissions, such as access to location or contacts
Impact: Exposure of sensitive data that the app doesnt need to function
Insecure APIs
APIs with insufficient input validation or authetication
Overexposed endpoints accessible to unauthorized users
Impact: Data leaks, unaythorized transactions, or system compromise
Reverse Engineering
Lack of obfuscation makes it easier for attackers to decompile and analyze apps
Extracting API keys or modifying app logic
Impact: Misuse of backend services or bypassing security measure
Outdated Components
Using third-party libraries with known vulnerabilities
Impact: Exploitation of unpatched vulnerabilities in libraries or frameworks
Last updated