CWE-1431
Driving Intermediate Cryptographic State/Results to Hardware Module Outputs
The product uses a hardware module implementing a cryptographic algorithm that writes sensitive information about the intermediate state or results of its cryptographic operations via one of its output wires (typically the output port containing the final result).
Abstraction
Base
Structure
Simple
Likelihood of Exploit
Medium
Understand the problem
What is the problem?
Root cause
How and when does the problem arise?
Lifecycle phase
Implementation
Risk
What does successful exploitation lead to?
Affected security scopes: Confidentiality
Defence
How is it prevented and fixed?
Architecture and Design
Architecture and design approach
Detail
Architecture and Design
Architecture and design approach
Effectiveness: High
Implementation
Implementation-phase defence
Detail
Implementation
Implementation-phase defence
Effectiveness: High
Verification
How is it detected?
Automated Static Analysis - Source Code
HighStatic code analysis can sometimes lead to false positives.
Simulation / Emulation
HighSimulation/emulation based analysis can sometimes lead to false negatives if the testbench does not drive the design to a design state in which the assertion would fail.
Formal Verification
HighFormal verification may not scale for RTL designs with a large state space.
Manual Analysis
OpportunisticManual analysis of source code is prone to errors (false positives and false negatives) and highly opportunistic.