CVE-2026-90307

CVE-2026-90307

published September 17, 2026

CVSS
—
EPSS
0%
Percentile
10.7
In the wild
Unconfirmed
What it is

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

RDMA/srp: fix heap information leak on a truncated SRP_CRED_REQ

srp_recv_done() passes wc->byte_len to srp_process_rsp(). It passes

nothing to srp_process_cred_req() and srp_process_aer_req(), which read

fixed-size fields from the receive buffer without checking that those

fields were received.

The buffer size is max_ti_iu_len, which comes from the login response

and is not validated. A target that advertises 8 and then sends an

8-byte SRP_CRED_REQ makes the initiator read req->tag from beyond the

end of the buffer. req->tag is copied into the SRP_CRED_RSP and sent

back, so those bytes reach the target. SRP_AER_REQ behaves the same way

and also reads req->lun.

The leak is 8 bytes per response. max_ti_iu_len also decides which slab

cache the buffer comes from. With 8 the buffer is a kmalloc-8 object and

the read is entirely outside it:

BUG: KASAN: slab-out-of-bounds in srp_recv_done+0x172b/0x1aa0

Read of size 8 at addr ffff888104714da8 by task kworker/u8:3/50

which belongs to the cache kmalloc-8 of size 8

The buggy address is located 0 bytes to the right of

allocated 8-byte region [ffff888104714da0, ffff888104714da8)

Without KASAN the returned bytes are whatever is next in the slab. One

run returned ".strtab".

rsp->data[3] in srp_process_rsp() has the same problem: only

resp_data_len is checked before it is read.

Drop a request that is shorter than the structure being parsed, and

check byte_len before the tsk_mgmt read.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00210 · 10.7th percentile
Published
2026-09-17T21:17Z
References (8)
EPSS history
Timeline
  • 19 SEP 03:55Z
    EPSS moved — → 0%
    epss
  • 17 SEP 16:08Z
    RDMA/srp: fix heap information leak on a truncated SRP_CRED_REQ
    cvelistv5