CWE-1298 Details

CWE-1298

Hardware Logic Contains Race Conditions
Draft
2020-08-20
00h00 +00:00
2025-12-11
00h00 +00:00
Benachrichtigungen für ein CWE
Bleiben Sie über alle Änderungen zu einem bestimmten CWE informiert.
Benachrichtigungen verwalten

Name: Hardware Logic Contains Race Conditions

A race condition in the hardware logic results in undermining security guarantees of the system.

Allgemeine Informationen

Einführungsmodi

Architecture and Design
Implementation

Anwendbare Plattformen

Sprache

Name: Verilog (Undetermined)
Name: VHDL (Undetermined)

Technologien

Class: System on Chip (Undetermined)

Häufige Konsequenzen

Bereich Auswirkung Wahrscheinlichkeit
Access ControlBypass Protection Mechanism, Gain Privileges or Assume Identity, Alter Execution Logic

Mögliche Gegenmaßnahmen

Phases : Architecture and Design
Adopting design practices that encourage designers to recognize and eliminate race conditions, such as Karnaugh maps, could result in the decrease in occurrences of race conditions.
Phases : Implementation
Logic redundancy can be implemented along security critical paths to prevent race conditions. To avoid metastability, it is a good practice in general to default to a secure state in which access is not given to untrusted agents.

Hinweise zur Schwachstellen-Zuordnung

Begründung : 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.
Kommentar : 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.

Verwandte Angriffsmuster

CAPEC-ID Name des Angriffsmusters
CAPEC-26 Leveraging Race Conditions
The adversary targets a race condition occurring when multiple processes access and manipulate the same resource concurrently, and the outcome of the execution depends on the particular order in which the access takes place. The adversary can leverage a race condition by "running the race", modifying the resource and modifying the normal execution flow. For instance, a race condition can occur while accessing a file: the adversary can trick the system by replacing the original file with their version and cause the system to read the malicious file.

Referenzen

REF-1115

FPGA designs with Verilog (section 7.4 Glitches)
Meher Krishna Patel.
https://verilogguide.readthedocs.io/en/latest/verilog/fsm.html

REF-1116

Non-Blocking Assignments in Verilog Synthesis, Coding Styles that Kill!
Clifford E. Cummings.
http://www.sunburst-design.com/papers/CummingsSNUG2000SJ_NBA.pdf

REF-1394

dma.sv
https://github.com/HACK-EVENT/hackatdac21/blob/main/piton/design/chip/tile/ariane/src/dma/dma.sv

REF-1395

Fix for dma.sv
https://github.com/HACK-EVENT/hackatdac21/blob/cwe_1298_in_dma/piton/design/chip/tile/ariane/src/dma/dma.sv

Einreichung

Name Organisation Datum Veröffentlichungsdatum Version
Arun Kanuparthi, Hareesh Khattri, Parbati Kumar Manna, Narasimha Kumar V Mangipudi Intel Corporation 2020-02-10 +00:00 2020-08-20 +00:00 4.2

Änderungen

Name Organisation Datum Kommentar
CWE Content Team MITRE 2021-07-20 +00:00 updated Related_Attack_Patterns
CWE Content Team MITRE 2023-04-27 +00:00 updated Relationships
CWE Content Team MITRE 2023-06-29 +00:00 updated Mapping_Notes
CWE Content Team MITRE 2024-02-29 +00:00 updated Demonstrative_Examples, References
CWE Content Team MITRE 2025-12-11 +00:00 updated Weakness_Ordinalities