CVE-2026-74614 (GCVE-0-2026-74614)

Vulnerability from cvelistv5 – Published: 2026-08-22 15:31 – Updated: 2026-08-25 05:40
VLAI
Title
vsock/virtio: read virtqueues under worker locks
Summary
In the Linux kernel, the following vulnerability has been resolved: vsock/virtio: read virtqueues under worker locks Commit bd50c5dc182b ("vsock/virtio: add support for device suspend/resume") made the *_run flags transition from false to true when restore installs replacement virtqueues. The RX, TX and event workers read their virtqueue before locking and checking the corresponding flag, so a worker delayed across freeze and restore can observe the replacement queue's running state while retaining a pointer to the deleted queue. Read each virtqueue under its mutex after checking the run flag, keeping the pointer and state in the same queue generation.
Impacted products
Vendor Product Version CPE status
Linux Linux Affected: 762c251c7f5c4ee5bef71460c6e822ed293fd69f , < 941329ce14c5f481223a10d1d4c8b57ea7f3048a (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < 29dd10583bf9d2744cd84b862e4257c0a5699570 (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < a1fb0c5b8a7c2753758aeced40971f99449dde0c (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < eae099c764c7ebdb842eb1f638913e310bdd6513 (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < bd43a7ec668be428265b3209eb43647aedcf720a (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < 1cecb4202afdbeddcf29d59baf596ac6ab753f7f (git)
Affected: bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c , < ebac8f6b1ef0e9278afe204b8692a7479988dace (git)
Affected: 5.15.138 , < 5.15.216 (semver)
guessed Create a notification for this product.
Linux Linux Affected: 5.19
Unaffected: 0 , < 5.19 (semver)
Unaffected: 5.15.216 , ≤ 5.15.* (semver)
Unaffected: 6.1.183 , ≤ 6.1.* (semver)
Unaffected: 6.6.152 , ≤ 6.6.* (semver)
Unaffected: 6.12.104 , ≤ 6.12.* (semver)
Unaffected: 6.18.45 , ≤ 6.18.* (semver)
Unaffected: 7.1.9 , ≤ 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": [
            "net/vmw_vsock/virtio_transport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "941329ce14c5f481223a10d1d4c8b57ea7f3048a",
              "status": "affected",
              "version": "762c251c7f5c4ee5bef71460c6e822ed293fd69f",
              "versionType": "git"
            },
            {
              "lessThan": "29dd10583bf9d2744cd84b862e4257c0a5699570",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "a1fb0c5b8a7c2753758aeced40971f99449dde0c",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "eae099c764c7ebdb842eb1f638913e310bdd6513",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "bd43a7ec668be428265b3209eb43647aedcf720a",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "1cecb4202afdbeddcf29d59baf596ac6ab753f7f",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "ebac8f6b1ef0e9278afe204b8692a7479988dace",
              "status": "affected",
              "version": "bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c",
              "versionType": "git"
            },
            {
              "lessThan": "5.15.216",
              "status": "affected",
              "version": "5.15.138",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/vmw_vsock/virtio_transport.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "5.19"
            },
            {
              "lessThan": "5.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "5.15.*",
              "status": "unaffected",
              "version": "5.15.216",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.183",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.152",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.104",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.45",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.9",
              "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": "5.15.216",
                  "versionStartIncluding": "5.15.138",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.183",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.152",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.104",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.45",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.9",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "5.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nvsock/virtio: read virtqueues under worker locks\n\nCommit bd50c5dc182b (\"vsock/virtio: add support for device\nsuspend/resume\") made the *_run flags transition from false to true when\nrestore installs replacement virtqueues.  The RX, TX and event workers\nread their virtqueue before locking and checking the corresponding flag,\nso a worker delayed across freeze and restore can observe the replacement\nqueue\u0027s running state while retaining a pointer to the deleted queue.\n\nRead each virtqueue under its mutex after checking the run flag, keeping\nthe pointer and state in the same queue generation."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 8.4,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - The bug is in the guest virtio-vsock driver reached via AF_VSOCK sockets and virtio virtqueue completions, not via routable network protocols; per kernel CNA guidance vsock and virtio guest-driver bugs are scored Local even when the hypervisor is the peer.\nAC:L - An attacker or malicious host controls both sides of the race by flooding vsock/virtqueue traffic to queue RX/TX/event workers while virtio_vsock_freeze/restore deletes and replaces virtqueues, making the stale pre-lock virtqueue pointer race reliable and repeatable.\nPR:N - No guest privileges are required in the highest-impact scenario: a malicious hypervisor or host-initiated suspend/migrate triggers freeze/restore while virtio completions queue workers, matching confidential-computing models where the host is untrusted and holds no guest credentials.\nUI:N - Vulnerable RX/TX/event workers run automatically from virtqueue IRQ callbacks on a dedicated workqueue; no victim must mount filesystems, open files, or take deliberate action beyond normal virtio-vsock device operation and VM lifecycle events.\nS:U - Corruption is confined to the guest kernel virtio-vsock driver; exploited impact stays within the guest security boundary and does not cross to the hypervisor (guest-to-host escape would involve vhost-vsock on the host, not this guest-side driver).\nC:H - Use-after-free of a deleted virtqueue: virtqueue_disable_cb, virtqueue_get_buf, and virtqueue_enable_cb dereference freed vring_virtqueue slab memory, enabling attacker-controlled reuse and arbitrary kernel memory disclosure typical of virtio UAF bugs.\nI:H - Corrupted virtqueue metadata permits out-of-bounds ring/index manipulation and further virtqueue operations, furnishing heap corruption and arbitrary-write primitives suitable for guest ring-0 code execution and privilege escalation.\nA:H - Operating on freed virtqueues triggers KASAN slab-use-after-free and kernel BUG/oops/panic (as in the related virtio-vsock freeze bug CVE-2026-74613), fully denying guest availability even when full exploitation is not attempted."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-25T05:40:40.984Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/941329ce14c5f481223a10d1d4c8b57ea7f3048a"
        },
        {
          "url": "https://git.kernel.org/stable/c/29dd10583bf9d2744cd84b862e4257c0a5699570"
        },
        {
          "url": "https://git.kernel.org/stable/c/a1fb0c5b8a7c2753758aeced40971f99449dde0c"
        },
        {
          "url": "https://git.kernel.org/stable/c/eae099c764c7ebdb842eb1f638913e310bdd6513"
        },
        {
          "url": "https://git.kernel.org/stable/c/bd43a7ec668be428265b3209eb43647aedcf720a"
        },
        {
          "url": "https://git.kernel.org/stable/c/1cecb4202afdbeddcf29d59baf596ac6ab753f7f"
        },
        {
          "url": "https://git.kernel.org/stable/c/ebac8f6b1ef0e9278afe204b8692a7479988dace"
        }
      ],
      "title": "vsock/virtio: read virtqueues under worker locks",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-74614",
    "datePublished": "2026-08-22T15:31:59.800Z",
    "dateReserved": "2026-08-15T05:44:03.920Z",
    "dateUpdated": "2026-08-25T05:40:40.984Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-74614",
      "date": "2026-08-29",
      "epss": "0.00142",
      "percentile": "0.03779"
    },
    "microsoft_vex": {
      "current_release_date": "2026-08-24T14:51:01.000Z",
      "cve": "CVE-2026-74614",
      "id": "msrc_CVE-2026-74614",
      "initial_release_date": "2026-08-24T01:08:15.000Z",
      "product_status:known_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "vsock/virtio: read virtqueues under worker locks",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-74614.json",
      "version": "2"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-74614\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-08-22T16:16:34.023\",\"lastModified\":\"2026-08-25T06:18:39.263\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nvsock/virtio: read virtqueues under worker locks\\n\\nCommit bd50c5dc182b (\\\"vsock/virtio: add support for device\\nsuspend/resume\\\") made the *_run flags transition from false to true when\\nrestore installs replacement virtqueues.  The RX, TX and event workers\\nread their virtqueue before locking and checking the corresponding flag,\\nso a worker delayed across freeze and restore can observe the replacement\\nqueue\u0027s running state while retaining a pointer to the deleted queue.\\n\\nRead each virtqueue under its mutex after checking the run flag, keeping\\nthe pointer and state in the same queue generation.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"net/vmw_vsock/virtio_transport.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"762c251c7f5c4ee5bef71460c6e822ed293fd69f\",\"lessThan\":\"941329ce14c5f481223a10d1d4c8b57ea7f3048a\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"29dd10583bf9d2744cd84b862e4257c0a5699570\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"a1fb0c5b8a7c2753758aeced40971f99449dde0c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"eae099c764c7ebdb842eb1f638913e310bdd6513\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"bd43a7ec668be428265b3209eb43647aedcf720a\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"1cecb4202afdbeddcf29d59baf596ac6ab753f7f\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"bd50c5dc182b0a52599f87b429f9a5a9cbfc9b1c\",\"lessThan\":\"ebac8f6b1ef0e9278afe204b8692a7479988dace\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"5.15.138\",\"lessThan\":\"5.15.216\",\"versionType\":\"semver\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"net/vmw_vsock/virtio_transport.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"5.19\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"5.19\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"5.15.216\",\"lessThanOrEqual\":\"5.15.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.183\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.152\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.104\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.45\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.9\",\"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:H/A:H\",\"baseScore\":8.4,\"baseSeverity\":\"HIGH\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.5,\"impactScore\":5.9}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/1cecb4202afdbeddcf29d59baf596ac6ab753f7f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/29dd10583bf9d2744cd84b862e4257c0a5699570\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/941329ce14c5f481223a10d1d4c8b57ea7f3048a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a1fb0c5b8a7c2753758aeced40971f99449dde0c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/bd43a7ec668be428265b3209eb43647aedcf720a\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/eae099c764c7ebdb842eb1f638913e310bdd6513\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/ebac8f6b1ef0e9278afe204b8692a7479988dace\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Moderate",
      "current_release_date": "2026-08-25T08:51:03+00:00",
      "cve": "CVE-2026-74614",
      "id": "CVE-2026-74614",
      "initial_release_date": "2026-08-22T00:00:00+00:00",
      "product_status:known_affected": "184",
      "product_status:known_not_affected": "90",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: vsock/virtio: read virtqueues under worker locks",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-74614.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…