OWASP Mobile Top 10 - M5: Insecure Communication
Insecure Communication in Mobile Applications
Threat Agents
Mobile applications often exchange data over networks, making them vulnerable to interception if insecure communication methods are used. Threat agents include:
- Attackers on the same network (e.g., compromised Wi-Fi).
- Rogue network devices (e.g., malicious routers, proxy servers).
- Malware on the mobile device.
Many apps rely on SSL/TLS, but flaws like:
- Deprecated protocols or weak configurations.
- Accepting invalid SSL certificates.
- Inconsistent encryption across workflows.
Security Weakness & Impact
- Common & Detectable: Many apps have security inconsistencies.
- Severe Impact: Can lead to data leaks, account takeovers, and identity theft.
- Moderate Business Impact: Privacy violations, fraud, and reputational damage.
Are You Vulnerable?
Any insecure transmission of sensitive data (e.g., passwords, session tokens, encryption keys) is a risk. This applies to data moving via Wi-Fi, Bluetooth, NFC, SMS, and other communication channels.
Prevention Best Practices
- Always use strong SSL/TLS with trusted certificates.
- Avoid mixed SSL/non-SSL sessions and certificate validation overrides.
- Implement certificate pinning and require SSL chain verification.
- Alert users if invalid certificates are detected.
- Encrypt sensitive data before transmission.
Platform-Specific Guidelines
- iOS: Ensure NSURL calls do not allow invalid certificates. Consider Secure Transport API.
- Android: Avoid overriding SSL validation methods. Implement proper certificate checks.
Common Attack Scenarios
- Certificate Acceptance Flaws – The app trusts any certificate, allowing MITM attacks.
- Weak Cipher Negotiation – Apps negotiate weak encryption, exposing data.
- Privacy & Credential Leaks – Data is sent over non-secure channels, exposing sensitive information.
- 2FA Bypass – Session identifiers are intercepted, allowing unauthorized access.
Using secure communication protocols and proper validation methods is critical to protecting mobile app data.
Comments
Post a Comment