GHSA-3F5P-6W75-PPF6

Vulnerability from github – Published: 2026-07-19 12:30 – Updated: 2026-07-19 12:30
VLAI
Details

In the Linux kernel, the following vulnerability has been resolved:

vc_screen: fix null-ptr-deref in vcs_notifier() during concurrent vcs_write

A KASAN null-ptr-deref was observed in vcs_notifier():

BUG: KASAN: null-ptr-deref in vcs_notifier+0x98/0x130 Read of size 2 at addr qmp_cmd_name: qmp_capabilities, arguments: {}

The issue is a race condition in vcs_write(). When the console_lock is temporarily dropped (to copy data from userspace), the vc_data pointer obtained from vcs_vc() may become stale. After re-acquiring the lock, vcs_vc() is called again to re-validate the pointer. If the vc has been deallocated in the meantime, vcs_vc() returns NULL, and the while loop breaks (with written > 0). However, after the loop, vcs_scr_updated(vc) is still called with the now-NULL vc pointer, leading to a null pointer dereference in the notifier chain (vcs_notifier dereferences param->vc).

Fix this by adding a NULL check for vc before calling vcs_scr_updated().

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-53385"
  ],
  "database_specific": {
    "cwe_ids": [],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-07-19T12:16:49Z",
    "severity": null
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nvc_screen: fix null-ptr-deref in vcs_notifier() during concurrent vcs_write\n\nA KASAN null-ptr-deref was observed in vcs_notifier():\n\nBUG: KASAN: null-ptr-deref in vcs_notifier+0x98/0x130\nRead of size 2 at addr qmp_cmd_name: qmp_capabilities, arguments: {}\n\nThe issue is a race condition in vcs_write(). When the console_lock is\ntemporarily dropped (to copy data from userspace), the vc_data pointer\nobtained from vcs_vc() may become stale. After re-acquiring the lock,\nvcs_vc() is called again to re-validate the pointer. If the vc has been\ndeallocated in the meantime, vcs_vc() returns NULL, and the while loop\nbreaks (with written \u003e 0). However, after the loop, vcs_scr_updated(vc)\nis still called with the now-NULL vc pointer, leading to a null pointer\ndereference in the notifier chain (vcs_notifier dereferences param-\u003evc).\n\nFix this by adding a NULL check for vc before calling vcs_scr_updated().",
  "id": "GHSA-3f5p-6w75-ppf6",
  "modified": "2026-07-19T12:30:22Z",
  "published": "2026-07-19T12:30:22Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-53385"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/09a43e81279b8da15526da09877134b8bcf618b0"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/43a6281790273c1b0a9ab76609ff0245b968f1e6"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/73049768ad57145acd337102c5aa3c788e6642c8"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/74be188eb2dc1c99d63986167b9a67d415fe7326"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/7cc3dd79777f6ae4625ec37e84dd18a26dc88bde"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/8232fca738011ca2ec865b46ec721d1796dc0580"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/a287620312dc6dcb9a093417a0e589bf30fcf38a"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b6bbb85cf45bf0b070e741997fe0af3a772c5ad5"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/ff4806202749a51938236214adc0281481a57366"
    }
  ],
  "schema_version": "1.4.0",
  "severity": []
}



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…