CVE-2026-53176
Severity CVSS v4.0:
Pending analysis
Type:
CWE-191
Integer Underflow (Wrap or Wraparound)
Publication date:
25/06/2026
Last modified:
15/07/2026
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
IB/isert: Reject login PDUs shorter than ISER_HEADERS_LEN<br />
<br />
In drivers/infiniband/ulp/isert/ib_isert.c, isert_login_recv_done()<br />
computes the login request payload length as wc->byte_len minus<br />
ISER_HEADERS_LEN with no lower bound, and login_req_len is a signed int.<br />
A remote iSER initiator can post a login Send work request carrying<br />
fewer than ISER_HEADERS_LEN (76) bytes, so the subtraction underflows<br />
and login_req_len becomes negative.<br />
<br />
isert_rx_login_req() then reads that negative length back into a signed<br />
int, takes size = min(rx_buflen, MAX_KEY_VALUE_PAIRS), and because the<br />
min() is signed it keeps the negative value; the value is then passed as<br />
the memcpy() length and sign-extended to a multi-gigabyte size_t. The<br />
copy into the 8192-byte login->req_buf runs far out of bounds and<br />
faults, crashing the target node. The login phase precedes iSCSI<br />
authentication, so no credentials are required to reach this path.<br />
<br />
Reject any login PDU shorter than ISER_HEADERS_LEN before the<br />
subtraction, mirroring the existing early return on a failed work<br />
completion, so login_req_len can never go negative. The upper bound was<br />
already safe: a posted login buffer cannot deliver more than<br />
ISER_RX_PAYLOAD_SIZE, so the difference stays at or below<br />
MAX_KEY_VALUE_PAIRS and the existing min() clamps it; only the missing<br />
lower bound needs to be added.
Impact
Base Score 3.x
9.80
Severity 3.x
CRITICAL
Vulnerable products and versions
| CPE | From | Up to |
|---|---|---|
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 3.10 (including) | 5.10.259 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.210 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.176 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.6.143 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.7 (including) | 6.12.94 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.13 (including) | 6.18.36 (excluding) |
| cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.19 (including) | 7.0.13 (excluding) |
| cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc6:*:*:*:*:*:* | ||
| cpe:2.3:o:linux:linux_kernel:7.1:rc7:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/1ca40b243277c9e88be5e00bd3e083f71aefb93e
- https://git.kernel.org/stable/c/29e7b925ae6df64894e82ab6419994dc25580a8a
- https://git.kernel.org/stable/c/75ee6e4aa096aa9e7b2dd5c8ff98356e30aceefb
- https://git.kernel.org/stable/c/bd22740d7f14cb1c0289444cfd2c8d2938667c1d
- https://git.kernel.org/stable/c/c1234229399f4af12c553b1b0ffd978eeba65548
- https://git.kernel.org/stable/c/c5584e089b5af7b3bf8bd5e8ca0560cbf32b0a47
- https://git.kernel.org/stable/c/df422fd273c96c2ee5beb80fc21adc8c70c29260
- https://git.kernel.org/stable/c/e8a013c0c3ca2f6708341a56612a3f6d6921620a
- https://access.redhat.com/security/cve/CVE-2026-53176
- https://bugzilla.redhat.com/show_bug.cgi?id=2492741
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-53176.json



