ID | Name |
---|---|
T1417.001 | Keylogging |
T1417.002 | GUI Input Capture |
Adversaries may mimic common operating system GUI components to prompt users for sensitive information with a seemingly legitimate prompt. The operating system and installed applications often have legitimate needs to prompt the user for sensitive information such as account credentials, bank account information, or Personally Identifiable Information (PII). Compared to traditional PCs, the constrained display size of mobile devices may impair the ability to provide users with contextual information, making users more susceptible to this technique’s use.[1]
There are several approaches adversaries may use to mimic this functionality. Adversaries may impersonate the identity of a legitimate application (e.g. use the same application name and/or icon) and, when installed on the device, may prompt the user for sensitive information.[2] Adversaries may also send fake device notifications to the user that may trigger the display of an input prompt when clicked.[3]
Additionally, adversaries may display a prompt on top of a running, legitimate application to trick users into entering sensitive information into a malicious application rather than the legitimate application. Typically, adversaries need to know when the targeted application and the individual activity within the targeted application is running in the foreground to display the prompt at the proper time. Adversaries can abuse Android’s accessibility features to determine which application is currently in the foreground.[4] Two known approaches to displaying a prompt include:
SYSTEM_ALERT_WINDOW
permission to create overlay windows. This permission is handled differently than typical Android permissions and, at least under certain conditions, is automatically granted to applications installed from the Google Play Store.[7][8][9] The SYSTEM_ALERT_WINDOW
permission and its associated ability to create application overlay windows are expected to be deprecated in a future release of Android in favor of a new API.[10]ID | Name | Description |
---|---|---|
S0422 | Anubis |
Anubis can create overlays to capture user credentials for targeted applications.[11] |
S1094 | BRATA |
BRATA can use tailored overlay pages to steal PINs for banking applications.[12] |
S0480 | Cerberus |
Cerberus can generate fake notifications and launch overlay attacks against attacker-specified applications.[13] |
S1083 | Chameleon |
Chameleon can perform overlay attacks against a device by injecting HTML phishing pages into a webview.[14] |
S0301 | Dendroid |
Dendroid can open a dialog box to ask the user for passwords.[15] |
S1054 | Drinik |
Drinik can use overlays to steal user banking credentials entered into legitimate sites.[16] |
S1092 | Escobar |
Escobar can collect credentials using phishing overlays.[17] |
S0478 | EventBot | |
S0522 | Exobot |
Exobot can show phishing popups when a targeted application is running.[19] |
S1103 | FlixOnline |
FlixOnline requests overlay permissions, which can allow it to create fake Login screens for other apps.[20] |
S1067 | FluBot |
FluBot can add display overlays onto banking apps to capture credit card information.[21] |
S1093 | FlyTrap |
FlyTrap has used infected applications with Facebook login prompts to steal credentials.[22] |
S0423 | Ginp |
Ginp can use a multi-step phishing overlay to capture banking credentials and then credit card numbers after login.[23] |
S0536 | GPlayed |
GPlayed can show a phishing WebView pretending to be a Google service that collects credit card information.[24] |
S0406 | Gustuff |
Gustuff uses WebView overlays to prompt the user for their device unlock code, as well as banking and cryptocurrency application credentials. Gustuff can also send push notifications pretending to be from a bank, triggering a phishing overlay.[25][3] |
S0485 | Mandrake |
Mandrake can manipulate visual components to trick the user into granting dangerous permissions, and can use phishing overlays and JavaScript injection to capture credentials.[26] |
S0399 | Pallas |
Pallas uses phishing popups to harvest user credentials.[27] |
S0539 | Red Alert 2.0 |
Red Alert 2.0 has used malicious overlays to collect banking credentials.[28] |
S0403 | Riltok |
Riltok can open a fake Google Play screen requesting bank card credentials and mimic the screen of relevant mobile banking apps to request user/bank card details.[29] |
S0411 | Rotexy |
Rotexy can use phishing overlays to capture users' credit card information.[30] |
S1062 | S.O.V.A. |
S.O.V.A. can use overlays capture banking credentials and credit card information, and can open arbitrary WebViews from the C2.[31] |
S1055 | SharkBot |
SharkBot can use a WebView with a fake log in site to capture banking credentials.[32] |
S1069 | TangleBot |
TangleBot can use overlays to cover legitimate applications or screens.[33] |
S0545 | TERRACOTTA |
TERRACOTTA has displayed a form to collect user data after installation.[34] |
S1056 | TianySpy |
TianySpy can utilize WebViews to display fake authentication pages that capture user credentials.[35] |
S0558 | Tiktok Pro |
Tiktok Pro can launch a fake Facebook login page.[36] |
S0298 | Xbot |
Xbot uses phishing pages mimicking Google Play's payment interface as well as bank login pages.[37] |
S0297 | XcodeGhost |
XcodeGhost can prompt a fake alert dialog to phish user credentials.[38] |
ID | Mitigation | Description |
---|---|---|
M1012 | Enterprise Policy |
An EMM/MDM can use the Android |
M1006 | Use Recent OS Version |
The |
ID | Data Source | Data Component | Detects |
---|---|---|---|
DS0041 | Application Vetting | Permissions Requests |
Application vetting services can look for applications requesting the |
DS0042 | User Interface | System Settings |
An Android user can view and manage which applications hold the |