CVE-2026-74694

Summary

In the Linux kernel, the following vulnerability has been resolved:

net/ncsi: fix heap OOB read in NCSI_CMD_SEND_CMD payload length

ncsi_send_cmd_nl() takes the number of bytes to copy from the attacker-controlled ncsi_pkt_hdr.length field of the in-band packet header, while the source buffer is the NCSI_ATTR_DATA netlink attribute whose readable size is nla_len() - sizeof(ncsi_pkt_hdr). The two length sources are never cross-checked: only nla_len() >= sizeof(struct ncsi_pkt_hdr) is enforced.

With hdr->length set larger than the attribute payload (up to 65535 against at most 2032 readable bytes), ncsi_cmd_handler_oem() copies past the end of the netlink attribute buffer with unsafe_memcpy(), leaking up to ~64KB of kernel heap memory into the transmitted NCSI command packet. The destination skb is sized by the declared payload, so the write side does not overflow - this is a pure OOB read / information leak, reachable with CAP_NET_ADMIN on systems with a registered NCSI device (e.g. OpenBMC on Aspeed BMC SoCs, where NET_NCSI=y is standard).

Reject commands whose declared payload extends past the end of the data attribute.

The issue was found by the autokbug dynamic kernel fuzzer at Tencent Yunding Lab.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < e60afa01d35f8b2671b27ca93309921427144cceaffected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < 67c72b8ef63d9d9a610546fda30b116638f39745affected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < 4489b4a17892750131e4bef4bc1d3d703c8fb5baaffected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < 43c7d0a6917751ea898ae584d00f24f5deac46d4affected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < b5231ad0b376b801ab8cf2962b182cc29deaedb3affected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < 02226af69362758046822840fc6a497f5de33f00affected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < 3a60b5af75abe8e3494ccd074fb4ae6e601a3e55affected
LinuxLinux9771b8ccdfa6dcb1ac5128ca7fe8649f3092d392 < afa58b7384913c8773d837acdb07b035690ec5d2affected
LinuxLinux4.20affected
LinuxLinux0 < 4.20unaffected
LinuxLinux5.10.265 <= 5.10.*unaffected
LinuxLinux5.15.216 <= 5.15.*unaffected
LinuxLinux6.1.183 <= 6.1.*unaffected
LinuxLinux6.6.152 <= 6.6.*unaffected
LinuxLinux6.12.104 <= 6.12.*unaffected
LinuxLinux6.18.45 <= 6.18.*unaffected
LinuxLinux7.1.9 <= 7.1.*unaffected
LinuxLinux7.2 <= *unaffected

Weaknesses

References