Missing Security Identifier
CWE-1302
Short description
Extended description
In a System-On-Chip (SoC), various integrated circuits and hardware engines generate transactions such as to access (reads/writes) assets or perform certain actions (e.g., reset, fetch, compute). A typical transaction is comprised of source identity (to identify the originator of the transaction) and a destination identity (to route the transaction to the respective entity) in addition to much more information in the message. Sometimes the transactions are qualified with a Security Identifier. This Security Identifier helps the destination agent decide on the set of allowed or disallowed actions.
A common weakness that can exist in such transaction schemes is that the source agent fails to include the necessary, security identifier with the transaction. Because of the missing security identifier, the destination agent might drop the message, thus resulting in Denial-of-Service (DoS), or get confused in its attempt to execute the given action, which confusion could result in privilege escalation or a gain of unintended access.
Best practices to prevent this CWE
Phase: Architecture and Design
Transaction details must be reviewed for design inconsistency and common weaknesses.
Phase: Implementation
Security identifier definition and programming flow must be tested in pre-silicon and post-silicon testing.