Mobile Devices
Last updated
Last updated
Various techniques can be used to compromise a mobile device:
Reverse Engineering: analysing the compiled app to extract information and its source code can be used to understand the underlying architecture of the mobile application to potentially manipulate the OS.
Sandbox Analysis: iOS & Android apps are isolated via sandbox environments. Attackers can analyse the sandbox environments to try to bypass the access control mechanisms in place.
Spamming: text message spamming is one of the most prevalent ways attackers can try to breach a device, sending mass texts to encourage users to click a malicious link.
Some of the most prevalent vulnerabilities affecting mobile devices are:
Insecure Storage: Android and iOS provide secure storage APIs for developers to use. If developers do not use these APIs successfully, attackers could leverage this. For example, an attacker could use static analysis and reverse engineering to see how applications create keys and store them.
Passcode Vulnerabilities and Biometrics Integrations: Vulnerabilities in integration of authentication services can lead to full device compromise. Attacks like objection biometric bypass can be used to bypasss local authentication. OWASP provide a testing guide .
Certificate Pinning: Attackers use this to associate a mobile app with a particular digital certificate.
User Known Vulnerable Components: Vulnerabilities may be leveraged against the underlying mobile operating system. Patching fragmentation is one of the biggest challenges in Android-based implementations. Android fragmentation is the term for numerous Android versions which are supported or not supported by different mobile devices.
Execution of Activities Using Root and Over-reach of Permission: Application developers must practice the principle of least privilege. This means that they should not allow mobile applications to run as root, they should only be given the access they need to perform tasks.
Business Logic Vulnerabilities: An attacker could use legitimate transactions and flows of an application in a way that results in a negative outcome. Most common business logic problems are different from typical security vulnerabilities. A challenge with these is that they cannot be found by automated tools or scanners.
Some of the most common tools used to test the security posture of mobile devices are:
Burp Suite: Proxy/web app security tool. Can be used to test how mobile apps communicate with web services.
Drozer: Android testing platform and framework providing access to numerous exploits.
needle: Open-source framework for testing iOS apps.
Mobile Security Framework (MobSF): Automated mobile app and malware analysis framework.
Postman: Used to test and develop APIs.
Ettercap: Used to perform on-path attacks.
Frida: Dynamic instrumentation toolkit for security researchers and reverse engineers.
Objection: Runtime mobile platform and app exploration framework, can be used to bypass certificate pinning, dump keychains, perform memory analysis and launch other attacks.
Android SDK Tools: Tools used to analyse and obtain detailed information about the Android environment.
ApkX: Android APK package decompiler.
APK Studio: Can be used to reverse engineer Android applications.