Content-provider permission or URI-grant escape
A recipient obtains data or file capabilities beyond the URI and permissions deliberately shared with it.
Candidate CWE: CWE-926 · CWE-863
Test hypothesis#
Seed two records. Grant an ordinary test app access to one, then request the other and repeat after the grant is revoked. Use only known synthetic URIs.
Evidence required#
Provider authority, URI, caller permissions, exact grant flags/lifecycle and the second record or unintended write capability.
Rule out false positives#
Intentionally shared resources and requests denied by the provider are expected. Root access to provider storage is a different model.
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.
- Uploads, downloads, paths, archives, and XML — Follow a file through acceptance, storage, processing, publication, and retrieval while preserving ownership and path boundaries.
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.