2082
Scope Impact Likelihood
Confidentiality
Integrity
Read Memory
Read Application Data
Modify Memory
Modify Application Data
Gain Privileges or Assume Identity
Bypass Protection Mechanism
Unexpected State
Alter Execution Logic
Confidentiality of hardware assets may be violated if the
protected information can be read out by software through
the register interface. Registers storing security state,
settings, other security-critical data may be corruptible by
software without correctly implemented protections.
Detection Methods
Manual Analysis
This is applicable in the Architecture phase before implementation started. Make sure
access policy is specified for the entire memory map. Manual analysis may not ensure the
implementation is correct.
Effectiveness = Moderate
Manual Analysis
Registers controlling hardware should have access control implemented. This access control
may be checked manually for correct implementation. Items to check consist of how are trusted
parties set, how are trusted parties verified, how are accesses verified, etc. Effectiveness of a
manual analysis will vary depending upon how complicated the interface is constructed.
Effectiveness = Moderate
Simulation / Emulation
Functional simulation is applicable during the Implementation Phase. Testcases must be created
and executed for memory mapped registers to verify adherence to the access control policy. This
method can be effective, since functional verification needs to be performed on the design, and
verification for this weakness will be included. There can be difficulty covering the entire memory
space during the test.
Effectiveness = Moderate
Formal Verification
Formal verification is applicable during the Implementation phase. Assertions need to be created
in order to capture illegal register access scenarios and prove that they cannot occur. Formal
methods are exhaustive and can be very effective, but creating the cases for large designs may
be complex and difficult.
Effectiveness = High
Automated Analysis
Information flow tracking can be applicable during the Implementation phase. Security sensitive
data (assets) - for example, as stored in registers - is automatically tracked over time through
the design to verify the data doesn't reach illegal destinations that violate the access policies
for the memory map. This method can be very effective when used together with simulation
and emulation, since detecting violations doesn't rely on specific scenarios or data values. This
method does rely on simulation and emulation, so testcases must exist in order to use this
method.
Effectiveness = High
CWE Version 4.14
CWE-1262: Improper Access Control for Register Interface
CWE-1262: Improper Access Control for Register Interface