CWE-1189 is a hardware weakness. A System on a Chip (SoC) does not properly isolate shared resources between trusted and untrusted agents. It matters to chip architects, firmware teams and anyone who builds products on SoCs and inherits their limits.
How it happens
A SoC packs a lot of function onto a chip with a limited number of pins or pads. A pin can only do one thing at a time, but it can be configured to do several things. This is called pin multiplexing. Other resources on the chip may be shared the same way to support different features.
That sharing is fine until the parties using a resource do not trust each other. MITRE describes the risk plainly: when a resource is shared between trusted and untrusted agents, the untrusted agent may be able to access assets intended only for the trusted ones.
Two observed examples sit in the record. CVE-2020-8698 is a processor with improper isolation of shared resources, allowing information disclosure. CVE-2019-6260 is a baseboard management controller whose Advanced High-performance Bus bridges did not require authentication for arbitrary read and write access to the controller's physical address space.
What an attacker gains
The record lists two consequences. The first is a bypass of a protection mechanism: an untrusted user may modify the functionality of a resource the trusted user depends on. The second is quality degradation: the shared resource may be intentionally degraded.
How to find it
MITRE suggests automated dynamic analysis, before and after silicon is produced. Test access to shared system resources such as memory ranges and control registers from untrusted software, and verify the assets are not exposed to untrusted agents. Access to shared resources can be dynamically allowed, so test the states that matter and not just the reset state.
How to fix it
The record gives one design strategy, separation of privilege. When sharing resources, avoid mixing agents of different trust levels. Untrusted agents should not share resources with trusted agents.
Where sharing cannot be avoided, treat every shared resource as a boundary. Document which agents may reach it, enforce that in hardware, and test it from the untrusted side.
Quick check
What is pin multiplexing?
A technique where one pin is configured to perform different functions at different times. Shared resources on the chip can be multiplexed the same way to support different features.
What is the core design rule here?
Do not mix agents of different trust levels on the same shared resource. Untrusted agents should not share resources with trusted ones.