{"id":"CVE-2026-72014","title":"drbd: reject data replies with an out-of-range payload size","summary":"In the Linux kernel, the following vulnerability has been resolved:\n\ndrbd: reject data replies with an out-of-range payload size\n\nrecv_dless_read() receives a P_DATA_REPLY from a peer into the bio of an\noutstanding read request. The peer…","severity":"critical","cvss":9.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cvssSource":"cna","vendor":"Linux","product":"Linux","affected":["Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < bca33f5442c3094511719d9db792ce3165d87e76","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 741a682535deffe9ab7e5c89caf83571efbc9dd9","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < f14e87d7b166490bceb9603b39310e51595d05b9","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < f16866c62656865854106b79bcf6e4ca97a51a92","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 5f59a8142000f0b8f75c432209ead73c424a745d","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 38cc4867540ae8beedfe41a1a1a6ed37052c77d6","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 648d4317326e6aa3f8c05cbf0fd14cc2eba6ca99","Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < bd910a7660d280595ef94cb6d193951d855d330f","Linux 2.6.33"],"ssvc":{"exploitation":"none","automatable":"yes","technicalImpact":"total","timestamp":"2026-10-16T15:49:59.402934Z"},"published":"2026-08-15","updated":"2026-10-16","sourceUpdated":"2026-10-16T15:53:16.100Z","source":"CVEORG","sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-72014","references":[{"url":"https://git.kernel.org/stable/c/bca33f5442c3094511719d9db792ce3165d87e76"},{"url":"https://git.kernel.org/stable/c/741a682535deffe9ab7e5c89caf83571efbc9dd9"},{"url":"https://git.kernel.org/stable/c/f14e87d7b166490bceb9603b39310e51595d05b9"},{"url":"https://git.kernel.org/stable/c/f16866c62656865854106b79bcf6e4ca97a51a92"},{"url":"https://git.kernel.org/stable/c/5f59a8142000f0b8f75c432209ead73c424a745d"},{"url":"https://git.kernel.org/stable/c/38cc4867540ae8beedfe41a1a1a6ed37052c77d6"},{"url":"https://git.kernel.org/stable/c/648d4317326e6aa3f8c05cbf0fd14cc2eba6ca99"},{"url":"https://git.kernel.org/stable/c/bd910a7660d280595ef94cb6d193951d855d330f"}],"tags":["cve.org"],"epss":0.00723,"epssPercentile":0.5309,"ingestedAt":"2026-10-16T17:24:46.872Z","slug":"CVE-2026-72014","body":"## Overview\n\nIn the Linux kernel, the following vulnerability has been resolved:\n\ndrbd: reject data replies with an out-of-range payload size\n\nrecv_dless_read() receives a P_DATA_REPLY from a peer into the bio of an\noutstanding read request. The peer-supplied payload length reaches it as\nthe signed int data_size, and two peer-controlled inputs can make it\nnegative. With a negotiated data-integrity-alg the digest length is\nsubtracted first, so a reply whose payload is smaller than the digest\nunderflows data_size. With no integrity algorithm (the default) data_size\nis assigned from the unsigned h95/h100 wire length and drbdd() never\nbounds it for a payload-carrying command, so a length above INT_MAX casts\nit negative; this path needs no non-default feature. The bio receive loop\nthen computes expect = min_t(int, data_size, bv_len), which is negative,\nand drbd_recv_all_warn(mapped, expect) receives with a size_t of SIZE_MAX\ninto the first mapped page.\n\nThe sibling receive path read_in_block() is not affected: it uses an\nunsigned size and rejects it against DRBD_MAX_BIO_SIZE before receiving.\nReject a data reply whose size is negative after the optional digest\nsubtraction, covering both triggers.\n\nImpact: a malicious or man-in-the-middle DRBD peer copies attacker-chosen\nbytes past a bio page in the receiver, corrupting kernel memory. A node\nthat reads from its peer (a diskless node, or read-balancing to the peer)\nis exposed in the default configuration; data-integrity-alg is not\nrequired.\n\n## Affected\n\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < bca33f5442c3094511719d9db792ce3165d87e76`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 741a682535deffe9ab7e5c89caf83571efbc9dd9`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < f14e87d7b166490bceb9603b39310e51595d05b9`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < f16866c62656865854106b79bcf6e4ca97a51a92`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 5f59a8142000f0b8f75c432209ead73c424a745d`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 38cc4867540ae8beedfe41a1a1a6ed37052c77d6`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < 648d4317326e6aa3f8c05cbf0fd14cc2eba6ca99`\n- `Linux >= b411b3637fa71fce9cf2acf0639009500f5892fe < bd910a7660d280595ef94cb6d193951d855d330f`\n- `Linux 2.6.33`\n\n## Remediation\n\nRefer to the linked advisories for vendor-supplied fixes and affected version ranges.","depth":"midnight","depthScore":54,"depthScoreParts":{"impact":53.9,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[]}