{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "0ea9e1d3a9e3ef7d2a1462d3de6b95131dc7d872"
            },
            {
              "fixed": "2187a56f2fd1715d54daed6392809223c60544f3"
            },
            {
              "fixed": "165a330a68b5f299d8735f0194c314cb2e571269"
            },
            {
              "fixed": "da5e9f08714c19ba04e6863aca69d40f042f2e04"
            },
            {
              "fixed": "728836ebca239810f164262b10211ef59182f811"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Linux",
        "name": "Kernel"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "4.8.0"
            },
            {
              "fixed": "6.12.109"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.13.0"
            },
            {
              "fixed": "6.18.50"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.2.4"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80932.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nvsock/virtio: flush works in dependency order\n\nvirtio_vsock_remove() stops the virtqueues and then flushes each work\nitem before freeing the enclosing virtio_vsock.  The current order does\nnot account for dependencies between those items: tx_work may queue\nsend_pkt_work, and send_pkt_work may queue rx_work.\n\nIn particular, send_pkt_work can set restart_rx and release tx_lock.\nThe remove path can then stop the queues and flush rx_work before\nsend_pkt_work queues it.  Although the later send_pkt_work flush waits\nfor that producer to finish, nothing waits for the newly queued rx_work,\nso kfree(vsock) can race with it.\n\nKASAN reported:\n\n  BUG: KASAN: slab-use-after-free in\n  virtio_transport_rx_work+0x487/0x4b0\n  Read of size 8 at addr ffff888114c2b008 by task kworker/1:1/47\n  Workqueue: virtio_vsock virtio_transport_rx_work\n  Call Trace:\n   virtio_transport_rx_work+0x487/0x4b0\n   process_one_work+0x688/0x1120\n   worker_thread+0x45b/0xd10\n  Allocated by task 1:\n   virtio_vsock_probe+0xef/0x6b0\n  Freed by task 84:\n   kfree+0x131/0x3c0\n   virtio_vsock_remove+0xd1/0x100\n\nFlush the works in producer-to-consumer order.  virtio_vsock_vqs_del()\nhas already disabled the queue callbacks and cleared the run flags, so\nafter tx_work and send_pkt_work are drained, no source remains that can\nqueue rx_work after its flush.",
  "id": "CVE-2026-80932",
  "modified": "2026-09-13T03:31:01.062493623Z",
  "published": "2026-09-11T19:42:07.012Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/165a330a68b5f299d8735f0194c314cb2e571269"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/2187a56f2fd1715d54daed6392809223c60544f3"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/728836ebca239810f164262b10211ef59182f811"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/da5e9f08714c19ba04e6863aca69d40f042f2e04"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/80xxx/CVE-2026-80932.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-80932"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.9.0",
  "summary": "vsock/virtio: flush works in dependency order"
}