In the Linux kernel, the following vulnerability has been resolved:
drbd: reject data replies with an out-of-range payload size
recvdlessread() receives a PDATAREPLY from a peer into the bio of an outstanding read request. The peer-supplied payload length reaches it as the signed int datasize, and two peer-controlled inputs can make it negative. With a negotiated data-integrity-alg the digest length is subtracted first, so a reply whose payload is smaller than the digest underflows datasize. With no integrity algorithm (the default) datasize is assigned from the unsigned h95/h100 wire length and drbdd() never bounds it for a payload-carrying command, so a length above INTMAX casts it negative; this path needs no non-default feature. The bio receive loop then computes expect = mint(int, datasize, bvlen), which is negative, and drbdrecvallwarn(mapped, expect) receives with a sizet of SIZEMAX into the first mapped page.
The sibling receive path readinblock() is not affected: it uses an unsigned size and rejects it against DRBDMAXBIO_SIZE before receiving. Reject a data reply whose size is negative after the optional digest subtraction, covering both triggers.
Impact: a malicious or man-in-the-middle DRBD peer copies attacker-chosen bytes past a bio page in the receiver, corrupting kernel memory. A node that reads from its peer (a diskless node, or read-balancing to the peer) is exposed in the default configuration; data-integrity-alg is not required.
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/72xxx/CVE-2026-72014.json"
}