CAPECattack pattern

CAPEC-104 Cross Zone Scripting

High Official page ↗
Abstraction
Standard
Status
Draft
Likelihood of attack
Medium
Typical severity
High
CAPEC version
3.9

Description

An attacker is able to cause a victim to load content into their web-browser that bypasses security zone controls and gain access to increased privileges to execute scripting code or other web objects such as unsigned ActiveX controls or applets. This is a privilege elevation attack targeted at zone-based web-browser security.

Extended description

In a zone-based model, pages belong to one of a set of zones corresponding to the level of privilege assigned to that page. Pages in an untrusted zone would have a lesser level of access to the system and/or be restricted in the types of executable content it was allowed to invoke. In a cross-zone scripting attack, a page that should be assigned to a less privileged zone is granted the privileges of a more trusted zone. This can be accomplished by exploiting bugs in the browser, exploiting incorrect configuration in the zone controls, through a cross-site scripting attack that causes the attackers' content to be treated as coming from a more trusted page, or by leveraging some piece of system functionality that is accessible from both the trusted and less trusted zone. This attack differs from "Restful Privilege Escalation" in that the latter correlates to the inadequate securing of RESTful access methods (such as HTTP DELETE) on the server, while cross-zone scripting attacks the concept of security zones as implemented by a browser.

Execution flow

1. [Explore] [Find systems susceptible to the attack] Find systems that contain functionality that is accessed from both the internet zone and the local zone. There needs to be a way to supply input to that functionality from the internet zone and that original input needs to be used later on a page from a local zone. 2. [Experiment] [Find the insertion point for the payload] The attacker first needs to find some system functionality or possibly another weakness in the system (e.g. susceptibility to cross site scripting) that would provide the attacker with a mechanism to deliver the payload (i.e. the code to be executed) to the user. The location from which this code is executed in the user's browser needs to be within the local machine zone. 3. [Exploit] [Craft and inject the payload] Develop the payload to be executed in the higher privileged zone in the user's browser. Inject the payload and attempt to lure the victim (if possible) into executing the functionality which unleashes the payload.

Prerequisites

• The target must be using a zone-aware browser.

Skills required

• [Medium] Ability to craft malicious scripts or find them elsewhere and ability to identify functionality that is running web controls in the local zone and to find an injection vector into that functionality

Consequences

• Integrity: Modify Data • Confidentiality: Read Data • Confidentiality, Access Control, Authorization: Gain Privileges • Confidentiality, Integrity, Availability: Execute Unauthorized Commands

Mitigations

• Disable script execution. • Ensure that sufficient input validation is performed for any potentially untrusted data before it is used in any privileged context or zone • Limit the flow of untrusted data into the privileged areas of the system that run in the higher trust zone • Limit the sites that are being added to the local machine zone and restrict the privileges of the code running in that zone to the bare minimum • Ensure proper HTML output encoding before writing user supplied data to the page

Related

Child of · CAPEC (1)

  • CAPEC-233 Privilege Escalation attack pattern

Weakness · CWE (5)

  • CWE-116 Improper Encoding or Escaping of Output weakness
  • CWE-20 Improper Input Validation weakness
  • CWE-250 Execution with Unnecessary Privileges weakness
  • CWE-285 Improper Authorization weakness
  • CWE-638 Not Using Complete Mediation weakness

Referenced by CWE · attack pattern (5)

  • CWE-116 Improper Encoding or Escaping of Output weakness
  • CWE-20 Improper Input Validation weakness
  • CWE-250 Execution with Unnecessary Privileges weakness
  • CWE-285 Improper Authorization weakness
  • CWE-638 Not Using Complete Mediation weakness