CWE

Common Weakness Enumeration

Celebrating 20 years of community-developed cybersecurity weakness knowledge!

New to CWE? click here!
CWE Most Important Hardware Weaknesses
CWE Top 25 Most Dangerous Weaknesses
Home > CWE List > CWE-1268: Policy Privileges are not Assigned Consistently Between Control and Data Agents (5.0)  
ID

CWE-1268: Policy Privileges are not Assigned Consistently Between Control and Data Agents

Weakness ID: 1268
Vulnerability Mapping: ALLOWED This CWE ID may be used to map to real-world vulnerabilities
Abstraction: Base Base - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource.
View customized information:
Shows the description and diagram, platforms, mitigations, consequences, relationships, memberships, and content history. For users who are interested in more notional aspects of a weakness. Example: educators, technical writers, and project/program managers. For users who are concerned with the practical application and details about the nature of a weakness and how to prevent it from happening. Example: tool developers, security researchers, pen-testers, incident response analysts. For users who are mapping an issue to CWE/CAPEC IDs, i.e., finding the most appropriate CWE for a specific issue (e.g., a CVE record). Example: tool developers, security researchers. For users who wish to see all available information for the CWE/CAPEC entry. For users who want to customize what details are displayed.
×

Edit Custom Filter


+ Description
The product's hardware-enforced access control for a particular resource improperly accounts for privilege discrepancies between control and write policies.
+ Common Consequences
Section HelpThis 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.
Impact Details

Modify Memory; Read Memory; DoS: Crash, Exit, or Restart; Execute Unauthorized Code or Commands; Gain Privileges or Assume Identity; Bypass Protection Mechanism; Read Files or Directories; Reduce Reliability

Scope: Confidentiality, Integrity, Availability, Access Control

Likelihood: High

Resources that include agents in their control policy but not in their write policy could unintentionally allow an untrusted agent to insert itself in the write policy register. Inclusion in the write policy register could allow a malicious or misbehaving agent write access to resources. This action could result in security compromises including leaked information, leaked encryption keys, or modification of device configuration.

+ Potential Mitigations
Phase(s) Mitigation

Architecture and Design; Implementation

Access-control-policy definition and programming flow must be sufficiently tested in pre-silicon and post-silicon testing.
+ Relationships
Section Help 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, Overlaps, and CanAlsoBe are defined to show similar weaknesses that the user may want to explore.
+ Relevant to the view "Complete Weakness Hierarchy" (View-1000)
Nature Type ID Name
ChildOf Base Base - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. 266 Incorrect Privilege Assignment
+ Relevant to the view "Hardware Design" (View-1194)
Nature Type ID Name
MemberOf Grouping Grouping - a CWE entry that contains a set of other entries that share a common characteristic. 1198 Privilege Separation and Access Control Issues
+ Background Details

Integrated circuits and hardware engines may provide access to resources (device-configuration, encryption keys, etc.) belonging to trusted firmware or software modules (commonly set by a BIOS or a bootloader). These accesses are typically controlled and limited by the hardware.

Hardware design access control is sometimes implemented using a policy. A policy defines which entity or agent may or may not be allowed to perform an action. When a system implements multiple levels of policies, a control policy may allow direct access to a resource as well as changes to the policies themselves.

+ Modes Of Introduction
Section HelpThe 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.
Phase(s) Note

Architecture and Design

This weakness may be introduced during the design of a device when the architect does not comprehensively specify all of the policies required by an agent.

Implementation

This weakness may be introduced during implementation if device policy restrictions do not sufficiently constrain less-privileged clients.
+ Applicable Platforms
Section HelpThis 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.
Type Applicable Platforms Notes
Languages

Class: Not Language-Specific (Undetermined Prevalence)

Operating Systems

Class: Not OS-Specific (Undetermined Prevalence)

Architectures

Class: Not Architecture-Specific (Undetermined Prevalence)

Technologies

Class: Not Technology-Specific (Undetermined Prevalence)

+ Demonstrative Examples

Example 1


Consider a product that stores a 128-bit AES key in four 32-bit registers, collectively called the AES key registers.

Three additional 32-bit registers are used to define the hardware enforced access control for the AES key registers. Collectively these registers are referred to as the AES Policy registers, and their functions are explained in the following table:

(informative)
 
AES Policy Registers
Register Permission granted
AES_KEY_CONTROL_POLICY Defines which agents can write to both AES_KEY_READ_POLICY and AES_KEY_WRITE_POLICY registers.
AES_KEY_READ_POLICY Defines which agents can read the AES key registers.
AES_KEY_WRITE_POLICY Defines which agents can write the AES key registers.

Each AES policy register uses one bit per agent to specify whether that agent has the permission defined by the register. Bit 0 corresponds to Agent 0, bit 1 to Agent 1, and so on. A value of 1 grants permission; 0 denies it. For example, setting bit 0 of AES_KEY_READ_POLICY to 1 allows Agent 0 to read the AES key registers.

The following initial configuration for the AES policy registers illustrates these permissions for four agents, numbered 0 through 3. The table shows only bits 3 through 0, with bit 0 on the right. All higher bits are 0.

(bad code)
Example Language: Other 
Register Initial value (hexadecimal) Bits 3 2 1 0 (binary) Agents granted permission
AES_KEY_READ_POLICY 0x00000001 0001b Agent 0
AES_KEY_WRITE_POLICY 0x00000002 0010b Agent 1
AES_KEY_CONTROL_POLICY 0x0000000C 1100b Agents 2 and 3

Agents 0, 1, and 3 are trusted. Agent 2 is untrusted and should not have access to the AES key or its access policies. The initial values of the three AES policy registers shown above result in the permissions summarized below.

(informative)
 
Agent Read AES key Write AES key Modify AES key access policies
Agent 0 Allowed Not Allowed Not Allowed
Agent 1 Not Allowed Allowed Not Allowed
Agent 2 (untrusted) Not Allowed Not Allowed Allowed
Agent 3 Not Allowed Not Allowed Allowed

The initial configuration denies untrusted Agent 2 direct access to the AES key but allows it to modify the policies that enforce this restriction.

For example, Agent 2 can change AES_KEY_WRITE_POLICY from its initial value of 0x00000002 (0010b) to 0x00000006 (0110b). This sets bit 2 while preserving bit 1, granting Agent 2 write access to the AES key registers while retaining Agent 1’s write access.

To prevent this, grant permission to modify the access policies only to agents trusted to manage access to the key. Setting the initial value of AES_KEY_CONTROL_POLICY to 0x00000008 (1000b) allows only trusted Agent 3 to write to AES_KEY_READ_POLICY and AES_KEY_WRITE_POLICY. Untrusted Agent 2 can no longer modify either policy to grant itself access to the AES key registers. The initial policy register values should therefore be as follows:

(good code)
Example Language: Other 
Register Initial value (hexadecimal) Bits 3 2 1 0 (binary) Agents granted permission
AES_KEY_READ_POLICY 0x00000001 0001b Agent 0
AES_KEY_WRITE_POLICY 0x00000002 0010b Agent 1
AES_KEY_CONTROL_POLICY 0x00000008 1000b Agent 3


+ Weakness Ordinalities
Ordinality Description
Primary
(where the weakness exists independent of other weaknesses)
+ Memberships
Section HelpThis MemberOf Relationships table shows additional CWE Categories and Views that reference this weakness as a member. This information is often useful in understanding where a weakness fits within the context of external information sources.
Nature Type ID Name
MemberOf GroupingGrouping - a CWE entry that contains a set of other entries that share a common characteristic. 1396 Comprehensive Categorization: Access Control
+ Vulnerability Mapping Notes
Usage ALLOWED
(this CWE ID may be used to map to real-world vulnerabilities)
Reason Acceptable-Use

Rationale

This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.

Comments

Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.
+ Notes

Maintenance

This entry is still under development and will continue to see updates and content improvements.
+ Content History
+ Submissions
Submission Date Submitter Organization
2020-02-12
(CWE 4.1, 2020-02-24)
Arun Kanuparthi, Hareesh Khattri, Parbati Kumar Manna, Narasimha Kumar V Mangipudi Intel Corporation
+ Contributions
Contribution Date Contributor Organization
2025-10-09
(CWE 4.20, 2026-04-30)
Jagadish Nayak Cycuity
Reported an incorrect value for Agent 3 in the demonstrative example, and suggested an alternative.
+ Modifications
Modification Date Modifier Organization
2026-10-28
(CWE 5.0, 2026-10-28)
CWE Content Team MITRE
updated Background_Details, Common_Consequences, Demonstrative_Examples, Description
2026-04-30
(CWE 4.20, 2026-04-30)
CWE Content Team MITRE
updated Demonstrative_Examples
2025-12-11
(CWE 4.19, 2025-12-11)
CWE Content Team MITRE
updated Demonstrative_Examples, Relationships, Weakness_Ordinalities
2023-06-29
(CWE 4.12, 2023-06-29)
CWE Content Team MITRE
updated Mapping_Notes
2023-04-27
(CWE 4.11, 2023-04-27)
CWE Content Team MITRE
updated Relationships
2023-01-31
(CWE 4.10, 2023-01-31)
CWE Content Team MITRE
updated Demonstrative_Examples
2022-10-13
(CWE 4.9, 2022-10-13)
CWE Content Team MITRE
updated Demonstrative_Examples
2022-04-28
(CWE 4.7, 2022-04-28)
CWE Content Team MITRE
updated Related_Attack_Patterns
2021-10-28
(CWE 4.6, 2021-10-28)
CWE Content Team MITRE
updated Potential_Mitigations
2020-08-20
(CWE 4.2, 2020-08-20)
CWE Content Team MITRE
updated Demonstrative_Examples, Description, Modes_of_Introduction, Name, Potential_Mitigations, Related_Attack_Patterns
+ Previous Entry Names
Change Date Previous Entry Name
2020-08-20 Agents Included in Control Policy are not Contained in Less-Privileged Policy
Page Last Updated: Oct 28, 2026