CVE-2026-64053 (GCVE-0-2026-64053)

Vulnerability from cvelistv5 – Published: 2026-07-19 15:39 – Updated: 2026-10-19 20:28
VLAI
Title
block: don't overwrite bip_vcnt in bio_integrity_copy_user()
Summary
In the Linux kernel, the following vulnerability has been resolved: block: don't overwrite bip_vcnt in bio_integrity_copy_user() bio_integrity_add_page() already sets bip_vcnt to 1 for the bounce segment. Overwriting it with nr_vecs breaks bip_vcnt <= bip_max_vcnt on WRITE (bip_max_vcnt is 1), so the gap-merge checks in block/blk.h read past the bip_vec[] flex array. On READ the read is in bounds but lands on a saved user bvec instead of the bounce. The line was added for split propagation, but bio_integrity_clone() doesn't copy bip_vcnt and BIP_CLONE_FLAGS excludes BIP_COPY_USER.
SSVC
Exploitation: none Automatable: no Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-10-16 15:36 UTC
CWE
Assigner
Linux CNA under the mitre root
CNA scorecard D 53/100 over 6843 records in the last 180 days details
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 3991657ae7074c3c497bf095093178bed37ea1b4 , < d18160c9525c63c203656fefd847e94b538cd4a4 (git)
Affected: 3991657ae7074c3c497bf095093178bed37ea1b4 , < 0d48654af4d1390c888389206cc13b51b82c30e6 (git)
Affected: 3991657ae7074c3c497bf095093178bed37ea1b4 , < 066be1439593a381b1a29663becfcfe0c92363e7 (git)
Affected: 3991657ae7074c3c497bf095093178bed37ea1b4 , < 637ad3a56a3b889527d1dacea6fea2a8bd648140 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.11
Unaffected: 0 , < 6.11 (semver)
Unaffected: 6.12.92 , ≤ 6.12.* (semver)
Unaffected: 6.18.34 , ≤ 6.18.* (semver)
Unaffected: 7.0.11 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2026-64053",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-16T15:36:00.465098Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "problemTypes": [
          {
            "descriptions": [
              {
                "cweId": "CWE-125",
                "description": "CWE-125 Out-of-bounds Read",
                "lang": "en",
                "type": "CWE"
              }
            ]
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-10-19T20:28:10.989Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "block/bio-integrity.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "d18160c9525c63c203656fefd847e94b538cd4a4",
              "status": "affected",
              "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
              "versionType": "git"
            },
            {
              "lessThan": "0d48654af4d1390c888389206cc13b51b82c30e6",
              "status": "affected",
              "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
              "versionType": "git"
            },
            {
              "lessThan": "066be1439593a381b1a29663becfcfe0c92363e7",
              "status": "affected",
              "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
              "versionType": "git"
            },
            {
              "lessThan": "637ad3a56a3b889527d1dacea6fea2a8bd648140",
              "status": "affected",
              "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "block/bio-integrity.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.11"
            },
            {
              "lessThan": "6.11",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.92",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.34",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.11",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.92",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.34",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.11",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.11",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nblock: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()\n\nbio_integrity_add_page() already sets bip_vcnt to 1 for the bounce\nsegment. Overwriting it with nr_vecs breaks bip_vcnt \u003c= bip_max_vcnt\non WRITE (bip_max_vcnt is 1), so the gap-merge checks in block/blk.h\nread past the bip_vec[] flex array. On READ the read is in bounds\nbut lands on a saved user bvec instead of the bounce.\n\nThe line was added for split propagation, but bio_integrity_clone()\ndoesn\u0027t copy bip_vcnt and BIP_CLONE_FLAGS excludes BIP_COPY_USER."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is only reachable via local syscalls on an integrity-capable block device\u2014io_uring read/write with PI attributes (`IOCB_HAS_METADATA` \u2192 `bio_integrity_map_iter()`) or NVMe ioctls (`NVME_IOCTL_SUBMIT_IO`/`NVME_IOCTL_IO_CMD` \u2192 `blk_rq_integrity_map_user()`). No network-facing server path (ksmbd, nfsd, nvmet) calls `bio_integrity_copy_user()`.\nAC:L - An attacker fully controls the conditions needed to hit the copy path and trigger the bad index: misaligned or multi-segment integrity user buffers force `copy=true`, multi-page scatter yields `nr_bvecs\u003e1`, and concurrent O_DIRECT integrity writes to the same queue trigger `integrity_req_gap_*_merge()` that dereferences the corrupted `bip_vcnt`.\nPR:L - No kernel capabilities or init-namespace root are required beyond permission to open and perform O_DIRECT I/O on an integrity-enabled block device (`/dev/nvme*`, SCSI DIF disk); io_uring and NVMe ioctls are available to any local user granted device access (e.g., disk group, container volume mounts on storage nodes).\nUI:N - Exploitation is self-initiated by the attacker issuing crafted integrity I/O; no victim interaction such as mounting a filesystem or opening a file is required.\nS:U - Impact is confined to kernel memory safety within the block-integrity path on the host; it does not cross a VM, IOMMU, or sandbox security boundary.\nC:H - On WRITE, `bip_vcnt` is incorrectly set to `nr_vecs` while `bip_max_vcnt` is 1, so `integrity_req_gap_back_merge()`/`integrity_req_gap_front_merge()` in `block/blk.h` index `bip_vec[bip_vcnt-1]` past the single-slot kmalloc flex array, causing an out-of-bounds read of adjacent kernel heap memory that can disclose kernel pointers and other sensitive data.\nI:H - The corrupted `bip_vcnt` breaks integrity metadata bookkeeping during bio/request merging; on READ it causes gap-merge logic to consult saved user bvecs instead of the kernel bounce buffer, and the heap OOB read corrupts kernel memory-safety invariants in ways that can be chained toward further memory corruption or control-flow manipulation.\nA:H - With large `nr_bvecs` (up to `BIO_MAX_VECS`), the out-of-bounds `bip_vec` access can extend far beyond the kmalloc object boundary and provoke a kernel oops/page fault during merge processing; even without full exploitation, the integrity path malfunction can destabilize the I/O stack."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-05T12:38:43.588Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/d18160c9525c63c203656fefd847e94b538cd4a4"
        },
        {
          "url": "https://git.kernel.org/stable/c/0d48654af4d1390c888389206cc13b51b82c30e6"
        },
        {
          "url": "https://git.kernel.org/stable/c/066be1439593a381b1a29663becfcfe0c92363e7"
        },
        {
          "url": "https://git.kernel.org/stable/c/637ad3a56a3b889527d1dacea6fea2a8bd648140"
        }
      ],
      "title": "block: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-64053",
    "datePublished": "2026-07-19T15:39:35.854Z",
    "dateReserved": "2026-07-19T07:54:57.029Z",
    "dateUpdated": "2026-10-19T20:28:10.989Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-64053",
      "date": "2026-10-22",
      "epss": "0.00129",
      "percentile": "0.02265"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "block/bio-integrity.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "d18160c9525c63c203656fefd847e94b538cd4a4",
                    "status": "affected",
                    "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "0d48654af4d1390c888389206cc13b51b82c30e6",
                    "status": "affected",
                    "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "066be1439593a381b1a29663becfcfe0c92363e7",
                    "status": "affected",
                    "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "637ad3a56a3b889527d1dacea6fea2a8bd648140",
                    "status": "affected",
                    "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "block/bio-integrity.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.11"
                  },
                  {
                    "lessThan": "6.11",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.12.*",
                    "status": "unaffected",
                    "version": "6.12.92",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.34",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.0.*",
                    "status": "unaffected",
                    "version": "7.0.11",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.1",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "configurations": [
          {
            "nodes": [
              {
                "cpeMatch": [
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "AFEC5E32-5D1A-40AF-B543-F621484B76AA",
                    "versionEndExcluding": "6.12.92",
                    "versionStartIncluding": "6.11",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "A4B1EF6D-18D7-4838-BC37-7499D5DCC3C0",
                    "versionEndExcluding": "6.18.34",
                    "versionStartIncluding": "6.13",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                    "matchCriteriaId": "0520D091-FC52-4A50-AF07-70AE7D08B750",
                    "versionEndExcluding": "7.0.11",
                    "versionStartIncluding": "6.19",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*",
                    "matchCriteriaId": "B1EF7059-E670-45F4-B422-54C40FA86390",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*",
                    "matchCriteriaId": "0D38F0BF-A728-4133-A358-D44A2F7EE6D6",
                    "vulnerable": true
                  },
                  {
                    "criteria": "cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*",
                    "matchCriteriaId": "EC732D08-5F7B-46D9-B154-E60C7F4F0A97",
                    "vulnerable": true
                  }
                ],
                "negate": false,
                "operator": "OR"
              }
            ]
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nblock: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()\n\nbio_integrity_add_page() already sets bip_vcnt to 1 for the bounce\nsegment. Overwriting it with nr_vecs breaks bip_vcnt \u003c= bip_max_vcnt\non WRITE (bip_max_vcnt is 1), so the gap-merge checks in block/blk.h\nread past the bip_vec[] flex array. On READ the read is in bounds\nbut lands on a saved user bvec instead of the bounce.\n\nThe line was added for split propagation, but bio_integrity_clone()\ndoesn\u0027t copy bip_vcnt and BIP_CLONE_FLAGS excludes BIP_COPY_USER."
          }
        ],
        "id": "CVE-2026-64053",
        "lastModified": "2026-10-19T21:17:22.150",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "HIGH",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.9,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ],
          "ssvcV203": [
            {
              "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "ssvcData": {
                "id": "CVE-2026-64053",
                "options": [
                  {
                    "exploitation": "none"
                  },
                  {
                    "automatable": "no"
                  },
                  {
                    "technicalImpact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-10-16T15:36:00.465098Z",
                "version": "2.0.3"
              }
            }
          ]
        },
        "published": "2026-07-19T16:17:45.730",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/066be1439593a381b1a29663becfcfe0c92363e7"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/0d48654af4d1390c888389206cc13b51b82c30e6"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/637ad3a56a3b889527d1dacea6fea2a8bd648140"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "tags": [
              "Patch"
            ],
            "url": "https://git.kernel.org/stable/c/d18160c9525c63c203656fefd847e94b538cd4a4"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Modified",
        "weaknesses": [
          {
            "description": [
              {
                "lang": "en",
                "value": "NVD-CWE-noinfo"
              }
            ],
            "source": "nvd@nist.gov",
            "type": "Primary"
          },
          {
            "description": [
              {
                "lang": "en",
                "value": "CWE-125"
              }
            ],
            "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
            "type": "Secondary"
          }
        ]
      }
    },
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-09-24T09:39:20+00:00",
      "cve": "CVE-2026-64053",
      "id": "CVE-2026-64053",
      "initial_release_date": "2026-07-19T00:00:00+00:00",
      "product_status:fixed": "612",
      "product_status:known_affected": "22",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: block: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-64053.json",
      "version": "3"
    },
    "vulnrichment": {
      "containers": {
        "adp": [
          {
            "metrics": [
              {
                "other": {
                  "content": {
                    "id": "CVE-2026-64053",
                    "options": [
                      {
                        "Exploitation": "none"
                      },
                      {
                        "Automatable": "no"
                      },
                      {
                        "Technical Impact": "total"
                      }
                    ],
                    "role": "CISA Coordinator",
                    "timestamp": "2026-10-16T15:36:00.465098Z",
                    "version": "2.0.3"
                  },
                  "type": "ssvc"
                }
              }
            ],
            "providerMetadata": {
              "dateUpdated": "2026-10-16T15:36:01.029Z",
              "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
              "shortName": "CISA-ADP"
            },
            "title": "CISA ADP Vulnrichment"
          }
        ],
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "block/bio-integrity.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "d18160c9525c63c203656fefd847e94b538cd4a4",
                  "status": "affected",
                  "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                  "versionType": "git"
                },
                {
                  "lessThan": "0d48654af4d1390c888389206cc13b51b82c30e6",
                  "status": "affected",
                  "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                  "versionType": "git"
                },
                {
                  "lessThan": "066be1439593a381b1a29663becfcfe0c92363e7",
                  "status": "affected",
                  "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                  "versionType": "git"
                },
                {
                  "lessThan": "637ad3a56a3b889527d1dacea6fea2a8bd648140",
                  "status": "affected",
                  "version": "3991657ae7074c3c497bf095093178bed37ea1b4",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "block/bio-integrity.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.11"
                },
                {
                  "lessThan": "6.11",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.92",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.34",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.0.*",
                  "status": "unaffected",
                  "version": "7.0.11",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "*",
                  "status": "unaffected",
                  "version": "7.1",
                  "versionType": "original_commit_for_fix"
                }
              ]
            }
          ],
          "cpeApplicability": [
            {
              "nodes": [
                {
                  "cpeMatch": [
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.92",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.34",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.0.11",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1",
                      "versionStartIncluding": "6.11",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nblock: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()\n\nbio_integrity_add_page() already sets bip_vcnt to 1 for the bounce\nsegment. Overwriting it with nr_vecs breaks bip_vcnt \u003c= bip_max_vcnt\non WRITE (bip_max_vcnt is 1), so the gap-merge checks in block/blk.h\nread past the bip_vec[] flex array. On READ the read is in bounds\nbut lands on a saved user bvec instead of the bounce.\n\nThe line was added for split propagation, but bio_integrity_clone()\ndoesn\u0027t copy bip_vcnt and BIP_CLONE_FLAGS excludes BIP_COPY_USER."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The bug is only reachable via local syscalls on an integrity-capable block device\u2014io_uring read/write with PI attributes (`IOCB_HAS_METADATA` \u2192 `bio_integrity_map_iter()`) or NVMe ioctls (`NVME_IOCTL_SUBMIT_IO`/`NVME_IOCTL_IO_CMD` \u2192 `blk_rq_integrity_map_user()`). No network-facing server path (ksmbd, nfsd, nvmet) calls `bio_integrity_copy_user()`.\nAC:L - An attacker fully controls the conditions needed to hit the copy path and trigger the bad index: misaligned or multi-segment integrity user buffers force `copy=true`, multi-page scatter yields `nr_bvecs\u003e1`, and concurrent O_DIRECT integrity writes to the same queue trigger `integrity_req_gap_*_merge()` that dereferences the corrupted `bip_vcnt`.\nPR:L - No kernel capabilities or init-namespace root are required beyond permission to open and perform O_DIRECT I/O on an integrity-enabled block device (`/dev/nvme*`, SCSI DIF disk); io_uring and NVMe ioctls are available to any local user granted device access (e.g., disk group, container volume mounts on storage nodes).\nUI:N - Exploitation is self-initiated by the attacker issuing crafted integrity I/O; no victim interaction such as mounting a filesystem or opening a file is required.\nS:U - Impact is confined to kernel memory safety within the block-integrity path on the host; it does not cross a VM, IOMMU, or sandbox security boundary.\nC:H - On WRITE, `bip_vcnt` is incorrectly set to `nr_vecs` while `bip_max_vcnt` is 1, so `integrity_req_gap_back_merge()`/`integrity_req_gap_front_merge()` in `block/blk.h` index `bip_vec[bip_vcnt-1]` past the single-slot kmalloc flex array, causing an out-of-bounds read of adjacent kernel heap memory that can disclose kernel pointers and other sensitive data.\nI:H - The corrupted `bip_vcnt` breaks integrity metadata bookkeeping during bio/request merging; on READ it causes gap-merge logic to consult saved user bvecs instead of the kernel bounce buffer, and the heap OOB read corrupts kernel memory-safety invariants in ways that can be chained toward further memory corruption or control-flow manipulation.\nA:H - With large `nr_bvecs` (up to `BIO_MAX_VECS`), the out-of-bounds `bip_vec` access can extend far beyond the kmalloc object boundary and provoke a kernel oops/page fault during merge processing; even without full exploitation, the integrity path malfunction can destabilize the I/O stack."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-05T12:38:43.588Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/d18160c9525c63c203656fefd847e94b538cd4a4"
            },
            {
              "url": "https://git.kernel.org/stable/c/0d48654af4d1390c888389206cc13b51b82c30e6"
            },
            {
              "url": "https://git.kernel.org/stable/c/066be1439593a381b1a29663becfcfe0c92363e7"
            },
            {
              "url": "https://git.kernel.org/stable/c/637ad3a56a3b889527d1dacea6fea2a8bd648140"
            }
          ],
          "title": "block: don\u0027t overwrite bip_vcnt in bio_integrity_copy_user()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64053",
        "datePublished": "2026-07-19T15:39:35.854Z",
        "dateReserved": "2026-07-19T07:54:57.029Z",
        "dateUpdated": "2026-10-16T15:42:21.153Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Drag nodes to arrange them. Double-click a related vulnerability to open it, or a source to visit its link. The Physics button on the left tunes the layout and the simulation; the legend at the bottom left hides or shows nodes by kind and by sighting type.

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.
Vulnerability timeline

Sightings and recorded dates, grouped by day · UTC

JSON
Events included in the timeline

Loading timeline…


    Loading…

    Loading…

    Loading…

    Related by attack behaviour

    Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.