New mobile operating system versions bring not only patches against discovered vulnerabilities but also often bring security architecture improvements that provide resilience against potential vulnerabilities or weaknesses that have not yet been discovered. They may also bring improvements that block use of observed adversary techniques.
Domain | ID | Name | Use | |
---|---|---|---|---|
Mobile | T1433 | Access Call Log |
Decrease likelihood of successful privilege escalation attack. |
|
Mobile | T1413 | Access Sensitive Data in Device Logs |
Starting in Android 4.1, this technique requires privilege escalation for malicious applications to perform, as apps can no longer access the system log (other than log entries added by a particular app itself). (Additionally, with physical access to the device, the system log could be accessed via USB through the Android Debug Bridge.)[1] |
|
Mobile | T1409 | Access Stored Application Data |
Most new versions of mobile operating systems include patches to newly discovered privilege escalation exploits used to root or jailbreak devices. Further, applications that target Android API level 28 or higher on Android 9.0 and above devices have a policy applied that prevents other applications from reading or writing data in their internal storage directories, regardless of file permissions.[2] |
|
Mobile | T1427 | Attack PC via USB Connection | ||
Mobile | T1402 | Broadcast Receivers |
In Android 8, broadcast intent behavior was changed, limiting the implicit intents that applications can register for in the manifest.[3] |
|
Mobile | T1429 | Capture Audio |
Android 9 and above restricts access to microphone, camera, and other sensors from background applications.[4] |
|
Mobile | T1512 | Capture Camera |
Android 9 and above restricts access to mic, camera, and other sensors from background applications.[4] |
|
Mobile | T1414 | Capture Clipboard Data |
Android 10 prevents applications from accessing clipboard data unless the application is on the foreground or is set as the device’s default input method editor (IME).[5] |
|
Mobile | T1412 | Capture SMS Messages | ||
Mobile | T1448 | Carrier Billing Fraud |
Starting with Android 4.2 the user must provide consent before applications can send SMS messages to premium numbers.[6] |
|
Mobile | T1510 | Clipboard Modification |
Android 10 prevents applications from accessing clipboard data unless the application is on the foreground or is set as the device’s default input method editor (IME).[5] |
|
Mobile | T1577 | Compromise Application Executable |
Many vulnerabilities related to injecting code into existing applications have been patched in previous Android releases. |
|
Mobile | T1401 | Device Administrator Permissions |
Changes were introduced in Android 7 to make abuse of device administrator permissions more difficult.[7] |
|
Mobile | T1446 | Device Lockout | ||
Mobile | T1407 | Download New Code at Runtime |
On Android 10 and above devices, applications that target Android API level 29 or higher cannot execute native code stored in the application's internal data storage directory, limiting the ability of applications to download and execute native code at runtime.[8] |
|
Mobile | T1456 | Drive-by Compromise | ||
Mobile | T1404 | Exploit OS Vulnerability | ||
Mobile | T1405 | Exploit TEE Vulnerability | ||
Mobile | T1458 | Exploit via Charging Station or PC |
Newer OS versions generally will include security patches against discovered vulnerabilities that become known to the vendor. Additionally, iOS 11.4.1 and higher introduce USB Restricted Mode, which under certain conditions disables data access through the device's charging port (making the port only usable for power), likely preventing this technique from working.[9] |
|
Mobile | T1477 | Exploit via Radio Interfaces | ||
Mobile | T1420 | File and Directory Discovery |
Increase difficulty of escalating privileges, as security architecture improvements in each new version of Android and iOS make it more difficult to escalate privileges. Additionally, newer versions of Android have strengthened the sandboxing applied to applications, restricting their ability to enumerate file system contents. |
|
Mobile | T1581 | Geofencing |
New OS releases frequently contain additional limitations or controls around device location access. |
|
Mobile | T1411 | Input Prompt | ||
Mobile | T1478 | Install Insecure or Malicious Configuration |
iOS 10.3 and higher add an additional step for users to install new trusted CA certificates to make it more difficult to trick users into installing them. On Android, apps that target compatibility with Android 7 and higher (API Level 24) default to only trusting CA certificates that are bundled with the operating system, not CA certificates that are added by the user or administrator, hence decreasing their susceptibility to successful adversary-in-the-middle attack.[10][11] |
|
Mobile | T1579 | Keychain |
Newer OS releases typically patch known root exploits disclosed in previous versions. |
|
Mobile | T1461 | Lockscreen Bypass | ||
Mobile | T1403 | Modify Cached Executable Code |
For applications running on Android 10 and higher devices, application developers can indicate that DEX code should always be executed directly from the application package.[12] |
|
Mobile | T1410 | Network Traffic Capture or Redirection | ||
Mobile | T1424 | Process Discovery |
As stated in the technical description, Android 7 and above prevent applications from accessing this information. |
|
Mobile | T1422 | System Network Configuration Discovery |
Starting in Android 6.0, applications can no longer access MAC addresses of network interfaces.[13] |
|
Mobile | T1416 | URI Hijacking |
iOS 11 introduced a first-come-first-served principle for URIs, allowing only the prior installed app to be launched via the URI.[14] |