Android

Trust boundaries in Android Intent redirection

Intents, storage, permissions, WebView and inter-app communication.

Android components1 min readEditorial methods

Launching an Intent received from another application can process external input with your application's privileges. Review this boundary explicitly in Android app protection.

Evaluation approach

Restrict target components, data schemes and accepted extras. New platform protections do not remove the need for application validation.

Application example

A document viewer should accept only expected content types and approved destinations. Reject unexpected nested Intents predictably.

Limits and considerations

Nonempty caller information is not proof of trust. Enforce checks at the actual access boundary.

What test provides useful evidence?

Compare an allowed destination with a similarly shaped input targeting another component. The control must reject the unexpected route as well as open the valid one. Check that failures do not put sensitive data in logs.

Checks and decisions

  • Define permitted targets
  • Remove unnecessary flags
  • Test invalid inputs

Sources

The primary references above provide the technical basis. Example workflows and evaluation suggestions are this publication’s explanations, not independent test results for a particular product.