Untrusted WebView content reaches a native bridge
A page or frame controlled outside the trusted app origin can invoke native capabilities through a shipped WebView bridge.
Candidate CWE: CWE-749
Test hypothesis#
Load a harmless owned page via a supported navigation/import feature; exercise one exposed method against a seeded lab resource and compare a trusted-origin control.
Evidence required#
Real content entry path, origin/frame, bridge name, reachable method, native operation and actual caller permissions.
Rule out false positives#
A bridge declaration, JavaScript execution alone, or developer-injected code is insufficient. Prove both the untrusted entry and native effect.
Playbook and command references#
- Android components, intents and deep links — Trace ordinary-app inputs through exported components, URI grants and links to one protected operation.
- iOS signing capabilities, links and protected data — Connect entitlements and application groups to actual callers, URL transitions and protected key use.
- Browser execution, cross-origin reads, and forged actions — Use real browser behavior to distinguish XSS, CSRF, CORS, and messaging failures from header-only leads.
Find the associated command snippets
Referenced by these target playbooks#
Report checklist#
- Capture the affected version, configuration, identities, and object ownership.
- Preserve a valid baseline and a negative control.
- Reproduce the forbidden data access, action, or state change on controlled fixtures.
- Explain the intended security rule and why the observed behavior violates it.
- State prerequisites, uncertainty, cleanup, and the smallest demonstrated impact.
Conditional ATT&CK mapping#
No direct ATT&CK mapping selected. Record the weakness and demonstrated impact without forcing an adversary-behavior classification. See the mapping guide.