Skip to content

Commit 564a092

Browse files
authored
Merge pull request #2303 from 10-trix/add-mobile-card-AA8-description
Add description for mobile app card AA8 contributes to #2108
2 parents de247dc + 9be86dd commit 564a092

1 file changed

Lines changed: 24 additions & 1 deletion

File tree

  • cornucopia.owasp.org/data/cards/mobileapp-cards-1.1-en/authentication-&-authorization/AA8
Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,34 @@
11
## Scenario: Pramod can intercept credentials through misdirection because the app is vulnerable to attacks like Tapjacking, StrandHogg and/or URL scheme hijacking
22

3+
Pramod notices that Ade’s mobile application does not properly validate exported activities or incoming intents. The app allows deep links for authentication flows but fails to verify their origin.
4+
5+
By launching a tapjacking overlay, Pramod places a transparent malicious layer over Ade’s login screen. The user believes they are interacting with the legitimate application, but their credentials are actually being captured by Pramod’s hidden interface.
6+
7+
In another scenario, Pramod exploits StrandHogg by registering a malicious activity that mimics Ade’s login page. When the victim enters their username and password, the credentials are intercepted before the user is redirected back to the real app to avoid suspicion.
8+
9+
If URL schemes are not properly validated, Pramod can also hijack authentication callbacks and intercept sensitive tokens during redirection flows.
10+
311
### Example
412

13+
Ade proudly launches a new feature that allows users to log in through a deep link received via email. Unfortunately, she forgets to validate which application handles the callback. Pramod registers the same URL scheme on his malicious app. When the user completes authentication, the token is sent directly to Pramod instead of Ade’s app. The login appears successful, but the attacker now has full access to the user’s account.
14+
515
## Threat Modeling
616

717
### STRIDE
818

19+
This scenario falls under the **Spoofing** category in the STRIDE threat modeling framework.
20+
21+
Pramod impersonates a trusted application interface or authentication handler to trick users into submitting credentials or tokens. The system fails to verify the authenticity of the interacting application, allowing the attacker to act as a legitimate entity.
22+
923
### What can go wrong?
1024

11-
### What are we going to do about it?
25+
If activity hijacking, tapjacking overlays, or unvalidated deep links are allowed, attackers may intercept authentication credentials or tokens. This can lead to account compromise, session hijacking, and unauthorized access to sensitive information.
26+
27+
### What are we going to do about it?
28+
29+
- Disable or strictly control exported activities unless absolutely required.
30+
- Validate the origin and integrity of incoming intents and deep links.
31+
- Use protections against overlay attacks such as secure window flags.
32+
- Implement tapjacking detection mechanisms.
33+
- Enforce strict validation of URL schemes and authentication callbacks.
34+
- Follow OWASP MASVS guidance for secure authentication and intent handling.

0 commit comments

Comments
 (0)