This vulnerability occurs when an Android app makes a component (like an Activity, Service, or Content Provider) available to other apps without enforcing proper security checks. This allows unintended or malicious applications to interact with the component, potentially leading to data theft, unauthorized actions, or application compromise.
When you export an Android component without restrictions, you create an open door for other apps on the device. For Activities, this can let malicious apps launch your screens to steal data, modify your app's state, or impersonate your UI to trick users. For Services, unauthorized apps can bind to and trigger functionality, potentially performing actions they shouldn't or corrupting your app's logic. Content Providers are especially risky, as versions of Android before 4.2 automatically export them unless you explicitly set them as private, which can lead to direct data leaks. To prevent this, always explicitly set the `android:exported` attribute in your AndroidManifest.xml and implement strong permission checks. Use signature-level permissions for components that should only communicate with your own apps. For Content Providers, explicitly declare them as not exported if they're for internal use only, and always apply URI permissions for temporary data sharing. Never rely on default export behaviors, as they often prioritize convenience over security.
Impact: Unexpected StateDoS: Crash, Exit, or RestartDoS: InstabilityVaries by Context
Other applications, possibly untrusted, can launch the Activity.
Impact: Unexpected StateGain Privileges or Assume IdentityDoS: Crash, Exit, or RestartDoS: InstabilityVaries by Context
Other applications, possibly untrusted, can bind to the Service.
Impact: Read Application DataModify Application Data
Other applications, possibly untrusted, can read or modify the data that is offered by the Content Provider.
Strategy: Attack Surface Reduction
Strategy: Attack Surface Reduction
Strategy: Attack Surface Reduction
Strategy: Separation of Privilege
xml
...*
xml
...*
xmlxml