1 vulnerabilities classified as CWE-1224. AI Chinese analysis included.
CWE-1224 represents a critical hardware design flaw where write-once bit fields, often referred to as sticky bits in control registers, are improperly implemented to allow reprogramming by software. These bits are intended to be set once during initialization to define permanent hardware configurations or security states, yet the weakness permits subsequent modifications. Attackers typically exploit this vulnerability by manipulating these registers to alter critical system settings, bypass security mechanisms, or destabilize the hardware operation after initial configuration. To prevent this, developers must ensure that hardware logic strictly enforces immutability for designated write-once fields, preventing any software write attempts after the initial setup phase. Rigorous verification of register access controls and thorough testing of hardware reset behaviors are essential to maintain the integrity of these permanent configuration bits.
module register_write_once_example ( input [15:0] Data_in, input Clk, input ip_resetn, input global_resetn, input write, output reg [15:0] Data_out ); reg Write_once_status; always @(posedge Clk or negedge ip_resetn) if (~ip_resetn) begin Data_out <= 16'h0000; Write_once_status <= 1'b0; end else if (write & ~Write_once_status) begin Data_out <= Data_in & 16'hFFFE; Write_once_status <= Data_in[0]; // Input bit 0 sets Write_once_status end else if (~write) begin Data_out[15:1] <= Data_out[15:1]; Data_out[0] <= Write_once_status; end endmodulemodule register_write_once_example ( input [15:0] Data_in, input Clk, input ip_resetn, input global_resetn, input write, output reg [15:0] Data_out ); reg Write_once_status; always @(posedge Clk or negedge ip_resetn) if (~ip_resetn) begin Data_out <= 16'h0000; Write_once_status <= 1'b0; end else if (write & ~Write_once_status) begin Data_out <= Data_in & 16'hFFFE; Write_once_status <= 1'b1; // Write once status set on first write, independent of input end else if (~write) begin Data_out[15:1] <= Data_out[15:1]; Data_out[0] <= Write_once_status; end endmodule| CVE ID | Title | CVSS | Severity | Published |
|---|---|---|---|---|
| CVE-2022-23005 | Host Boot ROM Code Vulnerability in Systems Implementing UFS Boot Feature — NA | 8.7 | High | 2023-01-23 |
Vulnerabilities classified as CWE-1224 represent 1 CVEs. The CWE taxonomy describes the weakness; review individual CVEs for product-specific impact.