CVE-2026-80741 (GCVE-0-2026-80741)

Vulnerability from cvelistv5 – Published: 2026-09-03 08:26 – Updated: 2026-09-04 04:58
VLAI
Title
drm/log: Fix out-of-bounds read on empty message length
Summary
In the Linux kernel, the following vulnerability has been resolved: drm/log: Fix out-of-bounds read on empty message length drm_log_draw_kmsg_record() accesses s[len - 1] to strip the trailing newline, but len is unsigned int. If len is 0, the subtraction wraps to UINT_MAX, causing an out-of-bounds read. Add an early return when len is 0.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 25e2c2a3eff55683bbe77b108db2a7e389246666 , < 16a2716910ecf7d31bf3c033ee7c506a0b00b2ee (git)
Affected: 25e2c2a3eff55683bbe77b108db2a7e389246666 , < 16bcea56f4205314ec2aa04a7ec74e5261d253c7 (git)
Affected: 25e2c2a3eff55683bbe77b108db2a7e389246666 , < 60baa179ed1333535f6e2da4133511db55278ee4 (git)
guessed Create a notification for this product.
Linux Linux Affected: 6.14
Unaffected: 0 , < 6.14 (semver)
Unaffected: 6.18.46 , ≤ 6.18.* (semver)
Unaffected: 7.1.10 , ≤ 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/clients/drm_log.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "16a2716910ecf7d31bf3c033ee7c506a0b00b2ee",
              "status": "affected",
              "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
              "versionType": "git"
            },
            {
              "lessThan": "16bcea56f4205314ec2aa04a7ec74e5261d253c7",
              "status": "affected",
              "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
              "versionType": "git"
            },
            {
              "lessThan": "60baa179ed1333535f6e2da4133511db55278ee4",
              "status": "affected",
              "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "drivers/gpu/drm/clients/drm_log.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.14"
            },
            {
              "lessThan": "6.14",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.46",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.10",
              "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.18.46",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.10",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.14",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/log: Fix out-of-bounds read on empty message length\n\ndrm_log_draw_kmsg_record() accesses s[len - 1] to strip the trailing\nnewline, but len is unsigned int. If len is 0, the subtraction wraps\nto UINT_MAX, causing an out-of-bounds read.\n\nAdd an early return when len is 0."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.1,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is in drm_log, an in-kernel DRM boot console that renders printk records to the framebuffer; it is only reached from the local printk/nbcon console path, not from any network protocol or physical bus.\nAC:L - Once CONFIG_DRM_CLIENT_LOG is active (common on embedded/kiosk displays), a local actor can drive printk/console output; if a zero-length record is delivered to drm_log_draw_kmsg_record(), the unsigned wrap to UINT_MAX makes the OOB read deterministic rather than race-dependent.\nPR:L - No root or DRM master is required to reach the console printk path; unprivileged local processes routinely trigger kernel logging via syscalls and /dev/kmsg (CAP_SYSLOG is obtainable in user namespaces), and drm_log only refuses to draw when a userspace DRM master is already held.\nUI:N - Exploitation does not require any victim to click, mount, or open a file; it is triggered automatically when the kernel console layer emits a qualifying (including zero-length) message to the drm_log nbcon handler.\nS:U - Impact stays within kernel context on the same machine (display logger crash/OOB read); it does not cross a VM, container, or IOMMU security boundary.\nC:H - With len=0, s[len-1] indexes s[UINT_MAX-1], an unbounded out-of-bounds kernel read; per kernel CVSS guidance, OOB reads are rated High even when the immediate fault dominates.\nI:N - The defect is a read-side integer underflow only; it does not corrupt or write adjacent memory and provides no direct arbitrary-write or code-execution primitive.\nA:H - Reading at offset UINT_MAX from the printk outbuf is virtually certain to fault the console thread with a kernel oops/panic, denying display and potentially halting the system on embedded drm_log deployments."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-04T04:58:24.919Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/16a2716910ecf7d31bf3c033ee7c506a0b00b2ee"
        },
        {
          "url": "https://git.kernel.org/stable/c/16bcea56f4205314ec2aa04a7ec74e5261d253c7"
        },
        {
          "url": "https://git.kernel.org/stable/c/60baa179ed1333535f6e2da4133511db55278ee4"
        }
      ],
      "title": "drm/log: Fix out-of-bounds read on empty message length",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-80741",
    "datePublished": "2026-09-03T08:26:25.322Z",
    "dateReserved": "2026-08-26T14:34:25.790Z",
    "dateUpdated": "2026-09-04T04:58:24.919Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-80741",
      "date": "2026-09-21",
      "epss": "0.00157",
      "percentile": "0.0527"
    },
    "nvd": {
      "cve": {
        "affected": [
          {
            "affectedData": [
              {
                "defaultStatus": "unaffected",
                "product": "Linux",
                "programFiles": [
                  "drivers/gpu/drm/clients/drm_log.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "lessThan": "16a2716910ecf7d31bf3c033ee7c506a0b00b2ee",
                    "status": "affected",
                    "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "16bcea56f4205314ec2aa04a7ec74e5261d253c7",
                    "status": "affected",
                    "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
                    "versionType": "git"
                  },
                  {
                    "lessThan": "60baa179ed1333535f6e2da4133511db55278ee4",
                    "status": "affected",
                    "version": "25e2c2a3eff55683bbe77b108db2a7e389246666",
                    "versionType": "git"
                  }
                ]
              },
              {
                "defaultStatus": "affected",
                "product": "Linux",
                "programFiles": [
                  "drivers/gpu/drm/clients/drm_log.c"
                ],
                "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
                "vendor": "Linux",
                "versions": [
                  {
                    "status": "affected",
                    "version": "6.14"
                  },
                  {
                    "lessThan": "6.14",
                    "status": "unaffected",
                    "version": "0",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "6.18.*",
                    "status": "unaffected",
                    "version": "6.18.46",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "7.1.*",
                    "status": "unaffected",
                    "version": "7.1.10",
                    "versionType": "semver"
                  },
                  {
                    "lessThanOrEqual": "*",
                    "status": "unaffected",
                    "version": "7.2",
                    "versionType": "original_commit_for_fix"
                  }
                ]
              }
            ],
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
          }
        ],
        "cveTags": [],
        "descriptions": [
          {
            "lang": "en",
            "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ndrm/log: Fix out-of-bounds read on empty message length\n\ndrm_log_draw_kmsg_record() accesses s[len - 1] to strip the trailing\nnewline, but len is unsigned int. If len is 0, the subtraction wraps\nto UINT_MAX, causing an out-of-bounds read.\n\nAdd an early return when len is 0."
          }
        ],
        "id": "CVE-2026-80741",
        "lastModified": "2026-09-04T05:17:14.470",
        "metrics": {
          "cvssMetricV31": [
            {
              "cvssData": {
                "attackComplexity": "LOW",
                "attackVector": "LOCAL",
                "availabilityImpact": "HIGH",
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "confidentialityImpact": "HIGH",
                "integrityImpact": "NONE",
                "privilegesRequired": "LOW",
                "scope": "UNCHANGED",
                "userInteraction": "NONE",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "exploitabilityScore": 1.8,
              "impactScore": 5.2,
              "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
              "type": "Secondary"
            }
          ]
        },
        "published": "2026-09-03T13:06:13.317",
        "references": [
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/16a2716910ecf7d31bf3c033ee7c506a0b00b2ee"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/16bcea56f4205314ec2aa04a7ec74e5261d253c7"
          },
          {
            "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "url": "https://git.kernel.org/stable/c/60baa179ed1333535f6e2da4133511db55278ee4"
          }
        ],
        "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "vulnStatus": "Received"
      }
    }
  }
}



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…

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.


Loading…