CVE-2026-72130

nvmet-auth: reject short AUTH_RECEIVE buffers

State
Published
Severity
9.8 Critical
Published
Aug 15, 2026
Updated
Oct 30, 2026
Reserved
Aug 9, 2026

Read the record on cve.org

Description

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

nvmet-auth: reject short AUTH_RECEIVE buffers

nvmet_execute_auth_receive() trusts the AUTH_RECEIVE allocation length after checking only that it is nonzero and matches the transfer length. In the SUCCESS1 and FAILURE1/default states, that lets a remote NVMe-oF initiator reach the fixed-size DH-HMAC-CHAP response builders with a kmalloc() buffer shorter than the response, so nvmet_auth_success1() and nvmet_auth_failure1() write past the allocation; both only WARN_ON the short length and then format the message anyway.

Impact: A remote NVMe-oF initiator with access to an auth-enabled target can trigger a 16-byte heap out-of-bounds write via a one-byte AUTH_RECEIVE allocation length.

Compute the minimum response length for the current DH-HMAC-CHAP step in nvmet_auth_receive_data_len() and report a zero data length when the host-supplied allocation length is shorter, so the existing zero-length check in nvmet_execute_auth_receive() rejects the command before any builder runs. The SUCCESS1 minimum is sizeof(struct nvmf_auth_dhchap_success1_data) plus the HMAC hash length, because the response hash is written into the rval[] flexible-array tail, so the minimum is state dependent rather than a flat sizeof. CHALLENGE keeps its existing variable-length guard in nvmet_auth_challenge().

This is reachable only when in-band DH-HMAC-CHAP authentication is configured on the target.

Scores

CVSSScoreVectorSource
3.19.8 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before ecdb6332fe59ddf18aad758a4926e3d483f4860aAffected
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before 584d7d14d9b40b080b1195cec83de86ade63343eAffected
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before 80bf7b7f676e3987bbe06af3c359bd56ac91a5a9Affected
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before 2eaa3ad450141cfcf187bb43cb8335eb336b5f87Affected
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before bc111698b46e43eddd8664cceaa621cd559e99a0Affected
  • db1312dd95488b5e6ff362ff66fcf953a46b1821 to before 779575bc35c687697ba69e904f2cd22e60112534Affected
LinuxLinux
  • 6.0Affected
  • before 6.0Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.160 through 6.6.*Not affected
  • 6.12.101 through 6.12.*Not affected
  • 6.18.40 through 6.18.*Not affected
  • 7.1.5 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.