{
  "schemaVersion": 1,
  "attribution": [
    {
      "source": "CISA Known Exploited Vulnerabilities",
      "url": "https://www.cisa.gov/known-exploited-vulnerabilities-catalog",
      "licence": "US government work"
    },
    {
      "source": "GitHub Advisory Database",
      "url": "https://github.com/advisories",
      "licence": "CC BY 4.0"
    },
    {
      "source": "Have I Been Pwned",
      "url": "https://haveibeenpwned.com/",
      "licence": "CC BY 4.0"
    },
    {
      "source": "CVE Program (CVE records)",
      "url": "https://www.cve.org/Legal/TermsOfUse",
      "licence": "CVE Terms of Use",
      "notice": "Copyright © 1999-2026, The MITRE Corporation. CVE is a trademark and the CVE logo is a registered trademark of The MITRE Corporation.",
      "terms": "CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE™). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy."
    },
    {
      "source": "FIRST EPSS",
      "url": "https://www.first.org/epss/",
      "licence": "free to use; FIRST requests attribution"
    }
  ],
  "record": {
    "id": "CVE-2026-74575",
    "sourceURL": "https://www.cve.org/CVERecord?id=CVE-2026-74575",
    "idYear": 2026,
    "status": "PUBLISHED",
    "publishedAt": "2026-08-15T12:28:13.187Z",
    "updatedAt": "2026-10-16T19:05:57.276Z",
    "importedAt": "2026-10-24T01:58:30.346Z",
    "snapshot": {
      "id": "cve_2026-10-24_midnight_baseline",
      "at": "2026-10-24T00:00:00.000Z",
      "source": "https://github.com/CVEProject/cvelistV5/releases/tag/cve_2026-10-24_0100Z"
    },
    "facts": {
      "title": "thunderbolt: Prevent XDomain delayed work use-after-free on disconnect",
      "summary": "In the Linux kernel, the following vulnerability has been resolved:\n\nthunderbolt: Prevent XDomain delayed work use-after-free on disconnect\n\ntb_xdp_handle_request() runs on system_wq and queues\nxd->state_work via queue_delayed_work() in three request handlers:\nPROPERTIES_CHANGED_REQUEST, UUID_REQUEST (via start_handshake),\nand LINK_STATE_CHANGE_REQUEST.  Similarly, update_xdomain() queues\nxd->properties_changed_work when local properties change.\n\nConcurrently, tb_xdomain_remove() calls stop_handshake() which does\ncancel_delayed_work_sync() on both delayed works.  Later,\ntb_xdomain_unregister() calls device_unregister() which eventually\nfrees the xdomain.  Since commit 559c1e1e0134 (\"thunderbolt: Run\ntb_xdp_handle_request() in system workqueue\") moved the request\nhandler off tb->wq, the handler and the remove path are no longer\nserialized.  If queue_delayed_work() executes after\ncancel_delayed_work_sync() but before the xdomain is freed, the\ndelayed work fires on a freed object.\n\nAdd xd->removing that tb_xdomain_remove() sets under xd->lock\nbefore calling stop_handshake().  Each external queue site holds\nthe same lock and checks removing before calling\nqueue_delayed_work().  This provides the mutual exclusion needed:\neither the queue site acquires the lock first and queues work that\nthe subsequent cancel will see, or the remove path acquires the\nlock first and the queue site observes removing == true and skips\nthe queue.",
      "affected": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "versions": [
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "d4fa0d544c04dea636bf821ff5582cd7d63e2c34"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "cfbd2dba3d862c9be8c92bea2a357d9ed828a54a"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "dc11d5118f9da6ea28487ffe055de5a0d0734125"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "91b40862a02000f490b63f1d315be3ee31e83871"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "33c0ee18cf8665c974b00f4e0ba769fbc07efe10"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "54a62153c765cd24239cde1f2633f2a2fd005368"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "2aa2cde2cc79a79d8ea4a15be9f4a67fc528ae91"
            },
            {
              "version": "559c1e1e013437bf190469efbcbd8bc803285853",
              "status": "affected",
              "versionType": "git",
              "lessThan": "2c5d2d3c3f70cde2565d7b279b544893a2035842"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "versions": [
            {
              "version": "5.2",
              "status": "affected"
            },
            {
              "version": "0",
              "status": "unaffected",
              "versionType": "semver",
              "lessThan": "5.2"
            },
            {
              "version": "5.10.266",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.10.*"
            },
            {
              "version": "5.15.217",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "5.15.*"
            },
            {
              "version": "6.1.184",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.1.*"
            },
            {
              "version": "6.6.151",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.6.*"
            },
            {
              "version": "6.12.103",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.12.*"
            },
            {
              "version": "6.18.44",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "6.18.*"
            },
            {
              "version": "7.1.8",
              "status": "unaffected",
              "versionType": "semver",
              "lessThanOrEqual": "7.1.*"
            },
            {
              "version": "7.2",
              "status": "unaffected",
              "versionType": "original_commit_for_fix",
              "lessThanOrEqual": "*"
            }
          ]
        }
      ]
    }
  }
}