Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Adversaries may mimic common operating system GUI components to prompt users for sensitive information with a seemingly legitimate prompt.
.claude/skills/cyberstrikeus-t1417-002-gui-input-capture/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 6% | 0% |
| case-02 | ✗→✓ | ▲ Improved | 37% | 0% |
| case-11 | ✗→✓ | ▲ Improved | 23% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 53% | 0% |
| case-21 | ✗→✓ | ▲ Improved | -5% | 0% |
> Sub-technique of: T1417
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.
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. Adversaries may also send fake device notifications to the user that may trigger the display of an input prompt when clicked.
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. 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. 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.Platforms: Android, iOS
Determine if the target mobile environment is susceptible to GUI Input Capture by examining the target platforms (Android, iOS).
Review whether mitigations for T1417.002 are in place. If defenses are absent or misconfigured, this technique may be exploitable.
The HIDE_OVERLAY_WINDOWS permission was introduced in Android 12 allowing apps to hide overlay windows of type TYPE_APPLICATION_OVERLAY drawn by other apps with the SYSTEM_ALERT_WINDOW permission, preventing other applications from creating overlay windows on top of the current application.
An EMM/MDM can use the Android DevicePolicyManager.setPermittedAccessibilityServices method to set an explicit list of applications that are allowed to use Android's accessibility features.
| Finding | Severity | Impact | | -------------------------------------- | -------- | ----------------- | | GUI Input Capture technique applicable | High | Credential Access |
| CWE ID | Title | | ------- | ------------------------------------ | | CWE-522 | Insufficiently Protected Credentials |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 39,608 | 27,883 | -30% | 1 | 1 | 0% | 4,816 | 5,116 | +6% | 0 | 0 | — |
case-02 | fail→pass | 34,047 | 35,822 | +5% | 1 | 1 | 0% | 4,766 | 6,530 | +37% | 0 | 0 | — |
case-03 | pass→pass | 27,305 | 27,163 | -1% | 1 | 1 | 0% | 2,976 | 4,737 | +59% | 0 | 0 | — |
case-04 | pass→pass | 27,560 | 47,106 | +71% | 1 | 1 | 0% | 2,993 | 4,825 | +61% | 0 | 0 | — |
case-05 | pass→fail | 23,871 | 21,881 | -8% | 1 | 1 | 0% | 2,911 | 4,841 | +66% | 0 | 0 | — |
case-06 | pass→pass | 16,163 | 13,821 | -14% | 1 | 1 | 0% | 1,959 | 2,973 | +52% | 0 | 0 | — |
case-07 | fail→fail | 25,452 | 17,967 | -29% | 1 | 1 | 0% | 1,192 | 2,103 | +76% | 0 | 0 | — |
case-08 | fail→fail | 6,654 | 25,904 | +289% | 1 | 1 | 0% | 859 | 1,806 | +110% | 0 | 0 | — |
case-09 | pass→pass | 14,307 | 16,513 | +15% | 1 | 1 | 0% | 1,208 | 2,756 | +128% | 0 | 0 | — |
case-10 | pass→pass | 14,104 | 16,021 | +14% | 1 | 1 | 0% | 1,527 | 1,741 | +14% | 0 | 0 | — |
case-11 | fail→pass | 14,330 | 7,620 | -47% | 1 | 1 | 0% | 1,345 | 1,659 | +23% | 0 | 0 | — |
case-12 | pass→pass | 21,515 | 16,701 | -22% | 1 | 1 | 0% | 2,366 | 3,503 | +48% | 0 | 0 | — |
case-13 | pass→pass | 19,375 | 3,058 | -84% | 1 | 1 | 0% | 2,254 | 1,672 | -26% | 0 | 0 | — |
case-14 | pass→pass | 12,099 | 9,068 | -25% | 1 | 1 | 0% | 970 | 1,603 | +65% | 0 | 0 | — |
case-15 | pass→pass | 22,065 | 7,965 | -64% | 1 | 1 | 0% | 2,506 | 1,840 | -27% | 0 | 0 | — |
case-16 | pass→pass | 17,478 | 23,754 | +36% | 1 | 1 | 0% | 2,292 | 3,690 | +61% | 0 | 0 | — |
case-17 | pass→pass | 22,473 | 20,893 | -7% | 1 | 1 | 0% | 2,292 | 3,363 | +47% | 0 | 0 | — |
case-18 | fail→pass | 13,714 | 8,637 | -37% | 1 | 1 | 0% | 1,155 | 1,770 | +53% | 0 | 0 | — |
case-19 | pass→pass | 25,763 | 27,160 | +5% | 1 | 1 | 0% | 2,672 | 4,404 | +65% | 0 | 0 | — |
case-20 | pass→pass | 25,607 | 23,718 | -7% | 1 | 1 | 0% | 2,842 | 3,965 | +40% | 0 | 0 | — |
case-21 | fail→pass | 18,055 | 7,889 | -56% | 1 | 1 | 0% | 1,724 | 1,630 | -5% | 0 | 0 | — |
case-22 | pass→pass | 12,347 | 11,615 | -6% | 1 | 1 | 0% | 1,665 | 1,995 | +20% | 0 | 0 | — |
case-23 | pass→pass | 8,936 | 9,133 | +2% | 1 | 1 | 0% | 1,213 | 2,056 | +69% | 0 | 0 | — |
case-24 | fail→pass | 21,724 | 8,294 | -62% | 1 | 1 | 0% | 2,440 | 1,750 | -28% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 24 cases were attempted. The headline lift of +21 percentage points is the difference between those two pass rates over the 24 comparable cases. 1 case got worse with the skill loaded, and it is included in that figure.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.