Answer in brief
CVE-2026-90230 records a Critical severity (CVSS 9.1) vulnerability in nvmet: fix heap out-of-bounds read in nvmet_auth_negotiate(). The current sources do not mark it as known exploited. The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
Analysis pending evidence review
HOL Guard separates source facts from reviewed analysis. See the methodology.
CVSS is 9.1. The current sources do not mark it as known exploited. Treat this as a source-backed prioritization signal, not a statement about your environment.
Analysis status
Analysis pending evidence review
Factual feed record only; HOL analysis is not approved for indexing. Read the methodology.
The current feed maps Linux/Linux (generic), Linux/Linux (generic). Check affected ranges and fixed versions before updating.
| Package | Affected range | Fixed version |
|---|---|---|
| Linux/Linuxgeneric | >=db1312dd95488b5e6ff362ff66fcf953a46b1821 <89ff11b72f38976f3b5aea23a5228ee05e277209 || >=db1312dd95488b5e6ff362ff66fcf953a46b1821 <aaac783950b17c57df9b6f7344747cacb1a407ed || >=db1312dd95488b5e6ff362ff66fcf953a46b1821 <c38a8186326799957d293d370136c128cd113916 || >=db1312dd95488b5e6ff362ff66fcf953a46b1821 <7b81e4d2230e3d2d372c826180c4ef0efc244f31 || >=db1312dd95488b5e6ff362ff66fcf953a46b1821 <5bb96cc218835769ab74ec7f3ea2bf81fbffe955 | 89ff11b72f38976f3b5aea23a5228ee05e277209, aaac783950b17c57df9b6f7344747cacb1a407ed, c38a8186326799957d293d370136c128cd113916, 7b81e4d2230e3d2d372c826180c4ef0efc244f31, 5bb96cc218835769ab74ec7f3ea2bf81fbffe955 |
| Linux/Linuxgeneric | 6.0 | Not reported |
Published upstream
Sep 17, 2026
Evidence: source:cvelist:source_dates:source-dates:recordSource modified
Oct 19, 2026
Evidence: source:cvelist:source_dates:source-dates:recordFirst seen by HOL
Sep 17, 2026
In the Linux kernel, the following vulnerability has been resolved: nvmet: fix heap out-of-bounds read in nvmet_auth_negotiate() nvmet_execute_auth_send() allocates the DH-HMAC-CHAP message buffer with the host-supplied transfer length (tl) and hands it to nvmet_auth_negotiate() without passing tl along. nvmet_auth_negotiate() then reads the negotiate header and, for each of the halen hash identifiers and dhlen DH group identifiers, indexes into the fixed idlist[60] array (hashes at idlist[0..halen), groups at idlist[30..]). Neither the transfer length nor halen/dhlen is validated. A malicious or non-conformant host can report a tl smaller than the negotiate structure, or a halen/dhlen larger than the array (both are u8, up to 255), making the loops read past the end of the allocated buffer (heap out-of-bounds read). The sibling nvmet_auth_reply() already validates tl against the structure size; the negotiate path did not. Pass tl into nvmet_auth_negotiate(), reject a tl that does not cover the negotiate data plus one full protocol descriptor, and reject halen/dhlen larger than NVME_AUTH_DHCHAP_MAX_DH_IDS.
Quoted source text, attributed separately from HOL analysis.