CAPEC-182: Flash Injection |
Description An attacker tricks a victim to execute malicious flash content that executes commands or makes flash calls specified by the attacker. One example of this attack is cross-site flashing, an attacker controlled parameter to a reference call loads from content specified by the attacker. Likelihood Of Attack Typical Severity Execution Flow Explore Find Injection Entry Points: The attacker first takes an inventory of the entry points of the application. | Techniques |
|---|
| Spider the website for all available URLs that reference a Flash application. | | List all uninitialized global variables (such as _root.*, _global.*, _level0.*) in ActionScript, registered global variables in included files, load variables to external movies. |
Experiment Determine the application's susceptibility to Flash injection: Determine the application's susceptibility to Flash injection. For each URL identified in the explore phase, the attacker attempts to use various techniques such as direct load asfunction, controlled evil page/host, Flash HTML injection, and DOM injection to determine whether the application is susceptible to Flash injection. | Techniques |
|---|
| Test the page using direct load asfunction, getURL,javascript:gotRoot("")///d.jpg | | Test the page using controlled evil page/host, http://example.com/evil.swf | | Test the page using Flash HTML injection, "'><img src='asfunction:getURL,javascript:gotRoot("")//.jpg' > | | Test the page using DOM injection, (gotRoot('')) |
Exploit Inject malicious content into target: Inject malicious content into target utilizing vulnerable injection vectors identified in the Experiment phase
Prerequisites
| The target must be capable of running Flash applications. In some cases, the victim must follow an attacker-supplied link. |
Skills Required
[Level: Medium] The attacker needs to have knowledge of Flash, especially how to insert content the executes commands. |
Resources Required
| None: No specialized resources are required to execute this type of attack. The attacker may need to be able to serve the injected Flash content. |
Consequences This table specifies different individual consequences associated with the attack pattern. The Scope identifies the security property that is violated, while the Impact describes the negative technical impact that arises if an adversary succeeds in their attack. 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 pattern will be used to achieve a certain impact, but a low likelihood that it will be exploited to achieve a different impact.| Scope | Impact | Likelihood |
|---|
Confidentiality | Other | | Integrity | Modify Data | | Confidentiality | Read Data | | Authorization | Execute Unauthorized Commands | | Accountability Authentication Authorization Non-Repudiation | Gain Privileges | | Access Control Authorization | Bypass Protection Mechanism | |
Mitigations
| Implementation: remove sensitive information such as user name and password in the SWF file. |
| Implementation: use validation on both client and server side. |
| Implementation: remove debug information. |
| Implementation: use SSL when loading external data |
| Implementation: use crossdomain.xml file to allow the application domain to load stuff or the SWF file called by other domain. |
Example Instances
In the following example, the SWF file contains getURL('javascript:SomeFunc("someValue")','','GET') A request like http://example.com/noundef.swf?a=0:0;alert('XSS') becomes javascript:SomeFunc("someValue")?a=0:0;alert(123) |
References
[REF-46] Stefano Di Paola. "Finding Vulnerabilities in Flash Applications". OWASP Appsec 2007. 2007-11-15.
|
|
|
Content History | Submissions |
|---|
| Submission Date | Submitter | Organization |
|---|
| 2014-06-23 (Version 2.6) | CAPEC Content Team | The MITRE Corporation | | | Modifications |
|---|
| Modification Date | Modifier | Organization |
|---|
| 2017-05-01 (Version 2.10) | CAPEC Content Team | The MITRE Corporation | | Updated Related_Attack_Patterns | | 2017-08-04 (Version 2.11) | CAPEC Content Team | The MITRE Corporation | | Updated Resources_Required | | 2018-07-31 (Version 2.12) | CAPEC Content Team | The MITRE Corporation | | Updated Attacker_Skills_or_Knowledge_Required | | 2019-04-04 (Version 3.1) | CAPEC Content Team | The MITRE Corporation | | Updated Consequences | | 2022-09-29 (Version 3.8) | CAPEC Content Team | The MITRE Corporation | | Updated Example_Instances |
More information is available — Please select a different filter.
|