Impact
The MCTP-over-I2C+GPIO target binding in Zephyr contains a NULL pointer dereference and an out‑of‑bounds write that are triggered by arbitrary pseudo‑register writes over the I2C bus. The handler processes each byte without validating the order or ensuring that the receive buffer has been allocated, allowing a master device to write a byte to the data register before sending the length register. This writes through an uninitialized pointer and can corrupt memory or cause a hard fault. Additionally, if more than 255 data bytes are sent the bounds check occurs after the write, enabling a one‑byte overflow into the heap. The lack of authentication on the I2C target callback means any I2C master can trigger these faults without prior protocol state.
Affected Systems
Zephyr operating system from the Zephyr Project. Vulnerable in the branch that shipped the MCTP‑I2C+GPIO target binding, specifically in versions 4.3.0 and 4.4.0; the fix is included in later releases that defer allocation and adjust bounds checking.
Risk and Exploitability
The vulnerability has a CVSS score of 8.1 and an EPSS score of < 1 %, and it is not listed in CISA’s KEV catalog. Based on the description, it is inferred that the likely attack vector is physical access to the I2C bus or control of an I2C master on the same bus, as the exploit requires no authentication. By sending crafted pseudo‑register writes, an attacker can trigger memory corruption or cause a denial of service, potentially compromising device integrity or availability.
OpenCVE Enrichment