Name |
XML Routing Detour Attacks |
|
Likelyhood of attack |
Typical severity |
High |
Medium |
|
Summary |
An attacker subverts an intermediate system used to process XML content and forces the intermediate to modify and/or re-route the processing of the content. XML Routing Detour Attacks are Man in the Middle type attacks. The attacker compromises or inserts an intermediate system in the processing of the XML message. For example, WS-Routing can be used to specify a series of nodes or intermediaries through which content is passed. If any of the intermediate nodes in this route are compromised by an attacker they could be used for a routing detour attack. From the compromised system the attacker is able to route the XML process to other nodes of their choice and modify the responses so that the normal chain of processing is unaware of the interception. This system can forward the message to an outside entity and hide the forwarding and processing from the legitimate processing systems by altering the header information. |
Prerequisites |
The targeted system must have multiple stages processing of XML content. |
Execution Flow |
Step |
Phase |
Description |
Techniques |
1 |
Explore |
[Survey the target] Using command line or an automated tool, an attacker records all instances of web services to process XML requests. |
- Use automated tool to record all instances to process XML requests or find exposed WSDL.
- Use tools to crawl WSDL
|
2 |
Experiment |
[Identify SOAP messages that have multiple state processing.] Inspect instance to see whether the XML processing has multiple stages or not. |
- Inspect the SOAP message routing head to see whether the XML processing has multiple stages or not.
|
3 |
Exploit |
[Launch an XML routing detour attack] The attacker injects a bogus routing node (using a WS-Referral service) into the routing table of the XML header of the SOAP message identified in the Explore phase. Thus, the attacker can route the XML message to the attacker controlled node (and access the message contents). |
- The attacker injects a bogus routing node (using a WS-Referral service) into the routing table of the XML header of the SOAP message
|
|
Solutions | Design: Specify maximum number intermediate nodes for the request and require SSL connections with mutual authentication. Implementation: Use SSL for connections between all parties with mutual authentication. |
Related Weaknesses |
CWE ID
|
Description
|
CWE-441 |
Unintended Proxy or Intermediary ('Confused Deputy') |
CWE-610 |
Externally Controlled Reference to a Resource in Another Sphere |
|
Related CAPECS |
CAPEC ID
|
Description
|
CAPEC-94 |
This type of attack targets the communication between two components (typically client and server). The attacker places themself in the communication channel between the two components. Whenever one component attempts to communicate with the other (data flow, authentication challenges, etc.), the data first goes to the attacker, who has the opportunity to observe or alter it, and it is then passed on to the other component as if it was never observed. This interposition is transparent leaving the two compromised components unaware of the potential corruption or leakage of their communications. The potential for Man-in-the-Middle attacks yields an implicit lack of trust in communication or identify between two components. MITM attacks differ from sniffing attacks since they often modify the communications prior to delivering it to the intended recipient. These attacks also differ from interception attacks since they may forward the sender's original unmodified data, after copying it, instead of keeping it for themselves. |
|
Taxonomy: WASC |
Entry ID
|
Entry Name
|
32 |
Routing Detour |
44 |
XML Entity Expansion |
|