CVE-2026-68255 (GCVE-0-2026-68255)

Vulnerability from cvelistv5 – Published: 2026-08-10 12:01 – Updated: 2026-08-19 16:32
VLAI
Title
drm/virtio: bound EDID block reads to the response buffer
Summary
In the Linux kernel, the following vulnerability has been resolved: drm/virtio: bound EDID block reads to the response buffer virtio_get_edid_block() validates the read offset only against the device-supplied resp->size field, never against the fixed-size resp->edid array. The EDID block index is driven by the device-supplied extension count, so a malicious virtio-gpu backend can advertise a large size together with a high block count and read far past the array into adjacent kernel memory, which is then surfaced in the parsed EDID (an out-of-bounds read / info leak). Also reject any read whose end exceeds the size of the edid array. Conforming EDID responses stay within the array and are unaffected.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 3f506a85a905b080cadc029a1651a310479090a6 (git)
Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 9fc2a017c5d597937e0c28b9a9669844aa796c42 (git)
Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 2757e6e803092cf0aeaf4b735e16b5d3bdc705c5 (git)
Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 35be0e2c6862abcd5e5f5445261f1fd910d4a9b4 (git)
Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 375c1934ef0196d3b6d3a1eae3232bef8dae7bf7 (git)
Affected: b4b01b4995fb15b55a2d067eb405917f5ab32709 , < 4e1a53892ba7f8a3e1da6bfc53c83ae7c812dccd (git)
guessed Create a notification for this product.
Linux Linux Affected: 5.0
Unaffected: 0 , < 5.0 (semver)
Unaffected: 6.1.183 , ≤ 6.1.* (semver)
Unaffected: 6.6.148 , ≤ 6.6.* (semver)
Unaffected: 6.12.101 , ≤ 6.12.* (semver)
Unaffected: 6.18.42 , ≤ 6.18.* (semver)
Unaffected: 7.1.6 , ≤ 7.1.* (semver)
Unaffected: 7.2 , ≤ * (original_commit_for_fix)
guessed Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/virtio/virtgpu_vq.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "3f506a85a905b080cadc029a1651a310479090a6",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            },
            {
              "lessThan": "9fc2a017c5d597937e0c28b9a9669844aa796c42",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            },
            {
              "lessThan": "2757e6e803092cf0aeaf4b735e16b5d3bdc705c5",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            },
            {
              "lessThan": "35be0e2c6862abcd5e5f5445261f1fd910d4a9b4",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            },
            {
              "lessThan": "375c1934ef0196d3b6d3a1eae3232bef8dae7bf7",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            },
            {
              "lessThan": "4e1a53892ba7f8a3e1da6bfc53c83ae7c812dccd",
              "status": "affected",
              "version": "b4b01b4995fb15b55a2d067eb405917f5ab32709",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/virtio/virtgpu_vq.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.0"
            },
            {
              "lessThan": "5.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.183",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.148",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.101",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.42",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.6",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.183",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.148",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.101",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.42",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.6",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "5.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/virtio: bound EDID block reads to the response buffer\n\nvirtio_get_edid_block() validates the read offset only against the\ndevice-supplied resp-\u003esize field, never against the fixed-size resp-\u003eedid\narray. The EDID block index is driven by the device-supplied extension\ncount, so a malicious virtio-gpu backend can advertise a large size\ntogether with a high block count and read far past the array into adjacent\nkernel memory, which is then surfaced in the parsed EDID (an out-of-bounds\nread / info leak).\n\nAlso reject any read whose end exceeds the size of the edid array.\nConforming EDID responses stay within the array and are unaffected."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.7,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The attacker is a malicious or compromised virtio-gpu backend (host/hypervisor device emulation or a vhost-user device process) supplying crafted EDID responses over the virtqueue; this is device-to-guest-kernel access, not remote network access.\nAC:L - The device fully controls resp-\u003esize, the EDID extension count and the timing of the read by raising VIRTIO_GPU_EVENT_DISPLAY config-change interrupts, so it can trigger the out-of-bounds read reliably and repeatedly with no conditions outside its control.\nPR:N - No guest credentials are needed at all: the vulnerable path runs in the virtio-gpu probe and the config-changed workqueue in kernel context, driven purely by device responses.\nUI:N - EDID re-reads are initiated automatically at probe and on device-raised display events; no guest user has to open, mount or interact with anything.\nS:U - The out-of-bounds read and the resulting disclosure both occur within the guest kernel\u0027s own security authority; no IOMMU, VM or sandbox boundary is crossed by the impact itself.\nC:H - Block indices up to 255 give start offsets of ~32 KB past the 1024-byte resp-\u003eedid array, reading far beyond the kmalloc\u0027d response object into adjacent kernel heap memory, which is then surfaced as parsed EDID via the connector blob property and world-readable sysfs edid file, and hex-dumped for bad blocks.\nI:N - Destination buffers in _drm_do_get_edid() are allocated from the block count, so the flaw is strictly an over-read of the response buffer with no out-of-bounds write or kernel data modification.\nA:H - The memcpy can walk tens of kilobytes past the slab object into unmapped or guarded memory, causing an oops/panic (and an immediate BUG under KASAN/hardened builds), and the device can repeat it at will."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-19T16:32:26.120Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/3f506a85a905b080cadc029a1651a310479090a6"
        },
        {
          "url": "https://git.kernel.org/stable/c/9fc2a017c5d597937e0c28b9a9669844aa796c42"
        },
        {
          "url": "https://git.kernel.org/stable/c/2757e6e803092cf0aeaf4b735e16b5d3bdc705c5"
        },
        {
          "url": "https://git.kernel.org/stable/c/35be0e2c6862abcd5e5f5445261f1fd910d4a9b4"
        },
        {
          "url": "https://git.kernel.org/stable/c/375c1934ef0196d3b6d3a1eae3232bef8dae7bf7"
        },
        {
          "url": "https://git.kernel.org/stable/c/4e1a53892ba7f8a3e1da6bfc53c83ae7c812dccd"
        }
      ],
      "title": "drm/virtio: bound EDID block reads to the response buffer",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-68255",
    "datePublished": "2026-08-10T12:01:24.835Z",
    "dateReserved": "2026-07-30T09:28:09.377Z",
    "dateUpdated": "2026-08-19T16:32:26.120Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-68255",
      "date": "2026-08-20",
      "epss": "0.0019",
      "percentile": "0.09065"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-68255\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-10T13:20:14.113\",\"lastModified\":\"2026-08-19T17:20:39.853\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\ndrm/virtio: bound EDID block reads to the response buffer\\n\\nvirtio_get_edid_block() validates the read offset only against the\\ndevice-supplied resp-\u003esize field, never against the fixed-size resp-\u003eedid\\narray. The EDID block index is driven by the device-supplied extension\\ncount, so a malicious virtio-gpu backend can advertise a large size\\ntogether with a high block count and read far past the array into adjacent\\nkernel memory, which is then surfaced in the parsed EDID (an out-of-bounds\\nread / info leak).\\n\\nAlso reject any read whose end exceeds the size of the edid array.\\nConforming EDID responses stay within the array and are unaffected.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"drivers/gpu/drm/virtio/virtgpu_vq.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"3f506a85a905b080cadc029a1651a310479090a6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"9fc2a017c5d597937e0c28b9a9669844aa796c42\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"2757e6e803092cf0aeaf4b735e16b5d3bdc705c5\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"35be0e2c6862abcd5e5f5445261f1fd910d4a9b4\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"375c1934ef0196d3b6d3a1eae3232bef8dae7bf7\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b4b01b4995fb15b55a2d067eb405917f5ab32709\",\"lessThan\":\"4e1a53892ba7f8a3e1da6bfc53c83ae7c812dccd\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"drivers/gpu/drm/virtio/virtgpu_vq.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.0\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.0\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.183\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.148\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.101\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.42\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.6\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H\",\"baseScore\":7.7,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.5,\"impactScore\":5.2}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/2757e6e803092cf0aeaf4b735e16b5d3bdc705c5\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/35be0e2c6862abcd5e5f5445261f1fd910d4a9b4\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/375c1934ef0196d3b6d3a1eae3232bef8dae7bf7\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/3f506a85a905b080cadc029a1651a310479090a6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/4e1a53892ba7f8a3e1da6bfc53c83ae7c812dccd\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/9fc2a017c5d597937e0c28b9a9669844aa796c42\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-13T23:15:32+00:00",
      "cve": "CVE-2026-68255",
      "id": "CVE-2026-68255",
      "initial_release_date": "2026-08-10T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "92",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: drm/virtio: bound EDID block reads to the response buffer",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-68255.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-08-14T23:45:33Z",
      "cve": "CVE-2026-68255",
      "id": "CVE-2026-68255",
      "initial_release_date": "2026-08-14T17:15:13Z",
      "product_status:known_affected": "144",
      "product_status:known_not_affected": "152",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-68255",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-68255.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

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.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…