What is broadcast intent in android?

Abstraction: Variant
Structure: Simple
Description

The Android application uses a Broadcast Receiver that receives an Intent but does not properly verify that the Intent came from an authorized source.

Extended Description

Certain types of Intents, identified by action string, can only be broadcast by the operating system itself, not by third-party applications. However, when an application registers to receive these implicit system intents, it is also registered to receive any explicit intents. While a malicious application cannot send an implicit system intent, it can send an explicit intent to the target application, which may assume that any received intent is a valid implicit system intent and not an explicit intent from another application. This may lead to unintended behavior.

Alternate Terms
Relationships
This table shows the weaknesses and high level categories that are related to this weakness. These relationships are defined as ChildOf, ParentOf, MemberOf and give insight to similar items that may exist at higher and lower levels of abstraction. In addition, relationships such as PeerOf and CanAlsoBe are defined to show similar weaknesses that the user may want to explore.
Relevant to the view "Research Concepts" [CWE-1000]
NatureTypeIDNameChildOf
Class - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource.923Improper Restriction of Communication Channel to Intended Endpoints
Modes Of Introduction
The different Modes of Introduction provide information about how and when this weakness may be introduced. The Phase identifies a point in the life cycle at which introduction may occur, while the Note provides a typical scenario related to introduction during the given phase.PhaseNoteArchitecture and Design
Applicable Platforms
This listing shows possible areas for which the given weakness could appear. These may be for specific named Languages, Operating Systems, Architectures, Paradigms, Technologies, or a class of such platforms. The platform is listed along with how frequently the given weakness appears for that instance.

Languages

Class: Language-Independent [Undetermined Prevalence]

Technologies

Class: Mobile [Undetermined Prevalence]

Common Consequences
This table specifies different individual consequences associated with the weakness. The Scope identifies the application security area that is violated, while the Impact describes the negative technical impact that arises if an adversary succeeds in exploiting this weakness. The Likelihood provides information about how likely the specific consequence is expected to be seen relative to the other consequences in the list. For example, there may be high likelihood that a weakness will be exploited to achieve a certain impact, but a low likelihood that it will be exploited to achieve a different impact.ScopeImpactLikelihoodIntegrity

Technical Impact: Gain Privileges or Assume Identity

Another application can impersonate the operating system and cause the software to perform an unintended action.

Demonstrative Examples

Example 1

The following example demonstrates the weakness.


...


...

The ShutdownReceiver class will handle the intent:


...
IntentFilter filter = new IntentFilter[Intent.ACTION_SHUTDOWN];
BroadcastReceiver sReceiver = new ShutDownReceiver[];
registerReceiver[sReceiver, filter];
...

public class ShutdownReceiver extends BroadcastReceiver {

@Override
public void onReceive[final Context context, final Intent intent] {

mainActivity.saveLocalData[];
mainActivity.stopActivity[];

}
}

Because the method does not confirm that the intent action is the expected system intent, any received intent will trigger the shutdown procedure, as shown here:

window.location = examplescheme://method?parameter=value

An attacker can use this behavior to cause a denial of service.

Potential Mitigations

Phase: Architecture and Design

Before acting on the Intent, check the Intent Action to make sure it matches the expected System action.

Notes

Maintenance

This entry will be made more comprehensive in later CWE versions.

References
Content History
SubmissionsSubmission DateSubmitterOrganization2013-06-24CWE Content TeamMITRE

More information is available Please select a different filter.

Video liên quan

Chủ Đề