2203
Warning signals that are not properly secured may be disabled or used to generate spurious
alerts, causing degraded performance or denial-of-service (DoS). These alerts may be masked by
untrusted software. Examples of these alerts involve thermal and power sensor alerts.
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr 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 may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 284 Improper Access Control 680
Applicable Platforms
Language : Not Language-Specific (Prevalence = Undetermined)
Operating_System : Not OS-Specific (Prevalence = Undetermined)
Architecture : Not Architecture-Specific (Prevalence = Undetermined)
Technology : System on Chip (Prevalence = Undetermined)
Technology : Microcontroller Hardware (Prevalence = Undetermined)
Technology : Memory Hardware (Prevalence = Undetermined)
Technology : Power Management Hardware (Prevalence = Undetermined)
Technology : Processor Hardware (Prevalence = Undetermined)
Technology : Test/Debug Hardware (Prevalence = Undetermined)
Technology : Sensor Hardware (Prevalence = Undetermined)
Common Consequences
Scope Impact Likelihood
Availability DoS: Instability
DoS: Crash, Exit, or Restart
Reduce Reliability
Unexpected State
High
Potential Mitigations
Phase: Architecture and Design
Alert signals generated by critical events should be protected from access by untrusted agents.
Only hardware or trusted firmware modules should be able to alter the alert configuration.
Demonstrative Examples
Example 1:
Consider a platform design where a Digital-Thermal Sensor (DTS) is used to monitor temperature
and compare that output against a threshold value. If the temperature output equals or exceeds the
threshold value, the DTS unit sends an alert signal to the processor.
The processor, upon getting the alert, input triggers system shutdown. The alert signal is handled
as a General-Purpose-I/O (GPIO) pin in input mode.
Example Language: (Bad)
The processor-GPIO controller exposes software-programmable controls that allow untrusted software to reprogram the
state of the GPIO pin.
CWE Version 4.14
CWE-1321: Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')
CWE-1321: Improperly Controlled Modification of
Object Prototype Attributes ('Prototype Pollution') 2204
Reprogramming the state of the GPIO pin allows malicious software to trigger spurious alerts or to
set the alert pin to a zero value so that thermal sensor alerts are not received by the processor.
Example Language: (Good)
The GPIO alert-signal pin is blocked from untrusted software access and is controlled only by trusted software, such as the
System BIOS.
MemberOf Relationships
This MemberOf relationships table shows additional CWE Catgeories 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 Page
MemberOf 1206 Power, Clock, Thermal, and Reset Concerns 1194 2473
MemberOf 1396 Comprehensive Categorization: Access Control 1400 2519
Related Attack Patterns
CAPEC-ID Attack Pattern Name
1 Accessing Functionality Not Properly Constrained by ACLs
180 Exploiting Incorrectly Configured Access Control Security Levels
CWE-1321: Improperly Controlled Modification of Object Prototype Attributes
('Prototype Pollution')
Weakness ID : 1321
Structure : Simple
Abstraction : Variant
Description
The product receives input from an upstream component that specifies attributes that are to be
initialized or updated in an object, but it does not properly control modifications of attributes of the
object prototype.
Extended Description
By adding or modifying attributes of an object prototype, it is possible to create attributes that exist
on every object, or replace critical attributes with malicious ones. This can be problematic if the
product depends on existence or non-existence of certain attributes, or uses pre-defined attributes
of object prototype (such as hasOwnProperty, toString or valueOf).
This weakness is usually exploited by using a special attribute of objects called proto, constructor
or prototype. Such attributes give access to the object prototype. This weakness is often found in
code that assigns object attributes based on user input, or merges or clones objects recursively.
Relationships
The table(s) below shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOr 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 may want to be explored.
Relevant to the view "Research Concepts" (CWE-1000)
Nature Type ID Name Page
ChildOf 915 Improperly Controlled Modification of Dynamically-
Determined Object Attributes