| Home > CWE List > CWE-1476: Improper Request Propagation before Data Reception in Write Transactions in a Bus Architecture (5.0) |
|
CWE-1476: Improper Request Propagation before Data Reception in Write Transactions in a Bus Architecture
View customized information:
Shows the description and diagram, platforms, mitigations, consequences, relationships, memberships, and content history.
For users who are interested in more notional aspects of a weakness. Example: educators, technical writers, and project/program managers.
For users who are concerned with the practical application and details about the nature of a weakness and how to prevent it from happening. Example: tool developers, security researchers, pen-testers, incident response analysts.
For users who are mapping an issue to CWE/CAPEC IDs, i.e., finding the most appropriate CWE for a specific issue (e.g., a CVE record). Example: tool developers, security researchers.
For users who wish to see all available information for the CWE/CAPEC entry.
For users who want to customize what details are displayed.
×
Edit Custom FilterMore information is available — Please edit the custom filter or select a different filter.
The product uses a multi-manager shared bus architecture
with an on-chip interconnect that speculatively propagates
a request for a write transaction, but it does not ensure
that the remaining steps required by the manager module to
complete the request are fulfilled in a timely manner.
Here, the word "speculatively" refers to the fact that the
interconnect propagates the request assuming that the
manager will at some point provide the data, thus
releasing the use of the bus.
This table specifies different individual consequences
associated with the weakness. The Scope identifies the application security area that is
violated, while the Impact describes the negative technical impact that arises if an
adversary succeeds in exploiting this weakness. The Likelihood provides information about
how likely the specific consequence is expected to be seen relative to the other
consequences in the list. For example, there may be high likelihood that a weakness will be
exploited to achieve a certain impact, but a low likelihood that it will be exploited to
achieve a different impact.
This table shows the weaknesses and high level categories that are related to this
weakness. These relationships are defined as ChildOf, ParentOf, MemberOf and give insight to
similar items that may exist at higher and lower levels of abstraction. In addition,
relationships such as PeerOf, Overlaps, and CanAlsoBe are defined to show similar weaknesses that the user
may want to explore.
The different Modes of Introduction provide information
about how and when this
weakness may be introduced. The Phase identifies a point in the life cycle at which
introduction
may occur, while the Note provides a typical scenario related to introduction during the
given
phase.
This listing shows possible areas for which the given
weakness could appear. These
may be for specific named Languages, Operating Systems, Architectures, Paradigms,
Technologies,
or a class of such platforms. The platform is listed along with how frequently the given
weakness appears for that instance.
Example 1
In a system-on-chip, multiple hardware components may communicate with shared resources through an interconnect. A manager initiates transactions, while a target is a shared resource such as memory or a peripheral. A shared write path is the portion of the interconnect used by multiple managers to send write data to the same target. To reduce buffering requirements and propagation latency, an interconnect may use cut-through switching. In protocols where the write request and corresponding write data are transferred independently, the interconnect can forward the request before all of the associated write data have arrived.
In these diagrams, "reserved" refers to the shared write path serving the target, rather than every operation or route to that target. The interconnect reserves the shared write path before the data required to complete the transaction are available. In the problematic design shown here, other managers cannot use that shared write path until the corresponding data transfer completes. Thus, the interconnect depends on Manager A to continue making forward progress. If Manager A stalls, the stall propagates into the shared portion of the interconnect and prevents competing transactions from using that shared write path. (attack code)
A faulty or malicious manager can delay or stop providing the remaining write data. If the interconnect does not enforce bounded progress or provide a recovery mechanism, the manager can hold the shared write path indefinitely and cause a denial of service for competing write transactions that require the same shared write path. (good code)
Example Language: Other
The interconnect should avoid reserving the shared write path until the data needed to complete the forwarded transaction are available.
One approach is store-and-forward switching the interconnect buffers the request and all corresponding write data before forwarding the request, preventing a manager's input-side stall from propagating into the shared write path. If Manager A delays or stops sending data, its incomplete transaction remains in the input buffer, and the shared write path remains available to transactions from other managers.
Store-and-forward requires storage for an entire transaction, increasing buffer capacity and hardware area. It also adds buffering latency because forwarding begins only after all corresponding data have arrived. [REF-1585] (good code)
Example Language: Other
Cut-and-forward is a second preventive approach. It divides a transaction into smaller transactions and forwards each only after all data for that chunk have been buffered. Like store-and-forward, it prevents a manager's data-provisioning stall from reserving the shared write path. [REF-1585] Cut-and-forward applies the same principle at a smaller chunk granularity. In Figure 3, a four-word write is divided into two chunks of two words each. The interconnect creates the shorter transactions and combines their responses, so Manager A continues to issue and receive a response for the original transaction. [REF-1585]
The shared write path is reserved only when a complete chunk is ready. If Manager A delays data for a later chunk, the incomplete chunk remains in the input buffer; the path is not held while waiting for those data and remains available to other managers. Smaller chunks reduce buffering requirements and forwarding delay but increase target-side transaction and response overhead. Larger chunks reduce that overhead but require more buffering and increase the delay before forwarding begins. [REF-1585] (good code)
Example Language: Other
A watchdog with protocol-aware recovery is a third, separate mitigation approach. It limits the duration of a stall by restoring the shared path to a usable state. It does not prevent the stall from entering the shared path: other managers may remain blocked until detection and recovery complete. Detection alone does not release the path. [REF-1586]
The behavior illustrated here has been demonstrated in AXI-based interconnects. The weakness is not inherently specific to AXI and can arise in other interconnect protocols with equivalent request/data separation, ordering, resource-commitment, and progress properties. The diagrams omit signal-level details to focus on the shared write path and transaction sequence. [REF-1585][REF-1586] Note: this is a curated list of examples for users to understand the variety of ways in which this weakness can be introduced. It is not a complete list of all CVEs that are related to this CWE entry.
This MemberOf Relationships table shows additional CWE Categories and Views that
reference this weakness as a member. This information is often useful in understanding where a
weakness fits within the context of external information sources.
More information is available — Please edit the custom filter or select a different filter. |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Use of the Common Weakness Enumeration (CWE™) and the associated references from this website are subject to the Terms of Use. CWE is sponsored by the U.S. Department of Homeland Security (DHS) Cybersecurity and Infrastructure Security Agency (CISA) and managed by the Homeland Security Systems Engineering and Development Institute (HSSEDI) which is operated by The MITRE Corporation (MITRE). Copyright © 2006–2026, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation. |
||

