Malicious applications are a common attack vector used by adversaries to gain a presence on mobile devices. Mobile devices often are configured to allow application installation only from an authorized app store (e.g., Google Play Store or Apple App Store). An adversary may seek to place a malicious application in an authorized app store, enabling the application to be installed onto targeted devices.
App stores typically require developer registration and use vetting techniques to identify malicious applications. Adversaries may use these techniques against app store defenses:
Adversaries may also seek to evade vetting by placing code in a malicious application to detect whether it is running in an app analysis environment and, if so, avoid performing malicious actions while under analysis. [1] [2] [3] [4]
Adversaries may also use fake identities, payment cards, etc., to create developer accounts to publish malicious applications to app stores. [2]
Adversaries may also use control of a target's Google account to use the Google Play Store's remote installation capability to install apps onto the Android devices associated with the Google account. [5] [6] (Only applications that are available for download through the Google Play Store can be remotely installed using this technique.)
ID | Name | Description |
---|---|---|
S0525 | Android/AdDisplay.Ashas |
Android/AdDisplay.Ashas has been identified in 42 apps in the Google Play Store.[7] |
S0422 | Anubis | |
S0432 | Bread |
Bread has been distributed through the Play Store. Some versions started off as clean to build a userbase and developer reputation. These versions were then updated to introduce malicious code.[9] |
S0555 | CHEMISTGAMES |
CHEMISTGAMES has been distributed via the Google Play Store.[10] |
S0426 | Concipit1248 |
Concipit1248 has been distributed through the App Store.[11] |
S0425 | Corona Updates |
Corona Updates has been distributed through the Play Store.[11] |
S0479 | DEFENSOR ID |
DEFENSOR ID was delivered via the Google Play Store.[12] |
S0301 | Dendroid |
Dendroid has been distributed via the Google Play Store.[13] |
S0505 | Desert Scorpion |
Desert Scorpion has been distributed via the Google Play Store.[14] |
S0420 | Dvmap |
Dvmap was delivered via the Google Play Store. It evaded Google Play Store checks by uploading a clean application, and replacing it with a malicious version for a short period of time. This occurred at least 5 times in a one month period.[15] |
S0507 | eSurv |
eSurv’s Android version was available in the Google Play Store.[16] |
S0405 | Exodus | |
S0535 | Golden Cup |
Golden Cup has been distributed via the Google Play Store.[18] |
S0485 | Mandrake |
Mandrake has had the first stage (dropper) distributed via the Google Play Store.[19] |
S0316 | Pegasus for Android |
Pegasus for Android attempts to detect whether it is running in an emulator rather than a real device.[20] |
S0419 | SimBad | |
S0424 | Triada |
Early Triada variants were delivered through trojanized apps that were distributed via the Play Store.[22] |
G0112 | Windshift |
Windshift has distributed malicious apps via the Google Play Store and Apple App Store.[23] |
S0494 | Zen | |
S0287 | ZergHelper |
ZergHelper apparently evaded Apple's app review process by performing different behaviors for users from different physical locations (e.g. performing differently for users in China versus outside of China), which could have bypassed the review process depending on the country from which it was performed.[25] |
ID | Mitigation | Description |
---|---|---|
M1005 | Application Vetting |
App store operators and enterprises could assess reputational characteristics of the app, including the popularity of the app or other apps from the same developer and whether or not security issues have been found in other apps from the same developer. |
M1011 | User Guidance |
Encourage developers to protect their account credentials and enable multi-factor authentication if available. Encourage developers to protect their signing keys. |