GCVE Workshop - 22 September 2026 (14:00-18:00), Luxembourg Before The Vulnopticon Conference - Registration
Search

Find a vulnerability

Search criteria

    30026 vulnerabilities found for linux_kernel by linux

    CVE-2026-64453 (GCVE-0-2026-64453)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    usb: misc: usbio: fix disconnect UAF in client teardown
    Summary
    In the Linux kernel, the following vulnerability has been resolved: usb: misc: usbio: fix disconnect UAF in client teardown usbio_disconnect() walks usbio->cli_list in reverse and uninitializes each auxiliary device. auxiliary_device_uninit() drops the device reference, and for an unbound child that can run usbio_auxdev_release() and free the containing struct usbio_client. list_for_each_entry_reverse() advances after the loop body by reading client->link.prev. If the current client is freed by auxiliary_device_uninit(), the iterator dereferences freed memory. Use list_for_each_entry_safe_reverse() so the previous client is cached before the body can drop the final reference. This preserves reverse teardown order while keeping the next iterator cursor independent of the current client's lifetime. Validation reproduced this kernel report: BUG: KASAN: slab-use-after-free in usbio_disconnect+0x12e/0x150 Call Trace: <TASK> dump_stack_lvl+0x66/0xa0 print_report+0xce/0x630 ? usbio_disconnect+0x12e/0x150 ? srso_alias_return_thunk+0x5/0xfbef5 ? __virt_addr_valid+0x188/0x320 ? usbio_disconnect+0x12e/0x150 kasan_report+0xe0/0x110 ? usbio_disconnect+0x12e/0x150 usbio_disconnect+0x12e/0x150 usb_unbind_interface+0xf3/0x400 really_probe+0x316/0x660 __driver_probe_device+0x106/0x240 driver_probe_device+0x4a/0x110 __device_attach_driver+0xf1/0x1a0 ? __pfx___device_attach_driver+0x10/0x10 bus_for_each_drv+0xf9/0x160 ? __pfx_bus_for_each_drv+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? trace_hardirqs_on+0x18/0x130 ? srso_alias_return_thunk+0x5/0xfbef5 ? _raw_spin_unlock_irqrestore+0x44/0x60 __device_attach+0x133/0x2a0 ? __pfx___device_attach+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_raw_spin_unlock+0x9a/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 device_initial_probe+0x55/0x70 bus_probe_device+0x4a/0xd0 device_add+0x9b9/0xc10 ? __pfx_device_add+0x10/0x10 ? _raw_spin_unlock_irqrestore+0x44/0x60 ? srso_alias_return_thunk+0x5/0xfbef5 ? lockdep_hardirqs_on_prepare+0xea/0x1a0 ? srso_alias_return_thunk+0x5/0xfbef5 ? usb_enable_lpm+0x3c/0x260 usb_set_configuration+0xb64/0xf20 usb_generic_driver_probe+0x5f/0x90 usb_probe_device+0x71/0x1b0 really_probe+0x46b/0x660 __driver_probe_device+0x106/0x240 driver_probe_device+0x4a/0x110 __device_attach_driver+0xf1/0x1a0 ? __pfx___device_attach_driver+0x10/0x10 bus_for_each_drv+0xf9/0x160 ? __pfx_bus_for_each_drv+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? trace_hardirqs_on+0x18/0x130 ? srso_alias_return_thunk+0x5/0xfbef5 ? _raw_spin_unlock_irqrestore+0x44/0x60 __device_attach+0x133/0x2a0 ? __pfx___device_attach+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? do_raw_spin_unlock+0x9a/0x100 ? srso_alias_return_thunk+0x5/0xfbef5 device_initial_probe+0x55/0x70 bus_probe_device+0x4a/0xd0 device_add+0x9b9/0xc10 ? __pfx_device_add+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? add_device_randomness+0xb7/0xf0 usb_new_device+0x492/0x870 hub_event+0x1b10/0x29c0 ? __pfx_hub_event+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? lock_acquire+0x187/0x300 ? process_one_work+0x475/0xb90 ? srso_alias_return_thunk+0x5/0xfbef5 ? lock_release+0xc8/0x290 ? srso_alias_return_thunk+0x5/0xfbef5 process_one_work+0x4d7/0xb90 ? __pfx_process_one_work+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? srso_alias_return_thunk+0x5/0xfbef5 ? __list_add_valid_or_report+0x37/0xf0 ? __pfx_hub_event+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 worker_thread+0x2d8/0x570 ? __pfx_worker_thread+0x10/0x10 kthread+0x1ad/0x1f0 ? __pfx_kthread+0x10/0x10 ret_from_fork+0x3c9/0x540 ? __pfx_ret_from_fork+0x10/0x10 ? srso_alias_return_thunk+0x5/0xfbef5 ? __switch_to+0x2e9/0x730 ? __pfx_kthread+0x10/0x10 ret_from_fork_asm+0x1a/0x30 </TASK>
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 121a0f839dbb397af5fabb701cea3e9983223e50 , < c40090f8d19b415e2925b22be964b5d1f695666f (git)
    Affected: 121a0f839dbb397af5fabb701cea3e9983223e50 , < 1947b6411460d68b54b13c536961933166937d05 (git)
    Affected: 121a0f839dbb397af5fabb701cea3e9983223e50 , < 0bfeec21984fedd32987f4e4c0cde34b445af404 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.18
    Unaffected: 0 , < 6.18 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/usb/misc/usbio.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "c40090f8d19b415e2925b22be964b5d1f695666f",
                  "status": "affected",
                  "version": "121a0f839dbb397af5fabb701cea3e9983223e50",
                  "versionType": "git"
                },
                {
                  "lessThan": "1947b6411460d68b54b13c536961933166937d05",
                  "status": "affected",
                  "version": "121a0f839dbb397af5fabb701cea3e9983223e50",
                  "versionType": "git"
                },
                {
                  "lessThan": "0bfeec21984fedd32987f4e4c0cde34b445af404",
                  "status": "affected",
                  "version": "121a0f839dbb397af5fabb701cea3e9983223e50",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/usb/misc/usbio.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.18"
                },
                {
                  "lessThan": "6.18",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.39",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.18",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nusb: misc: usbio: fix disconnect UAF in client teardown\n\nusbio_disconnect() walks usbio-\u003ecli_list in reverse and uninitializes each\nauxiliary device. auxiliary_device_uninit() drops the device reference, and\nfor an unbound child that can run usbio_auxdev_release() and free the\ncontaining struct usbio_client.\n\nlist_for_each_entry_reverse() advances after the loop body by reading\nclient-\u003elink.prev. If the current client is freed by\nauxiliary_device_uninit(), the iterator dereferences freed memory.\n\nUse list_for_each_entry_safe_reverse() so the previous client is\ncached before the body can drop the final reference. This preserves\nreverse teardown order while keeping the next iterator cursor independent\nof the current client\u0027s lifetime.\n\nValidation reproduced this kernel report:\nBUG: KASAN: slab-use-after-free in usbio_disconnect+0x12e/0x150\n\nCall Trace:\n \u003cTASK\u003e\n dump_stack_lvl+0x66/0xa0\n print_report+0xce/0x630\n ? usbio_disconnect+0x12e/0x150\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? __virt_addr_valid+0x188/0x320\n ? usbio_disconnect+0x12e/0x150\n kasan_report+0xe0/0x110\n ? usbio_disconnect+0x12e/0x150\n usbio_disconnect+0x12e/0x150\n usb_unbind_interface+0xf3/0x400\n really_probe+0x316/0x660\n __driver_probe_device+0x106/0x240\n driver_probe_device+0x4a/0x110\n __device_attach_driver+0xf1/0x1a0\n ? __pfx___device_attach_driver+0x10/0x10\n bus_for_each_drv+0xf9/0x160\n ? __pfx_bus_for_each_drv+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? trace_hardirqs_on+0x18/0x130\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? _raw_spin_unlock_irqrestore+0x44/0x60\n __device_attach+0x133/0x2a0\n ? __pfx___device_attach+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? do_raw_spin_unlock+0x9a/0x100\n ? srso_alias_return_thunk+0x5/0xfbef5\n device_initial_probe+0x55/0x70\n bus_probe_device+0x4a/0xd0\n device_add+0x9b9/0xc10\n ? __pfx_device_add+0x10/0x10\n ? _raw_spin_unlock_irqrestore+0x44/0x60\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? lockdep_hardirqs_on_prepare+0xea/0x1a0\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? usb_enable_lpm+0x3c/0x260\n usb_set_configuration+0xb64/0xf20\n usb_generic_driver_probe+0x5f/0x90\n usb_probe_device+0x71/0x1b0\n really_probe+0x46b/0x660\n __driver_probe_device+0x106/0x240\n driver_probe_device+0x4a/0x110\n __device_attach_driver+0xf1/0x1a0\n ? __pfx___device_attach_driver+0x10/0x10\n bus_for_each_drv+0xf9/0x160\n ? __pfx_bus_for_each_drv+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? trace_hardirqs_on+0x18/0x130\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? _raw_spin_unlock_irqrestore+0x44/0x60\n __device_attach+0x133/0x2a0\n ? __pfx___device_attach+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? do_raw_spin_unlock+0x9a/0x100\n ? srso_alias_return_thunk+0x5/0xfbef5\n device_initial_probe+0x55/0x70\n bus_probe_device+0x4a/0xd0\n device_add+0x9b9/0xc10\n ? __pfx_device_add+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? add_device_randomness+0xb7/0xf0\n usb_new_device+0x492/0x870\n hub_event+0x1b10/0x29c0\n ? __pfx_hub_event+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? lock_acquire+0x187/0x300\n ? process_one_work+0x475/0xb90\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? lock_release+0xc8/0x290\n ? srso_alias_return_thunk+0x5/0xfbef5\n process_one_work+0x4d7/0xb90\n ? __pfx_process_one_work+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? __list_add_valid_or_report+0x37/0xf0\n ? __pfx_hub_event+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n worker_thread+0x2d8/0x570\n ? __pfx_worker_thread+0x10/0x10\n kthread+0x1ad/0x1f0\n ? __pfx_kthread+0x10/0x10\n ret_from_fork+0x3c9/0x540\n ? __pfx_ret_from_fork+0x10/0x10\n ? srso_alias_return_thunk+0x5/0xfbef5\n ? __switch_to+0x2e9/0x730\n ? __pfx_kthread+0x10/0x10\n ret_from_fork_asm+0x1a/0x30\n \u003c/TASK\u003e"
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:57.317Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/c40090f8d19b415e2925b22be964b5d1f695666f"
            },
            {
              "url": "https://git.kernel.org/stable/c/1947b6411460d68b54b13c536961933166937d05"
            },
            {
              "url": "https://git.kernel.org/stable/c/0bfeec21984fedd32987f4e4c0cde34b445af404"
            }
          ],
          "title": "usb: misc: usbio: fix disconnect UAF in client teardown",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64453",
        "datePublished": "2026-07-25T08:51:22.478Z",
        "dateReserved": "2026-07-19T15:36:31.789Z",
        "dateUpdated": "2026-08-17T04:55:57.317Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64452 (GCVE-0-2026-64452)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    6lowpan: fix NHC entry use-after-free on error path
    Summary
    In the Linux kernel, the following vulnerability has been resolved: 6lowpan: fix NHC entry use-after-free on error path lowpan_nhc_do_uncompression() looks up an NHC descriptor while holding lowpan_nhc_lock. If the descriptor has no uncompress callback, the error path drops the lock before printing nhc->name. lowpan_nhc_del() removes descriptors under the same lock and then relies on synchronize_net() before the owning module can be unloaded. That only waits for net RX RCU readers. lowpan_header_decompress() is also exported and can be reached from callers that are not necessarily covered by the net core RX critical section, for example the Bluetooth 6LoWPAN L2CAP receive path. This leaves a race where one task drops lowpan_nhc_lock in the error path, another task unregisters and frees the matching descriptor after synchronize_net() returns, and the first task then dereferences nhc->name for the warning. With the post-unlock window widened, KASAN reports: BUG: KASAN: slab-use-after-free in lowpan_nhc_do_uncompression+0x1f4/0x220 Read of size 8 lowpan_nhc_do_uncompression lowpan_header_decompress Fix this by printing the warning before dropping lowpan_nhc_lock, so the descriptor name is read while unregister is still excluded. The malformed packet is still rejected with -ENOTSUPP.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < 9c2f5c0829a8c8b904dae36be6d8056b719ac605 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < 80b5c8779acee0550845394fb3e5176a398aa24c (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < cc27aea4d454abfb385ee2c9499c78b96db9b728 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < a8e3a94711134e898c6021a6b77374efa91b3639 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < 593b78bb3c7ef0c6e9ae6fdf5afa80a5f7573168 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < 0beccbcf50de125be5520d0ffc59af4bb8655482 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < b713aa0cc344f10f7a9928a230b5f5e780d04078 (git)
    Affected: 92aa7c65d295f3cbb96904afe335f683e55584b8 , < 1720db928e5a58ca7d75ac1d514c3b73fd7061a7 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.1
    Unaffected: 0 , < 4.1 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "net/6lowpan/nhc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "9c2f5c0829a8c8b904dae36be6d8056b719ac605",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "80b5c8779acee0550845394fb3e5176a398aa24c",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "cc27aea4d454abfb385ee2c9499c78b96db9b728",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "a8e3a94711134e898c6021a6b77374efa91b3639",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "593b78bb3c7ef0c6e9ae6fdf5afa80a5f7573168",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "0beccbcf50de125be5520d0ffc59af4bb8655482",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "b713aa0cc344f10f7a9928a230b5f5e780d04078",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                },
                {
                  "lessThan": "1720db928e5a58ca7d75ac1d514c3b73fd7061a7",
                  "status": "affected",
                  "version": "92aa7c65d295f3cbb96904afe335f683e55584b8",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "net/6lowpan/nhc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.1"
                },
                {
                  "lessThan": "4.1",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.1",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\n6lowpan: fix NHC entry use-after-free on error path\n\nlowpan_nhc_do_uncompression() looks up an NHC descriptor while holding\nlowpan_nhc_lock.  If the descriptor has no uncompress callback, the error\npath drops the lock before printing nhc-\u003ename.\n\nlowpan_nhc_del() removes descriptors under the same lock and then relies\non synchronize_net() before the owning module can be unloaded.  That only\nwaits for net RX RCU readers.  lowpan_header_decompress() is also exported\nand can be reached from callers that are not necessarily covered by the net\ncore RX critical section, for example the Bluetooth 6LoWPAN L2CAP receive\npath.\n\nThis leaves a race where one task drops lowpan_nhc_lock in the error path,\nanother task unregisters and frees the matching descriptor after\nsynchronize_net() returns, and the first task then dereferences nhc-\u003ename\nfor the warning.\n\nWith the post-unlock window widened, KASAN reports:\n\n  BUG: KASAN: slab-use-after-free in lowpan_nhc_do_uncompression+0x1f4/0x220\n  Read of size 8\n  lowpan_nhc_do_uncompression\n  lowpan_header_decompress\n\nFix this by printing the warning before dropping lowpan_nhc_lock, so the\ndescriptor name is read while unregister is still excluded.  The malformed\npacket is still rejected with -ENOTSUPP."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - An adjacent Bluetooth LE peer can deliver a crafted IPHC/NHC frame through the unauthenticated L2CAP IPSP receive path to the vulnerable decompressor.\nAC:H - Exploitation requires the matching loadable NHC descriptor to be unregistered and freed during the tiny post-unlock window, and the adjacent attacker cannot independently force that module-unload side of the race.\nPR:N - The Bluetooth packet-processing path requires no attacker privileges or authenticated pairing because the IPSP channel uses BT_SECURITY_LOW; CAP_SYS_MODULE belongs to the victim-side unload actor.\nUI:R - Successful triggering requires a victim administrator or module-management action to unload the matching NHC module while the malicious packet is being processed.\nS:U - The vulnerability compromises the affected host kernel without crossing a separate virtualization, IOMMU, or security-authority boundary.\nC:H - The freed descriptor\u0027s name pointer is dereferenced as a string, so reused contents can cause an unbounded kernel-memory read and disclosure through the kernel log.\nI:H - As a kernel-space use-after-free, freed-object replacement is conservatively treated as potentially enabling memory-corruption or control-flow compromise.\nA:H - Dereferencing an invalid freed descriptor or string pointer can produce a kernel oops or panic and render the system unavailable."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:56.222Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/9c2f5c0829a8c8b904dae36be6d8056b719ac605"
            },
            {
              "url": "https://git.kernel.org/stable/c/80b5c8779acee0550845394fb3e5176a398aa24c"
            },
            {
              "url": "https://git.kernel.org/stable/c/cc27aea4d454abfb385ee2c9499c78b96db9b728"
            },
            {
              "url": "https://git.kernel.org/stable/c/a8e3a94711134e898c6021a6b77374efa91b3639"
            },
            {
              "url": "https://git.kernel.org/stable/c/593b78bb3c7ef0c6e9ae6fdf5afa80a5f7573168"
            },
            {
              "url": "https://git.kernel.org/stable/c/0beccbcf50de125be5520d0ffc59af4bb8655482"
            },
            {
              "url": "https://git.kernel.org/stable/c/b713aa0cc344f10f7a9928a230b5f5e780d04078"
            },
            {
              "url": "https://git.kernel.org/stable/c/1720db928e5a58ca7d75ac1d514c3b73fd7061a7"
            }
          ],
          "title": "6lowpan: fix NHC entry use-after-free on error path",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64452",
        "datePublished": "2026-07-25T08:51:21.754Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:56.222Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64451 (GCVE-0-2026-64451)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    tracing: Fix NULL pointer dereference in func_set_flag()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: tracing: Fix NULL pointer dereference in func_set_flag() func_set_flag() dereferences tr->current_trace_flags before verifying that the current tracer is actually the function tracer. When the active tracer has been switched away from "function" (e.g., to "wakeup_rt"), tr->current_trace_flags can be NULL, leading to a NULL pointer dereference and kernel crash. The call chain that triggers this is: trace_options_write() -> __set_tracer_option() -> trace->set_flag() /* func_set_flag */ In func_set_flag(), the first operation is: if (!!set == !!(tr->current_trace_flags->val & bit)) This dereferences tr->current_trace_flags unconditionally. The safety check that guards against a non-function tracer: if (tr->current_trace != &function_trace) return 0; is placed *after* the dereference, which is too late. This was observed with the following crash dump: BUG: unable to handle page fault at 0000000000000000 RIP: func_set_flag+0xd Call Trace: __set_tracer_option+0x27 trace_options_write+0x75 vfs_write+0x12a ksys_write+0x66 do_syscall_64+0x5b RIP: ffffffff914c973d RSP: ff67ec88b01dfdf0 RFLAGS: 00010202 RAX: 0000000000000000 RBX: ff3a826e80354580 RCX: 0000000000000001 RDX: 0000000000000001 RSI: 0000000000000000 RDI: ffffffff93918080 The disassembly confirms the fault: func_set_flag+0: mov 0x1f08(%rdi), %rax ; RAX = tr->current_trace_flags = NULL func_set_flag+13: mov (%rax), %eax ; page fault: dereference NULL At the time of the crash: tr->current_trace_flags = 0x0 (NULL) tr->current_trace = wakeup_rt_tracer (not function_trace) The scenario is that a process opens a function tracer option file (such as "func_stack_trace"), then the current tracer is switched to another tracer (e.g., "wakeup_rt"), which sets current_trace_flags to NULL. When the process subsequently writes to the option file, func_set_flag() is invoked and crashes on the NULL dereference. Fix this by moving the current_trace check before the current_trace_flags dereference, so that func_set_flag() returns early when the function tracer is not active.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 76680d0d2825900f23bf35290ab2b80bdf3a8e4a , < 69f17ac132a38974cf1defb480cef6b79d1ab768 (git)
    Affected: 76680d0d2825900f23bf35290ab2b80bdf3a8e4a , < c3e94604675e3db186111b8942650d86577df9b0 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.19
    Unaffected: 0 , < 6.19 (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "kernel/trace/trace_functions.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "69f17ac132a38974cf1defb480cef6b79d1ab768",
                  "status": "affected",
                  "version": "76680d0d2825900f23bf35290ab2b80bdf3a8e4a",
                  "versionType": "git"
                },
                {
                  "lessThan": "c3e94604675e3db186111b8942650d86577df9b0",
                  "status": "affected",
                  "version": "76680d0d2825900f23bf35290ab2b80bdf3a8e4a",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "kernel/trace/trace_functions.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.19"
                },
                {
                  "lessThan": "6.19",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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": "7.1.4",
                      "versionStartIncluding": "6.19",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.19",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntracing: Fix NULL pointer dereference in func_set_flag()\n\nfunc_set_flag() dereferences tr-\u003ecurrent_trace_flags before verifying\nthat the current tracer is actually the function tracer. When the active\ntracer has been switched away from \"function\" (e.g., to \"wakeup_rt\"),\ntr-\u003ecurrent_trace_flags can be NULL, leading to a NULL pointer\ndereference and kernel crash.\n\nThe call chain that triggers this is:\n\n  trace_options_write()\n    -\u003e __set_tracer_option()\n      -\u003e trace-\u003eset_flag()          /* func_set_flag */\n\nIn func_set_flag(), the first operation is:\n\n  if (!!set == !!(tr-\u003ecurrent_trace_flags-\u003eval \u0026 bit))\n\nThis dereferences tr-\u003ecurrent_trace_flags unconditionally. The safety\ncheck that guards against a non-function tracer:\n\n  if (tr-\u003ecurrent_trace != \u0026function_trace)\n      return 0;\n\nis placed *after* the dereference, which is too late.\n\nThis was observed with the following crash dump:\n\n  BUG: unable to handle page fault at 0000000000000000\n  RIP: func_set_flag+0xd\n\n  Call Trace:\n   __set_tracer_option+0x27\n   trace_options_write+0x75\n   vfs_write+0x12a\n   ksys_write+0x66\n   do_syscall_64+0x5b\n\n  RIP: ffffffff914c973d  RSP: ff67ec88b01dfdf0  RFLAGS: 00010202\n  RAX: 0000000000000000  RBX: ff3a826e80354580  RCX: 0000000000000001\n  RDX: 0000000000000001  RSI: 0000000000000000  RDI: ffffffff93918080\n\nThe disassembly confirms the fault:\n\n  func_set_flag+0:   mov 0x1f08(%rdi), %rax  ; RAX = tr-\u003ecurrent_trace_flags = NULL\n  func_set_flag+13:  mov (%rax), %eax        ; page fault: dereference NULL\n\nAt the time of the crash:\n  tr-\u003ecurrent_trace_flags = 0x0 (NULL)\n  tr-\u003ecurrent_trace = wakeup_rt_tracer (not function_trace)\n\nThe scenario is that a process opens a function tracer option file (such\nas \"func_stack_trace\"), then the current tracer is switched to another\ntracer (e.g., \"wakeup_rt\"), which sets current_trace_flags to NULL. When\nthe process subsequently writes to the option file, func_set_flag() is\ninvoked and crashes on the NULL dereference.\n\nFix this by moving the current_trace check before the\ncurrent_trace_flags dereference, so that func_set_flag() returns early\nwhen the function tracer is not active."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:55.128Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/69f17ac132a38974cf1defb480cef6b79d1ab768"
            },
            {
              "url": "https://git.kernel.org/stable/c/c3e94604675e3db186111b8942650d86577df9b0"
            }
          ],
          "title": "tracing: Fix NULL pointer dereference in func_set_flag()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64451",
        "datePublished": "2026-07-25T08:51:21.020Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:55.128Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64450 (GCVE-0-2026-64450)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    tipc: fix out-of-bounds read in broadcast Gap ACK blocks
    Summary
    In the Linux kernel, the following vulnerability has been resolved: tipc: fix out-of-bounds read in broadcast Gap ACK blocks A broadcast PROTOCOL/STATE_MSG can carry a Gap ACK blocks record in its data area. tipc_get_gap_ack_blks() only verifies that the record's len field is self-consistent with its ugack_cnt/bgack_cnt counts (sz == struct_size(p, gacks, ugack_cnt + bgack_cnt)); it does not check that the record actually fits in the message data area, msg_data_sz(). The unicast caller tipc_link_proto_rcv() bounds it ("if (glen > dlen) break;"), but the broadcast caller tipc_bcast_sync_rcv() discards the returned size, so tipc_link_advance_transmq() copies the record off the receive skb with an attacker-controlled count: this_ga = kmemdup(ga, struct_size(ga, gacks, ga->bgack_cnt), GFP_ATOMIC); A TIPC neighbour that negotiated TIPC_GAP_ACK_BLOCK triggers it with one ordinary broadcast STATE_MSG (msg_bc_ack_invalid() clear), sized so its data area is short, carrying a Gap ACK record with len = 0x400, bgack_cnt = 0xff and ugack_cnt = 0. len then equals struct_size(p, gacks, 255), so the consistency check passes and ga is non-NULL; kmemdup() reads struct_size(ga, gacks, 255) = 1024 bytes out of the much smaller skb: BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x48/0x60 Read of size 1024 at addr ffff0000c7030d38 by task poc864/69 Call trace: kmemdup_noprof+0x48/0x60 tipc_link_advance_transmq+0x86c/0xb80 tipc_link_bc_ack_rcv+0x19c/0x1e0 tipc_bcast_sync_rcv+0x1c4/0x2c4 tipc_rcv+0x85c/0x1340 tipc_l2_rcv_msg+0xac/0x104 The buggy address belongs to the object at ffff0000c7030d00 which belongs to the cache skbuff_small_head of size 704 The buggy address is located 56 bytes inside of allocated 704-byte region [ffff0000c7030d00, ffff0000c7030fc0) The copied-out bytes are subsequently consumed as gap/ack values, but the read is already out of bounds at the kmemdup() regardless of how they are used. The unicast STATE path drops such a message: "if (glen > dlen) break;" skips the rest of STATE_MSG handling and the skb is freed. Make the broadcast path drop it too. tipc_bcast_sync_rcv() now bounds the record against msg_data_sz() and, when it does not fit, reports it back through tipc_node_bc_sync_rcv() to tipc_rcv() so the skb is discarded rather than processed. ga is not cleared on this path: ga == NULL already means "legacy peer without Selective ACK", a distinct legitimate state.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 055663d21dc4336f67933ab26bef3c5934be6324 (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 016f5995c37a5a2c45198308f830f244517d70b7 (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 74b45af86a767594ba52330cd440ea84e24d700d (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 9a51115fcdc78687c8852bf93a1db3951dbb223b (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < a21ed5064217cc33726da6c7ef1a520eba43aea1 (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 2de42e268174766cb2e2b90721afdfdff70e0d8d (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < f333b6851bdf326fd2134133272dbbed0c94d921 (git)
    Affected: d7626b5acff9227e2a65da636a53e09bdafdc0aa , < 2b66974a1b6134a4bbc3bfed181f7418f688eb54 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.8
    Unaffected: 0 , < 5.8 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "net/tipc/bcast.c",
                "net/tipc/bcast.h",
                "net/tipc/node.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "055663d21dc4336f67933ab26bef3c5934be6324",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "016f5995c37a5a2c45198308f830f244517d70b7",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "74b45af86a767594ba52330cd440ea84e24d700d",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "9a51115fcdc78687c8852bf93a1db3951dbb223b",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "a21ed5064217cc33726da6c7ef1a520eba43aea1",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "2de42e268174766cb2e2b90721afdfdff70e0d8d",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "f333b6851bdf326fd2134133272dbbed0c94d921",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                },
                {
                  "lessThan": "2b66974a1b6134a4bbc3bfed181f7418f688eb54",
                  "status": "affected",
                  "version": "d7626b5acff9227e2a65da636a53e09bdafdc0aa",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "net/tipc/bcast.c",
                "net/tipc/bcast.h",
                "net/tipc/node.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.8"
                },
                {
                  "lessThan": "5.8",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "5.8",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntipc: fix out-of-bounds read in broadcast Gap ACK blocks\n\nA broadcast PROTOCOL/STATE_MSG can carry a Gap ACK blocks record in its\ndata area. tipc_get_gap_ack_blks() only verifies that the record\u0027s len\nfield is self-consistent with its ugack_cnt/bgack_cnt counts\n(sz == struct_size(p, gacks, ugack_cnt + bgack_cnt)); it does not check\nthat the record actually fits in the message data area, msg_data_sz().\n\nThe unicast caller tipc_link_proto_rcv() bounds it (\"if (glen \u003e dlen)\nbreak;\"), but the broadcast caller tipc_bcast_sync_rcv() discards the\nreturned size, so tipc_link_advance_transmq() copies the record off the\nreceive skb with an attacker-controlled count:\n\n\tthis_ga = kmemdup(ga, struct_size(ga, gacks, ga-\u003ebgack_cnt),\n\t\t\t  GFP_ATOMIC);\n\nA TIPC neighbour that negotiated TIPC_GAP_ACK_BLOCK triggers it with one\nordinary broadcast STATE_MSG (msg_bc_ack_invalid() clear), sized so its\ndata area is short, carrying a Gap ACK record with len = 0x400,\nbgack_cnt = 0xff and ugack_cnt = 0. len then equals\nstruct_size(p, gacks, 255), so the consistency check passes and ga is\nnon-NULL; kmemdup() reads struct_size(ga, gacks, 255) = 1024 bytes out\nof the much smaller skb:\n\n  BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x48/0x60\n  Read of size 1024 at addr ffff0000c7030d38 by task poc864/69\n  Call trace:\n   kmemdup_noprof+0x48/0x60\n   tipc_link_advance_transmq+0x86c/0xb80\n   tipc_link_bc_ack_rcv+0x19c/0x1e0\n   tipc_bcast_sync_rcv+0x1c4/0x2c4\n   tipc_rcv+0x85c/0x1340\n   tipc_l2_rcv_msg+0xac/0x104\n  The buggy address belongs to the object at ffff0000c7030d00\n   which belongs to the cache skbuff_small_head of size 704\n  The buggy address is located 56 bytes inside of\n   allocated 704-byte region [ffff0000c7030d00, ffff0000c7030fc0)\n\nThe copied-out bytes are subsequently consumed as gap/ack values, but\nthe read is already out of bounds at the kmemdup() regardless of how\nthey are used.\n\nThe unicast STATE path drops such a message: \"if (glen \u003e dlen) break;\"\nskips the rest of STATE_MSG handling and the skb is freed. Make the\nbroadcast path drop it too. tipc_bcast_sync_rcv() now bounds the record\nagainst msg_data_sz() and, when it does not fit, reports it back through\ntipc_node_bc_sync_rcv() to tipc_rcv() so the skb is discarded rather than\nprocessed. ga is not cleared on this path: ga == NULL already means\n\"legacy peer without Selective ACK\", a distinct legitimate state."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 9.1,
                "baseSeverity": "CRITICAL",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - TIPC packets can arrive through an IP/UDP bearer from a routable remote source, and the receive callback does not restrict packets to configured remote addresses. An attacker can also establish or spoof the required TIPC neighbour state without credentials.\nAC:L - The attacker controls capability advertisement, link establishment, broadcast synchronization, and the malformed STATE message; one packet then reliably performs the out-of-bounds copy without a race or uncontrollable condition.\nPR:N - The packet-receive path performs no capability or user-credential check, and TIPC discovery and link negotiation are unauthenticated when optional cryptographic keys are not configured. The vulnerable broadcast processing also precedes normal STATE-session validation.\nUI:N - No victim action is required after the TIPC bearer is active; receipt of the crafted STATE message directly invokes the vulnerable code.\nS:U - The vulnerability compromises availability and potentially confidentiality within the receiving kernel\u0027s existing security authority, without crossing a VM, IOMMU, or comparable scope boundary.\nC:H - The attacker-controlled count makes the kernel copy up to 1,024 bytes from a much smaller skb, incorporating substantial adjacent slab contents rather than a strictly bounded few-byte read.\nI:N - The defect performs an out-of-bounds read into a correctly sized new allocation; investigation found no out-of-bounds write, arbitrary-write primitive, or control-flow corruption.\nA:H - The demonstrated 1,024-byte slab-out-of-bounds access produces a KASAN BUG and can panic or fault hardened kernels, and an unauthenticated attacker can trigger it repeatedly."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:54.043Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/055663d21dc4336f67933ab26bef3c5934be6324"
            },
            {
              "url": "https://git.kernel.org/stable/c/016f5995c37a5a2c45198308f830f244517d70b7"
            },
            {
              "url": "https://git.kernel.org/stable/c/74b45af86a767594ba52330cd440ea84e24d700d"
            },
            {
              "url": "https://git.kernel.org/stable/c/9a51115fcdc78687c8852bf93a1db3951dbb223b"
            },
            {
              "url": "https://git.kernel.org/stable/c/a21ed5064217cc33726da6c7ef1a520eba43aea1"
            },
            {
              "url": "https://git.kernel.org/stable/c/2de42e268174766cb2e2b90721afdfdff70e0d8d"
            },
            {
              "url": "https://git.kernel.org/stable/c/f333b6851bdf326fd2134133272dbbed0c94d921"
            },
            {
              "url": "https://git.kernel.org/stable/c/2b66974a1b6134a4bbc3bfed181f7418f688eb54"
            }
          ],
          "title": "tipc: fix out-of-bounds read in broadcast Gap ACK blocks",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64450",
        "datePublished": "2026-07-25T08:51:20.319Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:54.043Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64449 (GCVE-0-2026-64449)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: vme_user: bound slave read/write to the kern_buf size
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: vme_user: bound slave read/write to the kern_buf size The SLAVE-path helpers buffer_to_user() and buffer_from_user() copy 'count' bytes into/out of the fixed-size kern_buf (size_buf == PCI_BUF_SIZE == 0x20000, 128 KiB) using *ppos as the offset, without bounding *ppos + count against size_buf. vme_user_write()/vme_user_read() only clamp count to the VME window size (image_size = vme_get_size(resource)), which VME_SET_SLAVE sets from the user-supplied slave.size -- validated against the VME address space (up to VME_A32_MAX = 4 GiB), not against PCI_BUF_SIZE. When the window exceeds 128 KiB, a write()/read() copies past the kern_buf allocation. Clamp count against size_buf in both helpers, with an early return when *ppos is already at/after the buffer end. *ppos is >= 0 here (the caller rejects negative offsets), so size_buf - *ppos cannot wrap. This mirrors the existing clamp in the MASTER-path helpers resource_to_user() / resource_from_user(), and matches the read()/write() convention of a short transfer at end-of-buffer. Found by static analysis (CodeQL taint tracking + CBMC bounded model checking) and confirmed dynamically under KASAN with the vme_fake bridge: BUG: KASAN: slab-out-of-bounds in _copy_from_user+0x2d/0x80 Write of size 262144 at addr ffff888004100000 by task trigger/68 _copy_from_user+0x2d/0x80 vme_user_write+0x13e/0x240 [vme_user] vfs_write+0x1b8/0x7a0 ksys_write+0xb8/0x150
    Impacted products
    Vendor Product Version
    Linux Linux Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < 65358d89dc9f1c25d9364b2b3ef0f3b47717f9ed (git)
    Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < adc8b9c30d716c362646edb45662aa1c641a154a (git)
    Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < 8eff7cd4817e14dbe3b9952cce55ef52d1d38940 (git)
    Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < e99f2df433c63c86c93de1e5f08f16e404388756 (git)
    Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < 1b495fa0d4927c88d88bf346bf311f2e26e860ed (git)
    Affected: f00a86d98a1ec3e99d352cda926fab767ba43b1f , < 9f32f38265014fac7f5dc9490fb01a638ce6e121 (git)
    Create a notification for this product.
    Linux Linux Affected: 2.6.32
    Unaffected: 0 , < 2.6.32 (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/vme_user/vme_user.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "65358d89dc9f1c25d9364b2b3ef0f3b47717f9ed",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                },
                {
                  "lessThan": "adc8b9c30d716c362646edb45662aa1c641a154a",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                },
                {
                  "lessThan": "8eff7cd4817e14dbe3b9952cce55ef52d1d38940",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                },
                {
                  "lessThan": "e99f2df433c63c86c93de1e5f08f16e404388756",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                },
                {
                  "lessThan": "1b495fa0d4927c88d88bf346bf311f2e26e860ed",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                },
                {
                  "lessThan": "9f32f38265014fac7f5dc9490fb01a638ce6e121",
                  "status": "affected",
                  "version": "f00a86d98a1ec3e99d352cda926fab767ba43b1f",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/vme_user/vme_user.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "2.6.32"
                },
                {
                  "lessThan": "2.6.32",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.1.178",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "2.6.32",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: vme_user: bound slave read/write to the kern_buf size\n\nThe SLAVE-path helpers buffer_to_user() and buffer_from_user() copy\n\u0027count\u0027 bytes into/out of the fixed-size kern_buf (size_buf ==\nPCI_BUF_SIZE == 0x20000, 128 KiB) using *ppos as the offset, without\nbounding *ppos + count against size_buf.\n\nvme_user_write()/vme_user_read() only clamp count to the VME window size\n(image_size = vme_get_size(resource)), which VME_SET_SLAVE sets from the\nuser-supplied slave.size -- validated against the VME address space (up\nto VME_A32_MAX = 4 GiB), not against PCI_BUF_SIZE.  When the window\nexceeds 128 KiB, a write()/read() copies past the kern_buf allocation.\n\nClamp count against size_buf in both helpers, with an early return when\n*ppos is already at/after the buffer end.  *ppos is \u003e= 0 here (the caller\nrejects negative offsets), so size_buf - *ppos cannot wrap.  This mirrors\nthe existing clamp in the MASTER-path helpers resource_to_user() /\nresource_from_user(), and matches the read()/write() convention of a\nshort transfer at end-of-buffer.\n\nFound by static analysis (CodeQL taint tracking + CBMC bounded model\nchecking) and confirmed dynamically under KASAN with the vme_fake bridge:\n\n  BUG: KASAN: slab-out-of-bounds in _copy_from_user+0x2d/0x80\n  Write of size 262144 at addr ffff888004100000 by task trigger/68\n    _copy_from_user+0x2d/0x80\n    vme_user_write+0x13e/0x240 [vme_user]\n    vfs_write+0x1b8/0x7a0\n    ksys_write+0xb8/0x150"
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerable path is reached through ioctl(), lseek(), read(), and write() on a local /dev/bus/vme/s* character device. Network or physical VME-bus input is not needed.\nAC:L - The attacker can deterministically configure an aligned slave window larger than 128 KiB and select the copy offset and length; no race or external condition is required. A 256 KiB overflow was dynamically confirmed under KASAN.\nPR:L - The driver performs no capability or namespace-specific check, so an ordinary account granted access to the VME device node can configure and trigger the flaw. Although devtmpfs defaults to root-owned mode 0600, non-root access for an industrial control or service account is a reasonable deployment.\nUI:N - The attacker independently performs the configuration and malicious read or write without requiring any victim action.\nS:U - Exploitation compromises the host kernel within the same security authority. This is a standard local privilege-escalation condition, not a VM, sandbox, or IOMMU boundary escape.\nC:H - The read path copies an attacker-selected, potentially very large range of kernel memory beyond the 128 KiB allocation to userspace. This can disclose adjacent allocations, kernel pointers, credentials, and other sensitive memory.\nI:H - The write path copies attacker-controlled bytes beyond the DMA or large-kmalloc allocation, potentially across many adjacent physical pages. This provides exploitable memory corruption capable of modifying kernel objects or achieving control-flow hijacking.\nA:H - The out-of-bounds write was confirmed to trigger a KASAN kernel memory-safety failure and can corrupt or access invalid adjacent memory. A kernel oops or panic can be triggered without user interaction."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:52.942Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/65358d89dc9f1c25d9364b2b3ef0f3b47717f9ed"
            },
            {
              "url": "https://git.kernel.org/stable/c/adc8b9c30d716c362646edb45662aa1c641a154a"
            },
            {
              "url": "https://git.kernel.org/stable/c/8eff7cd4817e14dbe3b9952cce55ef52d1d38940"
            },
            {
              "url": "https://git.kernel.org/stable/c/e99f2df433c63c86c93de1e5f08f16e404388756"
            },
            {
              "url": "https://git.kernel.org/stable/c/1b495fa0d4927c88d88bf346bf311f2e26e860ed"
            },
            {
              "url": "https://git.kernel.org/stable/c/9f32f38265014fac7f5dc9490fb01a638ce6e121"
            }
          ],
          "title": "staging: vme_user: bound slave read/write to the kern_buf size",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64449",
        "datePublished": "2026-07-25T08:51:19.537Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:52.942Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64448 (GCVE-0-2026-64448)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    smb: client: restrict implied bcc[0] exemption to responses without data area
    Summary
    In the Linux kernel, the following vulnerability has been resolved: smb: client: restrict implied bcc[0] exemption to responses without data area smb2_check_message() has a long-standing quirk that accepts a response whose calculated length is one byte larger than the bytes actually received ("server can return one byte more due to implied bcc[0]"). This was introduced to accommodate servers that omit the trailing bcc[0] overlap byte when no data area is present. However, the exemption is applied unconditionally, regardless of whether the command actually carries a data area (has_smb2_data_area[]). When a response with a data area is subject to the +1 exemption, the reported data can extend one byte beyond the bytes actually received, yet smb2_check_message() still accepts it. The subsequent decoder then reads past the end of the receive buffer. This is reachable during NEGOTIATE and SESSION_SETUP, before the session is established. The resulting out-of-bounds reads are visible under KASAN when mounting against a non-conforming server; both the SPNEGO/negTokenInit and the NTLMSSP challenge decoders are affected: BUG: KASAN: slab-out-of-bounds in asn1_ber_decoder+0x16a7/0x1b00 Read of size 1 at addr ffff8880084d67c0 by task mount.cifs/81 CPU: 1 UID: 0 PID: 81 Comm: mount.cifs Not tainted 7.1.0-rc6 #1 Call Trace: <TASK> dump_stack_lvl+0x4e/0x70 print_report+0x157/0x4c9 kasan_report+0xce/0x100 asn1_ber_decoder+0x16a7/0x1b00 decode_negTokenInit+0x19/0x30 SMB2_negotiate+0x31d9/0x4c90 cifs_negotiate_protocol+0x1f2/0x3f0 cifs_get_smb_ses+0x93f/0x17e0 cifs_mount_get_session+0x7f/0x3a0 cifs_mount+0xb4/0xcf0 cifs_smb3_do_mount+0x23a/0x1500 smb3_get_tree+0x3b0/0x630 vfs_get_tree+0x82/0x2d0 fc_mount+0x10/0x1b0 path_mount+0x50d/0x1de0 __x64_sys_mount+0x20b/0x270 do_syscall_64+0xee/0x590 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> Allocated by task 85: kmem_cache_alloc_noprof+0x106/0x380 mempool_alloc_noprof+0x116/0x1e0 cifs_small_buf_get+0x31/0x80 allocate_buffers+0x10d/0x2b0 cifs_demultiplex_thread+0x1d5/0x1d50 kthread+0x2c6/0x390 ret_from_fork+0x36e/0x5a0 ret_from_fork_asm+0x1a/0x30 The buggy address is located 0 bytes to the right of allocated 448-byte region [ffff8880084d6600, ffff8880084d67c0) which belongs to the cache cifs_small_rq of size 448 BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x36/0x50 Read of size 329 at addr ffff88800726c678 by task mount.cifs/89 CPU: 0 UID: 0 PID: 89 Comm: mount.cifs Tainted: G B 7.1.0-rc6 #1 Call Trace: <TASK> dump_stack_lvl+0x4e/0x70 print_report+0x157/0x4c9 kasan_report+0xce/0x100 kasan_check_range+0x10f/0x1e0 __asan_memcpy+0x23/0x60 kmemdup_noprof+0x36/0x50 decode_ntlmssp_challenge+0x457/0x680 SMB2_sess_auth_rawntlmssp_negotiate+0x6f0/0xcb0 SMB2_sess_setup+0x219/0x4f0 cifs_setup_session+0x248/0xaf0 cifs_get_smb_ses+0xf79/0x17e0 cifs_mount_get_session+0x7f/0x3a0 cifs_mount+0xb4/0xcf0 cifs_smb3_do_mount+0x23a/0x1500 smb3_get_tree+0x3b0/0x630 vfs_get_tree+0x82/0x2d0 fc_mount+0x10/0x1b0 path_mount+0x50d/0x1de0 __x64_sys_mount+0x20b/0x270 do_syscall_64+0xee/0x590 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> Allocated by task 93: kmem_cache_alloc_noprof+0x106/0x380 mempool_alloc_noprof+0x116/0x1e0 cifs_small_buf_get+0x31/0x80 allocate_buffers+0x10d/0x2b0 cifs_demultiplex_thread+0x1d5/0x1d50 kthread+0x2c6/0x390 ret_from_fork+0x36e/0x5a0 ret_from_fork_asm+0x1a/0x30 The buggy address is located 120 bytes inside of allocated 448-byte region [ffff88800726c600, ffff88800726c7c0) which belongs to the cache cifs_small_rq of size 448 Restrict the +1 exemption to responses that have no data area, so that it still covers the bcc[0] omission it was meant for. When a data area is present, the +1 discrepancy instead means the reported data length overruns the ---truncated---
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 8d0bbc78046d264bbf6a574ea6f9072258a43e35 (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < b6a381c01e2ac98a48e32ac0f2a45bbadd9e26b0 (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 31c6312608c60b72a1feb99a5afb680645a3e8a3 (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 573e502d14714d2947e22e7eff40ec20a6a44a42 (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 419ec1b604d7fb60c10aec2dc062371f9fcd4940 (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < ceb875a375dedbf51c9425c1d13a2d7a8435c08c (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 6e9d10f62773b99bd927940fd9cbdfe7207e23ff (git)
    Affected: 093b2bdad3221e3fae3c26d89387e7297a157664 , < 53b7c271f06be4dd5cfc8c6ef552a8355c891a7f (git)
    Create a notification for this product.
    Linux Linux Affected: 3.6
    Unaffected: 0 , < 3.6 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/smb/client/smb2misc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "8d0bbc78046d264bbf6a574ea6f9072258a43e35",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "b6a381c01e2ac98a48e32ac0f2a45bbadd9e26b0",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "31c6312608c60b72a1feb99a5afb680645a3e8a3",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "573e502d14714d2947e22e7eff40ec20a6a44a42",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "419ec1b604d7fb60c10aec2dc062371f9fcd4940",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "ceb875a375dedbf51c9425c1d13a2d7a8435c08c",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "6e9d10f62773b99bd927940fd9cbdfe7207e23ff",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                },
                {
                  "lessThan": "53b7c271f06be4dd5cfc8c6ef552a8355c891a7f",
                  "status": "affected",
                  "version": "093b2bdad3221e3fae3c26d89387e7297a157664",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/smb/client/smb2misc.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "3.6"
                },
                {
                  "lessThan": "3.6",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: restrict implied bcc[0] exemption to responses without data area\n\nsmb2_check_message() has a long-standing quirk that accepts a response\nwhose calculated length is one byte larger than the bytes actually\nreceived (\"server can return one byte more due to implied bcc[0]\").\nThis was introduced to accommodate servers that omit the trailing bcc[0]\noverlap byte when no data area is present.\n\nHowever, the exemption is applied unconditionally, regardless of whether\nthe command actually carries a data area (has_smb2_data_area[]).  When a\nresponse with a data area is subject to the +1 exemption, the reported\ndata can extend one byte beyond the bytes actually received, yet\nsmb2_check_message() still accepts it.  The subsequent decoder then reads\npast the end of the receive buffer.  This is reachable during NEGOTIATE\nand SESSION_SETUP, before the session is established.\n\nThe resulting out-of-bounds reads are visible under KASAN when mounting\nagainst a non-conforming server; both the SPNEGO/negTokenInit and the\nNTLMSSP challenge decoders are affected:\n\n  BUG: KASAN: slab-out-of-bounds in asn1_ber_decoder+0x16a7/0x1b00\n  Read of size 1 at addr ffff8880084d67c0 by task mount.cifs/81\n  CPU: 1 UID: 0 PID: 81 Comm: mount.cifs Not tainted 7.1.0-rc6 #1\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x4e/0x70\n   print_report+0x157/0x4c9\n   kasan_report+0xce/0x100\n   asn1_ber_decoder+0x16a7/0x1b00\n   decode_negTokenInit+0x19/0x30\n   SMB2_negotiate+0x31d9/0x4c90\n   cifs_negotiate_protocol+0x1f2/0x3f0\n   cifs_get_smb_ses+0x93f/0x17e0\n   cifs_mount_get_session+0x7f/0x3a0\n   cifs_mount+0xb4/0xcf0\n   cifs_smb3_do_mount+0x23a/0x1500\n   smb3_get_tree+0x3b0/0x630\n   vfs_get_tree+0x82/0x2d0\n   fc_mount+0x10/0x1b0\n   path_mount+0x50d/0x1de0\n   __x64_sys_mount+0x20b/0x270\n   do_syscall_64+0xee/0x590\n   entry_SYSCALL_64_after_hwframe+0x77/0x7f\n   \u003c/TASK\u003e\n  Allocated by task 85:\n   kmem_cache_alloc_noprof+0x106/0x380\n   mempool_alloc_noprof+0x116/0x1e0\n   cifs_small_buf_get+0x31/0x80\n   allocate_buffers+0x10d/0x2b0\n   cifs_demultiplex_thread+0x1d5/0x1d50\n   kthread+0x2c6/0x390\n   ret_from_fork+0x36e/0x5a0\n   ret_from_fork_asm+0x1a/0x30\n  The buggy address is located 0 bytes to the right of\n   allocated 448-byte region [ffff8880084d6600, ffff8880084d67c0)\n   which belongs to the cache cifs_small_rq of size 448\n\n  BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x36/0x50\n  Read of size 329 at addr ffff88800726c678 by task mount.cifs/89\n  CPU: 0 UID: 0 PID: 89 Comm: mount.cifs Tainted: G    B      7.1.0-rc6 #1\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x4e/0x70\n   print_report+0x157/0x4c9\n   kasan_report+0xce/0x100\n   kasan_check_range+0x10f/0x1e0\n   __asan_memcpy+0x23/0x60\n   kmemdup_noprof+0x36/0x50\n   decode_ntlmssp_challenge+0x457/0x680\n   SMB2_sess_auth_rawntlmssp_negotiate+0x6f0/0xcb0\n   SMB2_sess_setup+0x219/0x4f0\n   cifs_setup_session+0x248/0xaf0\n   cifs_get_smb_ses+0xf79/0x17e0\n   cifs_mount_get_session+0x7f/0x3a0\n   cifs_mount+0xb4/0xcf0\n   cifs_smb3_do_mount+0x23a/0x1500\n   smb3_get_tree+0x3b0/0x630\n   vfs_get_tree+0x82/0x2d0\n   fc_mount+0x10/0x1b0\n   path_mount+0x50d/0x1de0\n   __x64_sys_mount+0x20b/0x270\n   do_syscall_64+0xee/0x590\n   entry_SYSCALL_64_after_hwframe+0x77/0x7f\n   \u003c/TASK\u003e\n  Allocated by task 93:\n   kmem_cache_alloc_noprof+0x106/0x380\n   mempool_alloc_noprof+0x116/0x1e0\n   cifs_small_buf_get+0x31/0x80\n   allocate_buffers+0x10d/0x2b0\n   cifs_demultiplex_thread+0x1d5/0x1d50\n   kthread+0x2c6/0x390\n   ret_from_fork+0x36e/0x5a0\n   ret_from_fork_asm+0x1a/0x30\n  The buggy address is located 120 bytes inside of\n   allocated 448-byte region [ffff88800726c600, ffff88800726c7c0)\n   which belongs to the cache cifs_small_rq of size 448\n\nRestrict the +1 exemption to responses that have no data area, so that\nit still covers the bcc[0] omission it was meant for.  When a data area\nis present, the +1 discrepancy instead means the reported data length\noverruns the\n---truncated---"
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.2,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - A malicious or compromised SMB server can trigger the flaw through crafted TCP responses, typically over port 445.\nAC:L - The server directly controls the frame length, data offset, and declared data length, so no race or condition outside the attacker\u0027s control is required.\nPR:N - NEGOTIATE and SESSION_SETUP responses are processed before authentication and signature verification, requiring no attacker credentials or local capabilities.\nUI:N - An existing persistent SMB mount automatically renegotiates after a server-induced reconnect, allowing exploitation without contemporaneous user action.\nS:U - The vulnerable SMB decoder and resulting kernel impact remain within the host kernel\u0027s security authority.\nC:L - The discrepancy permits exactly one byte beyond the received data to be read; the NTLM path can preserve and reflect that byte in subsequent authentication data, but the disclosure is strictly bounded.\nI:N - The flaw performs an out-of-bounds read and copies data into valid allocations; it provides no out-of-bounds write or other demonstrated memory-modification primitive.\nA:H - The demonstrated slab out-of-bounds access raises a KASAN BUG and can panic hardened kernels, and a malicious peer can retrigger it during negotiation or reconnection."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:51.813Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/8d0bbc78046d264bbf6a574ea6f9072258a43e35"
            },
            {
              "url": "https://git.kernel.org/stable/c/b6a381c01e2ac98a48e32ac0f2a45bbadd9e26b0"
            },
            {
              "url": "https://git.kernel.org/stable/c/31c6312608c60b72a1feb99a5afb680645a3e8a3"
            },
            {
              "url": "https://git.kernel.org/stable/c/573e502d14714d2947e22e7eff40ec20a6a44a42"
            },
            {
              "url": "https://git.kernel.org/stable/c/419ec1b604d7fb60c10aec2dc062371f9fcd4940"
            },
            {
              "url": "https://git.kernel.org/stable/c/ceb875a375dedbf51c9425c1d13a2d7a8435c08c"
            },
            {
              "url": "https://git.kernel.org/stable/c/6e9d10f62773b99bd927940fd9cbdfe7207e23ff"
            },
            {
              "url": "https://git.kernel.org/stable/c/53b7c271f06be4dd5cfc8c6ef552a8355c891a7f"
            }
          ],
          "title": "smb: client: restrict implied bcc[0] exemption to responses without data area",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64448",
        "datePublished": "2026-07-25T08:51:18.796Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:51.813Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64447 (GCVE-0-2026-64447)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: media: ipu7: fix double-free and use-after-free in error paths
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: media: ipu7: fix double-free and use-after-free in error paths In both ipu7_isys_init() and ipu7_psys_init(), pdata is allocated and then passed to ipu7_bus_initialize_device(), which stores it in adev->pdata. The ipu7_bus_release() function frees adev->pdata when the device's reference count drops to zero. Two error paths incorrectly call kfree(pdata) after the device teardown has already freed it: 1. When ipu7_mmu_init() fails: put_device() is called, which drops the reference count to zero and triggers ipu7_bus_release() -> kfree(pdata). The subsequent kfree(pdata) is a double-free. 2. When ipu7_bus_add_device() fails: it calls auxiliary_device_uninit() internally, which calls put_device() -> ipu7_bus_release() -> kfree(pdata). The subsequent kfree(pdata) is again a double-free. Note that the kfree(pdata) when ipu7_bus_initialize_device() itself fails is correct, because in that case auxiliary_device_init() failed and the release function was never set up, so pdata must be freed manually. Additionally, the error code was not saved before calling put_device(), causing ERR_CAST() to dereference the already-freed adev pointer when constructing the return value. Fix this by saving the error from dev_err_probe() before put_device() and returning ERR_PTR() instead. Remove the redundant kfree(pdata) calls and fix the use-after-free in the return values of the two affected error paths.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5 , < b5ddc7257bee71f5b8cf9083e2b0ac0427e9fbb3 (git)
    Affected: b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5 , < 837c1f9655421055f751ed34745e820a54a27642 (git)
    Affected: b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5 , < d3a9a8cf2d7fd61a2f63df61f6cbc0a9bb007cc0 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.17
    Unaffected: 0 , < 6.17 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/media/ipu7/ipu7.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "b5ddc7257bee71f5b8cf9083e2b0ac0427e9fbb3",
                  "status": "affected",
                  "version": "b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5",
                  "versionType": "git"
                },
                {
                  "lessThan": "837c1f9655421055f751ed34745e820a54a27642",
                  "status": "affected",
                  "version": "b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5",
                  "versionType": "git"
                },
                {
                  "lessThan": "d3a9a8cf2d7fd61a2f63df61f6cbc0a9bb007cc0",
                  "status": "affected",
                  "version": "b7fe4c0019b12d60ece3e99eeb0ccfd5a1d103e5",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/media/ipu7/ipu7.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.17"
                },
                {
                  "lessThan": "6.17",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.39",
                      "versionStartIncluding": "6.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.17",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: media: ipu7: fix double-free and use-after-free in error paths\n\nIn both ipu7_isys_init() and ipu7_psys_init(), pdata is allocated and\nthen passed to ipu7_bus_initialize_device(), which stores it in\nadev-\u003epdata. The ipu7_bus_release() function frees adev-\u003epdata when the\ndevice\u0027s reference count drops to zero.\n\nTwo error paths incorrectly call kfree(pdata) after the device teardown\nhas already freed it:\n\n1. When ipu7_mmu_init() fails: put_device() is called, which drops the\n   reference count to zero and triggers ipu7_bus_release() -\u003e\n   kfree(pdata). The subsequent kfree(pdata) is a double-free.\n\n2. When ipu7_bus_add_device() fails: it calls auxiliary_device_uninit()\n   internally, which calls put_device() -\u003e ipu7_bus_release() -\u003e\n   kfree(pdata). The subsequent kfree(pdata) is again a double-free.\n\nNote that the kfree(pdata) when ipu7_bus_initialize_device() itself\nfails is correct, because in that case auxiliary_device_init() failed\nand the release function was never set up, so pdata must be freed\nmanually.\n\nAdditionally, the error code was not saved before calling put_device(),\ncausing ERR_CAST() to dereference the already-freed adev pointer when\nconstructing the return value. Fix this by saving the error from\ndev_err_probe() before put_device() and returning ERR_PTR() instead.\n\nRemove the redundant kfree(pdata) calls and fix the use-after-free in\nthe return values of the two affected error paths."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The affected functions are reached from the Intel IPU7/IPU7.5 PCI driver probe, not network traffic or V4L2 ioctls. Exploitation therefore requires local execution to influence the probe-time failure and heap state.\nAC:L - Once ipu7_mmu_init() or auxiliary_device_add() fails, the double-free and use-after-free execute deterministically without a race. Allocation pressure and heap grooming are attacker-controlled in the highest reasonable scenario.\nPR:L - Direct module loading and sysfs reprobe operations require initial-namespace administration and are not enabled by user namespaces. However, an ordinary local user can sustain allocation pressure during an automatic probe, making basic local access sufficient in the highest reasonable scenario.\nUI:N - PCI probing and error unwinding are kernel-driven; no separate victim action is required once the triggering conditions are established.\nS:U - The corruption occurs within the host kernel and affects resources governed by that same security authority, without crossing a VM, IOMMU, or other scope boundary.\nC:H - The double-free can produce overlapping kernel allocations, while the companion use-after-free accesses a freed container. Attacker-controlled reuse can expose arbitrary kernel memory.\nI:H - The duplicated allocator entry can yield two live users of one kernel object, enabling corruption of security-sensitive objects and potentially arbitrary writes or control-flow hijacking.\nA:H - The double-free can trip allocator hardening or corrupt SLUB state, while the use-after-free can cause invalid-pointer accesses, resulting in a kernel oops or panic."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:50.059Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/b5ddc7257bee71f5b8cf9083e2b0ac0427e9fbb3"
            },
            {
              "url": "https://git.kernel.org/stable/c/837c1f9655421055f751ed34745e820a54a27642"
            },
            {
              "url": "https://git.kernel.org/stable/c/d3a9a8cf2d7fd61a2f63df61f6cbc0a9bb007cc0"
            }
          ],
          "title": "staging: media: ipu7: fix double-free and use-after-free in error paths",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64447",
        "datePublished": "2026-07-25T08:51:18.096Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:50.059Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64446 (GCVE-0-2026-64446)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie() supplicant_ie is a 256-byte array in struct security_priv. The WPA and WPA2 IE copy paths use: memcpy(padapter->securitypriv.supplicant_ie, &pwpa[0], wpa_ielen + 2); where wpa_ielen is the raw IE length field (u8, 0-255). When a local user supplies a connect request via nl80211 with a crafted WPA IE of length 255, wpa_ielen + 2 equals 257, overflowing the 256-byte buffer by one byte into the adjacent last_mic_err_time field. rtw_parse_wpa_ie() does not prevent this: its length consistency check compares *(wpa_ie+1) against (u8)(wpa_ie_len-2), which is (u8)(255) == 255 when wpa_ie_len = 257, so the check passes silently. Add explicit bounds checks for both the WPA and WPA2 paths before the memcpy, rejecting any IE whose total size (wpa_ielen + 2) exceeds the supplicant_ie buffer.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < a94a643a80a84ceb8139061c3d6bf988d75e45a5 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 2131621986c62c86109ce4d84cf73a73757eb8a6 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 6f20d7b0ee47c470734a69379b0fc6647c519603 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 5d7812360abf3143afcbf5efe4ef242448fa1f28 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 46f66c16a95191d9aca07a72ae6b1252a244e26c (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < b9c4bf133c3c47e23baf4f5403b98a953bf58606 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 138cd190efd56ab36c9fdd8fef8749d06937f24b (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 5a752a616e756844388a1a45404db9fc29fec655 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "a94a643a80a84ceb8139061c3d6bf988d75e45a5",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "2131621986c62c86109ce4d84cf73a73757eb8a6",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6f20d7b0ee47c470734a69379b0fc6647c519603",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "5d7812360abf3143afcbf5efe4ef242448fa1f28",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "46f66c16a95191d9aca07a72ae6b1252a244e26c",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "b9c4bf133c3c47e23baf4f5403b98a953bf58606",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "138cd190efd56ab36c9fdd8fef8749d06937f24b",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "5a752a616e756844388a1a45404db9fc29fec655",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/os_dep/ioctl_cfg80211.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie()\n\nsupplicant_ie is a 256-byte array in struct security_priv. The WPA and\nWPA2 IE copy paths use:\n\n    memcpy(padapter-\u003esecuritypriv.supplicant_ie, \u0026pwpa[0], wpa_ielen + 2);\n\nwhere wpa_ielen is the raw IE length field (u8, 0-255). When a local user\nsupplies a connect request via nl80211 with a crafted WPA IE of length 255,\nwpa_ielen + 2 equals 257, overflowing the 256-byte buffer by one byte into\nthe adjacent last_mic_err_time field.\n\nrtw_parse_wpa_ie() does not prevent this: its length consistency check\ncompares *(wpa_ie+1) against (u8)(wpa_ie_len-2), which is (u8)(255) == 255\nwhen wpa_ie_len = 257, so the check passes silently.\n\nAdd explicit bounds checks for both the WPA and WPA2 paths before the\nmemcpy, rejecting any IE whose total size (wpa_ielen + 2) exceeds the\nsupplicant_ie buffer."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:48.878Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/a94a643a80a84ceb8139061c3d6bf988d75e45a5"
            },
            {
              "url": "https://git.kernel.org/stable/c/2131621986c62c86109ce4d84cf73a73757eb8a6"
            },
            {
              "url": "https://git.kernel.org/stable/c/6f20d7b0ee47c470734a69379b0fc6647c519603"
            },
            {
              "url": "https://git.kernel.org/stable/c/5d7812360abf3143afcbf5efe4ef242448fa1f28"
            },
            {
              "url": "https://git.kernel.org/stable/c/46f66c16a95191d9aca07a72ae6b1252a244e26c"
            },
            {
              "url": "https://git.kernel.org/stable/c/b9c4bf133c3c47e23baf4f5403b98a953bf58606"
            },
            {
              "url": "https://git.kernel.org/stable/c/138cd190efd56ab36c9fdd8fef8749d06937f24b"
            },
            {
              "url": "https://git.kernel.org/stable/c/5a752a616e756844388a1a45404db9fc29fec655"
            }
          ],
          "title": "staging: rtl8723bs: fix heap buffer overflow in rtw_cfg80211_set_wpa_ie()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64446",
        "datePublished": "2026-07-25T08:51:17.402Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:48.878Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64445 (GCVE-0-2026-64445)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix WEP length underflow and OOB read in OnAuth()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix WEP length underflow and OOB read in OnAuth() OnAuth() has two bugs in the shared-key authentication path. When the Privacy bit is set, rtw_wep_decrypt() is called without verifying that the frame is long enough to contain a valid WEP IV and ICV. Inside rtw_wep_decrypt(), length is computed as: length = len - WLAN_HDR_A3_LEN - iv_len and then passed as (length - 4) to crc32_le(). If len is less than WLAN_HDR_A3_LEN + iv_len + icv_len (32 bytes), length - 4 is negative and, after the implicit cast to size_t, causes crc32_le() to read far beyond the frame buffer. Add a minimum length check before accessing the IV field and calling the decryption path. When processing a seq=3 response, rtw_get_ie() stores the Challenge Text IE length in ie_len, but the subsequent memcmp() always reads 128 bytes regardless of ie_len. IEEE 802.11 mandates a challenge text of exactly 128 bytes; reject any IE whose length field differs, matching the check already applied to OnAuthClient().
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 665e1ecb68b4e8419604e70a33f02d1c8b0222c6 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 87cccc2a767f17dcab71e3b9fe5ae29b5516c5ce (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < c9000c93078e5c0a5a651b077c0ec92a4bc7d580 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 1f6c9d255bdda41216b6e34c96aa2b1abee0bb84 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 3e44a7665f3abd320a80d9c64ee4a93317041b8b (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 64ec4192d9c10e96922245d4a6747304cc76b19d (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < d90b9f39f375c9826ef145605dfe97765d0ecb91 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < a1fc19d61f661d47204f095b593de507884849f7 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "665e1ecb68b4e8419604e70a33f02d1c8b0222c6",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "87cccc2a767f17dcab71e3b9fe5ae29b5516c5ce",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "c9000c93078e5c0a5a651b077c0ec92a4bc7d580",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "1f6c9d255bdda41216b6e34c96aa2b1abee0bb84",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "3e44a7665f3abd320a80d9c64ee4a93317041b8b",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "64ec4192d9c10e96922245d4a6747304cc76b19d",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "d90b9f39f375c9826ef145605dfe97765d0ecb91",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "a1fc19d61f661d47204f095b593de507884849f7",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix WEP length underflow and OOB read in OnAuth()\n\nOnAuth() has two bugs in the shared-key authentication path.\n\nWhen the Privacy bit is set, rtw_wep_decrypt() is called without\nverifying that the frame is long enough to contain a valid WEP IV and\nICV.  Inside rtw_wep_decrypt(), length is computed as:\n\n    length = len - WLAN_HDR_A3_LEN - iv_len\n\nand then passed as (length - 4) to crc32_le().  If len is less than\nWLAN_HDR_A3_LEN + iv_len + icv_len (32 bytes), length - 4 is negative\nand, after the implicit cast to size_t, causes crc32_le() to read far\nbeyond the frame buffer.  Add a minimum length check before accessing\nthe IV field and calling the decryption path.\n\nWhen processing a seq=3 response, rtw_get_ie() stores the Challenge\nText IE length in ie_len, but the subsequent memcmp() always reads 128\nbytes regardless of ie_len.  IEEE 802.11 mandates a challenge text of\nexactly 128 bytes; reject any IE whose length field differs, matching\nthe check already applied to OnAuthClient()."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - A nearby attacker can inject crafted 802.11 authentication management frames over the wireless channel to an RTL8723BS interface operating in AP mode.\nAC:L - A single attacker-controlled protected authentication frame can trigger the underflow without knowing a WEP key, winning a race, or satisfying conditions outside the attacker\u0027s control.\nPR:N - The vulnerable decryption executes before authentication, association, MAC ACL enforcement, and authentication-algorithm validation, so no credentials or privileges are required.\nUI:N - Once the affected interface is operating normally in AP mode, exploitation requires no action by a victim user.\nS:U - The vulnerable driver and the affected kernel resources belong to the same operating-system security authority; this is not a guest-host or other scope-boundary escape.\nC:H - The CRC underflow supplies a near-SIZE_MAX length to crc32_le(), producing a massive kernel out-of-bounds read, while the short-IE comparison can read up to 127 bytes beyond the Challenge Text IE.\nI:H - For protected frames shorter than 28 bytes, the negative signed length is converted to an approximately 4-GiB unsigned length for the in-place arc4_crypt(), causing extensive out-of-bounds writes capable of corrupting adjacent kernel heap state.\nA:H - The enormous ARC4 operation or CRC read will cross the receive-buffer allocation and can cause an oops, panic, hang, or severe heap corruption; unauthenticated attackers can trigger this repeatedly."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:47.787Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/665e1ecb68b4e8419604e70a33f02d1c8b0222c6"
            },
            {
              "url": "https://git.kernel.org/stable/c/87cccc2a767f17dcab71e3b9fe5ae29b5516c5ce"
            },
            {
              "url": "https://git.kernel.org/stable/c/c9000c93078e5c0a5a651b077c0ec92a4bc7d580"
            },
            {
              "url": "https://git.kernel.org/stable/c/1f6c9d255bdda41216b6e34c96aa2b1abee0bb84"
            },
            {
              "url": "https://git.kernel.org/stable/c/3e44a7665f3abd320a80d9c64ee4a93317041b8b"
            },
            {
              "url": "https://git.kernel.org/stable/c/64ec4192d9c10e96922245d4a6747304cc76b19d"
            },
            {
              "url": "https://git.kernel.org/stable/c/d90b9f39f375c9826ef145605dfe97765d0ecb91"
            },
            {
              "url": "https://git.kernel.org/stable/c/a1fc19d61f661d47204f095b593de507884849f7"
            }
          ],
          "title": "staging: rtl8723bs: fix WEP length underflow and OOB read in OnAuth()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64445",
        "datePublished": "2026-07-25T08:51:16.670Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:47.787Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64444 (GCVE-0-2026-64444)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix OOB read in OnAssocRsp() IE loop
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB read in OnAssocRsp() IE loop The IE parsing loop in OnAssocRsp() advances by (pIE->length + 2) each iteration but only guards on i < pkt_len. When a malicious AP sends an AssocResponse whose last IE has only one byte remaining in the frame (the element_id byte lands at pkt_len-1), the loop reads pIE->length from pframe[pkt_len], which is one byte past the allocated receive buffer. Additionally, even when the header bytes are in bounds, pIE->length itself can extend the data window beyond pkt_len, silently passing a truncated IE to the handler functions. Add two guards at the top of the loop body: 1. Break if fewer than sizeof(*pIE) bytes remain (can't read header). 2. Break if the IE's declared data extends past pkt_len.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 889ca6000ac7fa73457b041848fcb08e0d51b809 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 1a52a05471494546f955a58e8c170c0c796c52d5 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 0406d746574e875d8778552eb674fcfbf5330bfb (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 0970dd47726a57e52013594e9fbf667586eb3673 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 04f612dc03427e0b1ac80a2611b5ac0ba93ac446 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 7e7741c8315e4160aead00a60cdd6f81ab880717 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < f9654207e92283e0acac5d64fe5f8835383b5a23 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "889ca6000ac7fa73457b041848fcb08e0d51b809",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "1a52a05471494546f955a58e8c170c0c796c52d5",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "0406d746574e875d8778552eb674fcfbf5330bfb",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "0970dd47726a57e52013594e9fbf667586eb3673",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "04f612dc03427e0b1ac80a2611b5ac0ba93ac446",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "7e7741c8315e4160aead00a60cdd6f81ab880717",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "f9654207e92283e0acac5d64fe5f8835383b5a23",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB read in OnAssocRsp() IE loop\n\nThe IE parsing loop in OnAssocRsp() advances by (pIE-\u003elength + 2) each\niteration but only guards on i \u003c pkt_len. When a malicious AP sends an\nAssocResponse whose last IE has only one byte remaining in the frame\n(the element_id byte lands at pkt_len-1), the loop reads pIE-\u003elength\nfrom pframe[pkt_len], which is one byte past the allocated receive buffer.\n\nAdditionally, even when the header bytes are in bounds, pIE-\u003elength\nitself can extend the data window beyond pkt_len, silently passing a\ntruncated IE to the handler functions.\n\nAdd two guards at the top of the loop body:\n  1. Break if fewer than sizeof(*pIE) bytes remain (can\u0027t read header).\n  2. Break if the IE\u0027s declared data extends past pkt_len."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - An attacker within WiFi radio range can inject a spoofed 802.11 association response to an RTL8723BS station. WiFi management-frame injection is an adjacent attack vector.\nAC:L - The malformed final IE or oversized declared IE deterministically triggers the faulty parsing, and the attacker can observe and answer an association request. No race or condition outside attacker control is required.\nPR:N - Association responses are processed before WPA or 802.1X key establishment, without credentials or capabilities. The path checks the destination and association state but does not validate the response source or BSSID.\nUI:N - Auto-connecting phones, embedded devices, and IoT systems associate or reassociate without human action. An attacker can wait for or induce an automatic reconnect.\nS:U - The vulnerable driver and affected kernel resources belong to the same security authority. No VM, sandbox, or IOMMU boundary is crossed.\nC:H - Truncated HT or WMM elements can make handlers consume up to approximately 26 bytes beyond the logical receive frame from adjacent kernel skb memory. Under the required conservative treatment of a nontrivial out-of-bounds read, confidentiality impact is High.\nI:N - This flaw performs out-of-bounds reads but provides no out-of-bounds write or control-flow primitive. The separate HT capability overwrite was already fixed in the upstream parent and is not attributed to this CVE.\nA:H - Out-of-bounds accesses in the kernel receive tasklet can produce an oops or panic on hardened or unfavorable memory layouts. An unauthenticated adjacent attacker can repeat the trigger during association or reassociation."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:46.699Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/889ca6000ac7fa73457b041848fcb08e0d51b809"
            },
            {
              "url": "https://git.kernel.org/stable/c/1a52a05471494546f955a58e8c170c0c796c52d5"
            },
            {
              "url": "https://git.kernel.org/stable/c/0406d746574e875d8778552eb674fcfbf5330bfb"
            },
            {
              "url": "https://git.kernel.org/stable/c/0970dd47726a57e52013594e9fbf667586eb3673"
            },
            {
              "url": "https://git.kernel.org/stable/c/04f612dc03427e0b1ac80a2611b5ac0ba93ac446"
            },
            {
              "url": "https://git.kernel.org/stable/c/7e7741c8315e4160aead00a60cdd6f81ab880717"
            },
            {
              "url": "https://git.kernel.org/stable/c/f9654207e92283e0acac5d64fe5f8835383b5a23"
            }
          ],
          "title": "staging: rtl8723bs: fix OOB read in OnAssocRsp() IE loop",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64444",
        "datePublished": "2026-07-25T08:51:15.968Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:46.699Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64443 (GCVE-0-2026-64443)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix OOB read in update_beacon_info() IE loop
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB read in update_beacon_info() IE loop The IE parsing loop in update_beacon_info() advances by (pIE->length + 2) each iteration but only guards on i < len. When a malicious AP sends a Beacon whose last IE has only one byte remaining in the frame (the element_id byte lands at len-1), the loop reads pIE->length from one byte past the allocated receive buffer. Additionally, even when the header bytes are in bounds, pIE->length itself can extend the data window beyond len, passing a truncated IE to the handler functions. Add two guards at the top of the loop body: 1. Break if fewer than sizeof(*pIE) bytes remain (can't read header). 2. Break if the IE's declared data extends past len. Also replace i += (pIE->length + 2) with i += sizeof(*pIE) + pIE->length for consistency with the sizeof(*pIE) guards added above.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 5e8db4cff5b45c7c4edc8ae3f302027c3bb32b25 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 6dd5e8c3011ebabf417257d7f07901a7c4311539 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 9193c34f75fd9e1ea8a590d7cced464c3380dc29 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < bd953d52d587d42365e399b96c52dbdb13032070 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 69f174a0673b6b7a29b851adb60bc450cdc0ecc4 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < b5cc2f999927f69723ca53f1f2a3aa37dbeda907 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < ed51de4a86e173c3b0ef78e039c2e49e08b11f16 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "5e8db4cff5b45c7c4edc8ae3f302027c3bb32b25",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6dd5e8c3011ebabf417257d7f07901a7c4311539",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "9193c34f75fd9e1ea8a590d7cced464c3380dc29",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "bd953d52d587d42365e399b96c52dbdb13032070",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "69f174a0673b6b7a29b851adb60bc450cdc0ecc4",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "b5cc2f999927f69723ca53f1f2a3aa37dbeda907",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "ed51de4a86e173c3b0ef78e039c2e49e08b11f16",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB read in update_beacon_info() IE loop\n\nThe IE parsing loop in update_beacon_info() advances by\n(pIE-\u003elength + 2) each iteration but only guards on i \u003c len.\nWhen a malicious AP sends a Beacon whose last IE has only one byte\nremaining in the frame (the element_id byte lands at len-1), the loop\nreads pIE-\u003elength from one byte past the allocated receive buffer.\n\nAdditionally, even when the header bytes are in bounds, pIE-\u003elength\nitself can extend the data window beyond len, passing a truncated IE\nto the handler functions.\n\nAdd two guards at the top of the loop body:\n  1. Break if fewer than sizeof(*pIE) bytes remain (can\u0027t read header).\n  2. Break if the IE\u0027s declared data extends past len.\n\nAlso replace i += (pIE-\u003elength + 2) with i += sizeof(*pIE) + pIE-\u003elength\nfor consistency with the sizeof(*pIE) guards added above."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - An attacker within WiFi radio range can inject a crafted beacon spoofing the associated AP\u0027s BSSID. WiFi management-frame injection is an adjacent attack vector.\nAC:L - The malformed IE deterministically triggers the faulty parsing, and the attacker can send repeated beacons to satisfy the every-sixteenth-packet processing condition. No race or condition outside attacker control is required.\nPR:N - Ordinary beacon frames are not authenticated, even on WPA-protected networks. The driver checks association state, addresses, and BSSID, all of which an adjacent attacker can spoof without credentials or host privileges.\nUI:N - Once the interface is associated or operating in IBSS mode, crafted beacons are processed without victim action. Continuously connected embedded and mobile deployments provide this state automatically.\nS:U - The vulnerable driver and affected kernel resources belong to the same operating-system security authority. No guest-host, sandbox, or IOMMU boundary is crossed.\nC:H - Truncated WMM or HT elements can make handlers consume roughly 22 to 24 bytes beyond the logical frame from adjacent kernel skb memory. Under conservative treatment of this nontrivial kernel out-of-bounds read, confidentiality impact is High.\nI:N - The flaw performs out-of-bounds reads but provides no out-of-bounds write or control-flow primitive. Handler copies target correctly sized driver state fields.\nA:H - Out-of-bounds accesses in the kernel receive tasklet can produce an oops or panic on hardened or unfavorable memory layouts. An unauthenticated adjacent attacker can repeatedly transmit triggering beacons."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:45.615Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/5e8db4cff5b45c7c4edc8ae3f302027c3bb32b25"
            },
            {
              "url": "https://git.kernel.org/stable/c/6dd5e8c3011ebabf417257d7f07901a7c4311539"
            },
            {
              "url": "https://git.kernel.org/stable/c/9193c34f75fd9e1ea8a590d7cced464c3380dc29"
            },
            {
              "url": "https://git.kernel.org/stable/c/bd953d52d587d42365e399b96c52dbdb13032070"
            },
            {
              "url": "https://git.kernel.org/stable/c/69f174a0673b6b7a29b851adb60bc450cdc0ecc4"
            },
            {
              "url": "https://git.kernel.org/stable/c/b5cc2f999927f69723ca53f1f2a3aa37dbeda907"
            },
            {
              "url": "https://git.kernel.org/stable/c/ed51de4a86e173c3b0ef78e039c2e49e08b11f16"
            }
          ],
          "title": "staging: rtl8723bs: fix OOB read in update_beacon_info() IE loop",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64443",
        "datePublished": "2026-07-25T08:51:15.234Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:45.615Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64442 (GCVE-0-2026-64442)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix OOB reads in IE loops in issue_assocreq() and join_cmd_hdl()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB reads in IE loops in issue_assocreq() and join_cmd_hdl() Two IE parsing loops are missing the header bounds checks before they dereference pIE->length: - issue_assocreq() walks pmlmeinfo->network.ies to build the association request. If the stored IE data ends with only an element_id byte and no length byte, pIE->length is read one byte past the end of the buffer. - join_cmd_hdl() walks pnetwork->ies during station join and has the same problem under the same conditions. Both buffers are filled from AP beacon and probe-response frames, so a malicious AP that sends a truncated final IE can trigger the issue. Apply the two-guard pattern established in update_beacon_info(): 1. Break if fewer than sizeof(*pIE) bytes remain. 2. Break if the IE's declared data extends past the buffer end.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < bc881c9915c4468747d0ca5fd1abd7b313cfb0f4 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 605ebd94d0f469204f3c9f2f84acc71e43e2780f (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < a830bdc82461353bf7b1f8a2ad2689bf5d2de444 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 4c21eec80cf502d9ea18e0b946246b2376452786 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < ad2637c46ef8b8ae0894372a2d39fdfcdc420a1e (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < c38d16b1ffac385c9e4b38447cd5c46af1114b58 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 402f13ec95945f34a210b28df1f8740d3d4a58c5 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < ef61d628dfad38fead1fd2e08979ae9126d011d5 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "bc881c9915c4468747d0ca5fd1abd7b313cfb0f4",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "605ebd94d0f469204f3c9f2f84acc71e43e2780f",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "a830bdc82461353bf7b1f8a2ad2689bf5d2de444",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "4c21eec80cf502d9ea18e0b946246b2376452786",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "ad2637c46ef8b8ae0894372a2d39fdfcdc420a1e",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "c38d16b1ffac385c9e4b38447cd5c46af1114b58",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "402f13ec95945f34a210b28df1f8740d3d4a58c5",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "ef61d628dfad38fead1fd2e08979ae9126d011d5",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_mlme_ext.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB reads in IE loops in issue_assocreq() and join_cmd_hdl()\n\nTwo IE parsing loops are missing the header bounds checks before they\ndereference pIE-\u003elength:\n\n - issue_assocreq() walks pmlmeinfo-\u003enetwork.ies to build the\n   association request. If the stored IE data ends with only an\n   element_id byte and no length byte, pIE-\u003elength is read one byte\n   past the end of the buffer.\n\n - join_cmd_hdl() walks pnetwork-\u003eies during station join and has\n   the same problem under the same conditions.\n\nBoth buffers are filled from AP beacon and probe-response frames, so a\nmalicious AP that sends a truncated final IE can trigger the issue.\n\nApply the two-guard pattern established in update_beacon_info():\n  1. Break if fewer than sizeof(*pIE) bytes remain.\n  2. Break if the IE\u0027s declared data extends past the buffer end."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - A malicious AP within WiFi radio range can supply crafted beacon or probe-response IEs that reach both vulnerable loops during connection.\nAC:L - The attacker directly controls the IE layout and declared lengths, and triggering requires no race or condition outside attacker control.\nPR:N - join_cmd_hdl() executes before authentication, while issue_assocreq() precedes WPA/802.1X credential verification; the rogue AP needs no valid credentials.\nUI:N - Devices can automatically reconnect to a rogue AP spoofing a saved SSID, so no contemporaneous victim action is required.\nS:U - The vulnerable parser and resulting impacts remain within the host kernel\u0027s existing security authority.\nC:H - A malicious length can cause reads of up to 255 bytes beyond the logical IE boundary, including kernel pointers or state, and issue_assocreq() can transmit those bytes to the attacking AP.\nI:N - The defect performs out-of-bounds reads and copies into legitimate destinations, without providing an out-of-bounds or arbitrary write primitive.\nA:H - The malformed lengths drive unchecked kernel-context reads through multiple handlers and can cause an oops or kernel fault; an adjacent attacker can repeat the trigger during connection attempts."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:44.254Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/bc881c9915c4468747d0ca5fd1abd7b313cfb0f4"
            },
            {
              "url": "https://git.kernel.org/stable/c/605ebd94d0f469204f3c9f2f84acc71e43e2780f"
            },
            {
              "url": "https://git.kernel.org/stable/c/a830bdc82461353bf7b1f8a2ad2689bf5d2de444"
            },
            {
              "url": "https://git.kernel.org/stable/c/4c21eec80cf502d9ea18e0b946246b2376452786"
            },
            {
              "url": "https://git.kernel.org/stable/c/ad2637c46ef8b8ae0894372a2d39fdfcdc420a1e"
            },
            {
              "url": "https://git.kernel.org/stable/c/c38d16b1ffac385c9e4b38447cd5c46af1114b58"
            },
            {
              "url": "https://git.kernel.org/stable/c/402f13ec95945f34a210b28df1f8740d3d4a58c5"
            },
            {
              "url": "https://git.kernel.org/stable/c/ef61d628dfad38fead1fd2e08979ae9126d011d5"
            }
          ],
          "title": "staging: rtl8723bs: fix OOB reads in IE loops in issue_assocreq() and join_cmd_hdl()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64442",
        "datePublished": "2026-07-25T08:51:14.535Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:44.254Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64441 (GCVE-0-2026-64441)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr() Three IE/attribute parsing functions have missing bounds checks. rtw_get_sec_ie() and rtw_get_wapi_ie() iterate over a raw IE buffer without verifying that the header bytes (tag + length) are within the remaining buffer before reading them. Additionally, rtw_get_sec_ie() compares the 4-byte WPA OUI at cnt+2 without checking that at least 6 bytes remain, and rtw_get_wapi_ie() compares a 4-byte WAPI OUI at cnt+6 without checking that at least 10 bytes remain. rtw_get_wps_attr() reads wps_ie[0] and wps_ie+2 unconditionally at entry, before verifying that wps_ielen is large enough to contain the 6-byte WPS IE header (element_id + length + 4-byte OUI). Inside the attribute loop, get_unaligned_be16() is called on attr_ptr and attr_ptr+2 without checking that 4 bytes remain in the buffer. Add a cnt+2 bounds check before each loop body in rtw_get_sec_ie() and rtw_get_wapi_ie(), guard each multi-byte comparison with a minimum IE length requirement, add a wps_ielen < 6 early return in rtw_get_wps_attr(), and add a 4-byte bounds check in its inner loop.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < efa27d487abcdec79669a60a6d94d5d6eceb7c1d (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 2ea1ce30ead61589214240e8d33d96310fd613e5 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < b27ecba3196f6c14e3809595ebd69c0c2392512a (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 6ab1161e539fb7a1c8b35ff5a6ced4702e855b9c (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 4b51ee8a40fe47864197d73cc02b191de7a6b072 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 729c4e72563bda0f1725db1db9ea08df06f41d9b (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 1463ca3ec6601cbb097d8d87dbf5dcf1cb86a344 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.97 , ≤ 6.12.* (semver)
    Unaffected: 6.18.40 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_ieee80211.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "efa27d487abcdec79669a60a6d94d5d6eceb7c1d",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "2ea1ce30ead61589214240e8d33d96310fd613e5",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "b27ecba3196f6c14e3809595ebd69c0c2392512a",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6ab1161e539fb7a1c8b35ff5a6ced4702e855b9c",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "4b51ee8a40fe47864197d73cc02b191de7a6b072",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "729c4e72563bda0f1725db1db9ea08df06f41d9b",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "1463ca3ec6601cbb097d8d87dbf5dcf1cb86a344",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_ieee80211.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.97",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.40",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.97",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.40",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr()\n\nThree IE/attribute parsing functions have missing bounds checks.\n\nrtw_get_sec_ie() and rtw_get_wapi_ie() iterate over a raw IE buffer\nwithout verifying that the header bytes (tag + length) are within the\nremaining buffer before reading them.  Additionally, rtw_get_sec_ie()\ncompares the 4-byte WPA OUI at cnt+2 without checking that at least\n6 bytes remain, and rtw_get_wapi_ie() compares a 4-byte WAPI OUI at\ncnt+6 without checking that at least 10 bytes remain.\n\nrtw_get_wps_attr() reads wps_ie[0] and wps_ie+2 unconditionally at\nentry, before verifying that wps_ielen is large enough to contain\nthe 6-byte WPS IE header (element_id + length + 4-byte OUI).  Inside\nthe attribute loop, get_unaligned_be16() is called on attr_ptr and\nattr_ptr+2 without checking that 4 bytes remain in the buffer.\n\nAdd a cnt+2 bounds check before each loop body in rtw_get_sec_ie()\nand rtw_get_wapi_ie(), guard each multi-byte comparison with a minimum\nIE length requirement, add a wps_ielen \u003c 6 early return in\nrtw_get_wps_attr(), and add a 4-byte bounds check in its inner loop."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - Malformed beacon or probe-response information elements reach the vulnerable parsers over the air, so the attacker only needs to be within Wi-Fi radio range.\nAC:L - A crafted truncated WPS Selected Registrar attribute followed by controlled IE data deterministically supplies the out-of-bounds length; no race or uncontrollable condition is required.\nPR:N - Beacon and probe-response management frames are processed before association or authentication, and no capability or credential check gates this path.\nUI:N - The driver processes beacons automatically, and routine system-initiated scans reach the WPS path without human action.\nS:U - Exploitation compromises the kernel of the affected host without crossing a separate virtualization or authorization boundary.\nC:H - The out-of-bounds attribute length reaches a copy into a one-byte stack object, permitting control-flow corruption and potential kernel code execution with access to arbitrary kernel-resident data.\nI:H - The attacker can make adjacent controlled frame bytes overflow the one-byte stack destination, potentially overwriting control data and executing arbitrary kernel code.\nA:H - The bounded OOB reads can fault, while the derived stack overflow can trigger an oops, stack-canary panic, or control-flow failure and can be repeated using injected management frames."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:43.148Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/efa27d487abcdec79669a60a6d94d5d6eceb7c1d"
            },
            {
              "url": "https://git.kernel.org/stable/c/2ea1ce30ead61589214240e8d33d96310fd613e5"
            },
            {
              "url": "https://git.kernel.org/stable/c/b27ecba3196f6c14e3809595ebd69c0c2392512a"
            },
            {
              "url": "https://git.kernel.org/stable/c/6ab1161e539fb7a1c8b35ff5a6ced4702e855b9c"
            },
            {
              "url": "https://git.kernel.org/stable/c/4b51ee8a40fe47864197d73cc02b191de7a6b072"
            },
            {
              "url": "https://git.kernel.org/stable/c/729c4e72563bda0f1725db1db9ea08df06f41d9b"
            },
            {
              "url": "https://git.kernel.org/stable/c/1463ca3ec6601cbb097d8d87dbf5dcf1cb86a344"
            }
          ],
          "title": "staging: rtl8723bs: fix OOB reads in rtw_get_sec_ie(), rtw_get_wapi_ie(), and rtw_get_wps_attr()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64441",
        "datePublished": "2026-07-25T08:51:13.834Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:43.148Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64440 (GCVE-0-2026-64440)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    staging: rtl8723bs: fix OOB write in HT_caps_handler()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: staging: rtl8723bs: fix OOB write in HT_caps_handler() HT_caps_handler() iterates pIE->length bytes and writes into HT_caps.u.HT_cap[], which is a fixed 26-byte array (sizeof struct HT_caps_element). Because pIE->length is a raw u8 from an over-the-air 802.11 AssocResponse frame and is never validated, a malicious AP can set it up to 255, causing up to 229 bytes of out-of-bounds writes into adjacent fields of struct mlme_ext_info. Truncate the iteration count to the size of HT_caps.u.HT_cap using umin() so that data from a longer-than-expected IE is silently ignored rather than written out of bounds, preserving interoperability with APs that pad the element. An early return on oversized IEs was considered but rejected: it would bypass the pmlmeinfo->HT_caps_enable = 1 assignment that precedes the loop, silently disabling HT mode for APs that append extra bytes to the HT Capabilities IE.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 37f642d47c3648a707df3ceb092eee1adffbfd28 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 8c872b47c7fc32e95e0da1db7512388794adcd69 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < bb3b942da4123b55d1cacf19d1a7d5ba15dbf83a (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 918537a0fbed85aab61fa28ad75e6279070610c9 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 6f91621fc45025ad3c0be796b70e6e4cee22fc69 (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < 225b6d3fc7e99ac3d20b6c861d1e47d24e7ea31d (git)
    Affected: 554c0a3abf216c991c5ebddcdb2c08689ecd290b , < f8001e1a516ba3b495728c65b61f799cbfad6bd0 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.12
    Unaffected: 0 , < 4.12 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "37f642d47c3648a707df3ceb092eee1adffbfd28",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "8c872b47c7fc32e95e0da1db7512388794adcd69",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "bb3b942da4123b55d1cacf19d1a7d5ba15dbf83a",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "918537a0fbed85aab61fa28ad75e6279070610c9",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "6f91621fc45025ad3c0be796b70e6e4cee22fc69",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "225b6d3fc7e99ac3d20b6c861d1e47d24e7ea31d",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                },
                {
                  "lessThan": "f8001e1a516ba3b495728c65b61f799cbfad6bd0",
                  "status": "affected",
                  "version": "554c0a3abf216c991c5ebddcdb2c08689ecd290b",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/staging/rtl8723bs/core/rtw_wlan_util.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.12"
                },
                {
                  "lessThan": "4.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nstaging: rtl8723bs: fix OOB write in HT_caps_handler()\n\nHT_caps_handler() iterates pIE-\u003elength bytes and writes into\nHT_caps.u.HT_cap[], which is a fixed 26-byte array (sizeof struct\nHT_caps_element). Because pIE-\u003elength is a raw u8 from an over-the-air\n802.11 AssocResponse frame and is never validated, a malicious AP can\nset it up to 255, causing up to 229 bytes of out-of-bounds writes into\nadjacent fields of struct mlme_ext_info.\n\nTruncate the iteration count to the size of HT_caps.u.HT_cap using\numin() so that data from a longer-than-expected IE is silently ignored\nrather than written out of bounds, preserving interoperability with APs\nthat pad the element. An early return on oversized IEs was considered\nbut rejected: it would bypass the pmlmeinfo-\u003eHT_caps_enable = 1\nassignment that precedes the loop, silently disabling HT mode for APs\nthat append extra bytes to the HT Capabilities IE."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.1,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - A nearby attacker can transmit a crafted 802.11 association response over the air; WiFi management-frame injection requires radio proximity and is not routable.\nAC:L - A malicious AP controls the IE length, contents, and handshake timing, making the bit-clearing overwrite deterministic without a race or uncontrollable condition.\nPR:N - The frame is processed before WPA or 802.1X credential verification, and OnAssocRsp does not authenticate its source BSSID; no target privilege or network credential is required.\nUI:N - Mobile, embedded, and headless systems commonly associate or roam automatically, allowing an evil-twin AP to reach the handler without human action.\nS:U - The corruption affects host-kernel driver state without crossing a VM, IOMMU, sandbox, or other security-authority boundary.\nC:N - The primitive only AND-clears following HT and network metadata and cannot reach pointer-bearing fields; no secret-bearing read or attacker-visible disclosure path was found.\nI:H - The oversized IE causes up to 229 attacker-controlled bit-mask writes beyond the 26-byte array, corrupting live kernel HT information and saved network metadata.\nA:H - The attacker can repeatedly corrupt BSSID, SSID, rate, IE-length, and HT state to prevent association; on a WiFi-dependent controller or IoT device this can sustain total loss of connectivity."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:42.056Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/37f642d47c3648a707df3ceb092eee1adffbfd28"
            },
            {
              "url": "https://git.kernel.org/stable/c/8c872b47c7fc32e95e0da1db7512388794adcd69"
            },
            {
              "url": "https://git.kernel.org/stable/c/bb3b942da4123b55d1cacf19d1a7d5ba15dbf83a"
            },
            {
              "url": "https://git.kernel.org/stable/c/918537a0fbed85aab61fa28ad75e6279070610c9"
            },
            {
              "url": "https://git.kernel.org/stable/c/6f91621fc45025ad3c0be796b70e6e4cee22fc69"
            },
            {
              "url": "https://git.kernel.org/stable/c/225b6d3fc7e99ac3d20b6c861d1e47d24e7ea31d"
            },
            {
              "url": "https://git.kernel.org/stable/c/f8001e1a516ba3b495728c65b61f799cbfad6bd0"
            }
          ],
          "title": "staging: rtl8723bs: fix OOB write in HT_caps_handler()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64440",
        "datePublished": "2026-07-25T08:51:13.138Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:42.056Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64439 (GCVE-0-2026-64439)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    crypto: krb5 - filter out async aead implementations at alloc
    Summary
    In the Linux kernel, the following vulnerability has been resolved: crypto: krb5 - filter out async aead implementations at alloc krb5_aead_encrypt(), krb5_aead_decrypt() in rfc3961_simplified.c and rfc8009_encrypt(), rfc8009_decrypt() in rfc8009_aes2.c set a NULL completion callback and treat any negative return from crypto_aead_{encrypt,decrypt}() as terminal, falling through to kfree_sensitive(buffer). When the encrypt_name resolves to an async AEAD instance the request returns -EINPROGRESS, the buffer is freed while the backend's worker still holds a pointer, and the worker dereferences the freed slab on completion. KASAN report under UML+SLUB with a synthetic async aead backend bound to krb5->encrypt_name: BUG: KASAN: slab-use-after-free in t5_stub_complete+0x7d/0xc7 The helpers were written synchronously, so filter the async instances out at allocation time instead of plumbing crypto_wait_req() through every call site. Reachable via net/rxrpc/rxgk.c, fs/afs/cm_security.c and net/ceph/crypto.c on systems with an async AEAD provider bound to the krb5 enctype name.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 00244da40f7821b242c4612428d4192230dba27f , < ef6feb77e2d91761427c5b773edc9c97e1b706ad (git)
    Affected: 00244da40f7821b242c4612428d4192230dba27f , < 2b7bd6dccff14b8b632c5244f1fd506918077221 (git)
    Affected: 00244da40f7821b242c4612428d4192230dba27f , < 6c9dddeb582fde005360f4fe02c760d45ca05fb5 (git)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "crypto/krb5/krb5_api.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "ef6feb77e2d91761427c5b773edc9c97e1b706ad",
                  "status": "affected",
                  "version": "00244da40f7821b242c4612428d4192230dba27f",
                  "versionType": "git"
                },
                {
                  "lessThan": "2b7bd6dccff14b8b632c5244f1fd506918077221",
                  "status": "affected",
                  "version": "00244da40f7821b242c4612428d4192230dba27f",
                  "versionType": "git"
                },
                {
                  "lessThan": "6c9dddeb582fde005360f4fe02c760d45ca05fb5",
                  "status": "affected",
                  "version": "00244da40f7821b242c4612428d4192230dba27f",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "crypto/krb5/krb5_api.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: krb5 - filter out async aead implementations at alloc\n\nkrb5_aead_encrypt(), krb5_aead_decrypt() in rfc3961_simplified.c and\nrfc8009_encrypt(), rfc8009_decrypt() in rfc8009_aes2.c set a NULL\ncompletion callback and treat any negative return from\ncrypto_aead_{encrypt,decrypt}() as terminal, falling through to\nkfree_sensitive(buffer).  When the encrypt_name resolves to an\nasync AEAD instance the request returns -EINPROGRESS, the buffer\nis freed while the backend\u0027s worker still holds a pointer, and the\nworker dereferences the freed slab on completion.\n\nKASAN report under UML+SLUB with a synthetic async aead backend\nbound to krb5-\u003eencrypt_name:\n\n  BUG: KASAN: slab-use-after-free in t5_stub_complete+0x7d/0xc7\n\nThe helpers were written synchronously, so filter the async\ninstances out at allocation time instead of plumbing\ncrypto_wait_req() through every call site.\n\nReachable via net/rxrpc/rxgk.c, fs/afs/cm_security.c and\nnet/ceph/crypto.c on systems with an async AEAD provider bound to\nthe krb5 enctype name."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 9.8,
                "baseSeverity": "CRITICAL",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - An unauthenticated remote peer can reach the vulnerable Kerberos decrypt helper through the UDP RxRPC/RxGK RESPONSE path; Ceph and AFS also expose network-driven paths.\nAC:L - Once an async AEAD implementation is selected, each accepted operation can return -EINPROGRESS and trigger the UAF. The attacker controls and can repeatedly invoke the packet flow, enabling heap grooming and race amplification.\nPR:N - RxGK decrypts the attacker-supplied token before validating the ticket, nonce, or authenticator. Looking up an installed server key selects the cipher but does not authenticate the peer.\nUI:N - A listening service processes the challenge and malicious response automatically without any victim action.\nS:U - Exploitation compromises resources governed by the same host kernel security authority and does not inherently cross a VM, IOMMU, or equivalent boundary.\nC:H - The freed request contains transform, callback, context, IV, and scatterlist-related state that can be reclaimed or accessed asynchronously, supporting controlled kernel-memory disclosure.\nI:H - The backend can write through stale scatterlist pointers, while reclaimed callback and request fields can enable arbitrary memory corruption or control-flow hijacking.\nA:H - The async worker dereferences freed or zeroed request state, allowing a repeatable kernel oops or panic; the defect has also been directly observed as a KASAN slab use-after-free."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:40.947Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/ef6feb77e2d91761427c5b773edc9c97e1b706ad"
            },
            {
              "url": "https://git.kernel.org/stable/c/2b7bd6dccff14b8b632c5244f1fd506918077221"
            },
            {
              "url": "https://git.kernel.org/stable/c/6c9dddeb582fde005360f4fe02c760d45ca05fb5"
            }
          ],
          "title": "crypto: krb5 - filter out async aead implementations at alloc",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64439",
        "datePublished": "2026-07-25T08:51:12.422Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:40.947Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64438 (GCVE-0-2026-64438)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    crypto: qat - fix VF2PF work teardown race in adf_disable_sriov()
    Summary
    In the Linux kernel, the following vulnerability has been resolved: crypto: qat - fix VF2PF work teardown race in adf_disable_sriov() The VF2PF interrupt handler queues PF-side response work that stores a raw pointer to per-VF state (struct adf_accel_vf_info). Currently, adf_disable_sriov() destroys per-VF mutexes and frees vf_info without stopping new VF2PF work or waiting for in-flight workers to complete. A concurrently scheduled or already queued worker can then dereference freed memory. This manifests as a use-after-free when KASAN is enabled: BUG: KASAN: null-ptr-deref in mutex_lock+0x76/0xe0 Write of size 8 at addr 0000000000000260 by task kworker/24:2/... Workqueue: qat_pf2vf_resp_wq adf_iov_send_resp [intel_qat] Call Trace: kasan_report+0x119/0x140 mutex_lock+0x76/0xe0 adf_gen4_pfvf_send+0xd4/0x1f0 [intel_qat] adf_recv_and_handle_vf2pf_msg+0x290/0x360 [intel_qat] adf_iov_send_resp+0x8c/0xe0 [intel_qat] process_one_work+0x6ac/0xfd0 worker_thread+0x4dd/0xd30 kthread+0x326/0x410 ret_from_fork+0x33b/0x670 Add a PF-local flag, vf2pf_disabled, that gates work queueing, worker processing, and interrupt re-enabling during teardown. Set this flag atomically with the hardware interrupt mask inside adf_disable_all_vf2pf_interrupts(). After masking, synchronize the AE cluster MSI-X interrupt and flush the PF response workqueue before tearing down per-VF locks and state so all in-flight work completes before vf_info is destroyed. Introduce adf_enable_all_vf2pf_interrupts() to clear the flag and unmask all VF2PF interrupts under the same lock when SR-IOV is re-enabled. This ensures the software flag and hardware state transition atomically on both the enable and disable paths.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 218c2836b3987f3fa1d9eac505462cded0821e4c (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 446b4d77599cf1a168573f7fb32a4a6aa4f09219 (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 5d916c1eae1933511a69bffe243b4ee5d7da399c (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < f344a369d0380d54c8d6c8d24734a78dd5a89817 (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 51144032248cc4ea22917370565650670b8b4e9b (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 49cd5ac6de8de39a14ead609bb552d372d5602cd (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 6e92b28cd74fa433658efeadf21b9d4b01023d7d (git)
    Affected: ed8ccaef52fa03fb03cff45b380f72c9f869f273 , < 277281c10c63791067d24d421f7c43a15faa9096 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.3
    Unaffected: 0 , < 4.3 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.97 , ≤ 6.12.* (semver)
    Unaffected: 6.18.40 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/crypto/intel/qat/qat_common/adf_accel_devices.h",
                "drivers/crypto/intel/qat/qat_common/adf_common_drv.h",
                "drivers/crypto/intel/qat/qat_common/adf_isr.c",
                "drivers/crypto/intel/qat/qat_common/adf_sriov.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "218c2836b3987f3fa1d9eac505462cded0821e4c",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "446b4d77599cf1a168573f7fb32a4a6aa4f09219",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "5d916c1eae1933511a69bffe243b4ee5d7da399c",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "f344a369d0380d54c8d6c8d24734a78dd5a89817",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "51144032248cc4ea22917370565650670b8b4e9b",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "49cd5ac6de8de39a14ead609bb552d372d5602cd",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "6e92b28cd74fa433658efeadf21b9d4b01023d7d",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                },
                {
                  "lessThan": "277281c10c63791067d24d421f7c43a15faa9096",
                  "status": "affected",
                  "version": "ed8ccaef52fa03fb03cff45b380f72c9f869f273",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/crypto/intel/qat/qat_common/adf_accel_devices.h",
                "drivers/crypto/intel/qat/qat_common/adf_common_drv.h",
                "drivers/crypto/intel/qat/qat_common/adf_isr.c",
                "drivers/crypto/intel/qat/qat_common/adf_sriov.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.3"
                },
                {
                  "lessThan": "4.3",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.97",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.40",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.97",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.40",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.3",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ncrypto: qat - fix VF2PF work teardown race in adf_disable_sriov()\n\nThe VF2PF interrupt handler queues PF-side response work that stores a\nraw pointer to per-VF state (struct adf_accel_vf_info). Currently,\nadf_disable_sriov() destroys per-VF mutexes and frees vf_info without\nstopping new VF2PF work or waiting for in-flight workers to complete. A\nconcurrently scheduled or already queued worker can then dereference\nfreed memory.\n\nThis manifests as a use-after-free when KASAN is enabled:\n\n  BUG: KASAN: null-ptr-deref in mutex_lock+0x76/0xe0\n  Write of size 8 at addr 0000000000000260 by task kworker/24:2/...\n  Workqueue: qat_pf2vf_resp_wq adf_iov_send_resp [intel_qat]\n  Call Trace:\n    kasan_report+0x119/0x140\n    mutex_lock+0x76/0xe0\n    adf_gen4_pfvf_send+0xd4/0x1f0 [intel_qat]\n    adf_recv_and_handle_vf2pf_msg+0x290/0x360 [intel_qat]\n    adf_iov_send_resp+0x8c/0xe0 [intel_qat]\n    process_one_work+0x6ac/0xfd0\n    worker_thread+0x4dd/0xd30\n    kthread+0x326/0x410\n    ret_from_fork+0x33b/0x670\n\nAdd a PF-local flag, vf2pf_disabled, that gates work queueing, worker\nprocessing, and interrupt re-enabling during teardown. Set this flag\natomically with the hardware interrupt mask inside\nadf_disable_all_vf2pf_interrupts(). After masking, synchronize the AE\ncluster MSI-X interrupt and flush the PF response workqueue before\ntearing down per-VF locks and state so all in-flight work completes\nbefore vf_info is destroyed.\n\nIntroduce adf_enable_all_vf2pf_interrupts() to clear the flag and\nunmask all VF2PF interrupts under the same lock when SR-IOV is\nre-enabled. This ensures the software flag and hardware state transition\natomically on both the enable and disable paths."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - Exploitation originates from a local process or guest with direct access to an assigned QAT VF, using VF MMIO or the VF driver to generate VF2PF messages; it is not network-reachable.\nAC:L - The VF controls mailbox generation, restart-complete signaling, and acknowledgement behavior, and can keep response work active for up to one second while teardown proceeds. VF removal itself also emits shutdown traffic, making the race repeatedly attacker-alignable.\nPR:L - The attacker needs authorized access to an assigned QAT VF, which can be delegated through VFIO to an unprivileged process or tenant VM. No host administrative capability is required during management-initiated teardown or reset.\nUI:N - Exploitation requires no victim-user action; device teardown, hot-unplug, shutdown, or automatic error recovery supplies the concurrent lifecycle event.\nS:C - In a virtualized deployment, a tenant controlling an assigned VF corrupts memory in the host PF kernel, crossing the guest-to-host isolation boundary.\nC:H - The freed VF-state allocation contains kernel pointers and synchronization state, and reclamation of the stale object can support disclosure of arbitrary host-kernel memory.\nI:H - The worker performs writes through destroyed mutexes and stale pointers into freed or reallocated memory, providing memory-corruption primitives potentially usable for host-kernel code execution.\nA:H - The observed use-after-free produces invalid kernel writes and NULL-pointer dereferences, allowing a kernel oops or panic and complete host availability loss."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:39.854Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/218c2836b3987f3fa1d9eac505462cded0821e4c"
            },
            {
              "url": "https://git.kernel.org/stable/c/446b4d77599cf1a168573f7fb32a4a6aa4f09219"
            },
            {
              "url": "https://git.kernel.org/stable/c/5d916c1eae1933511a69bffe243b4ee5d7da399c"
            },
            {
              "url": "https://git.kernel.org/stable/c/f344a369d0380d54c8d6c8d24734a78dd5a89817"
            },
            {
              "url": "https://git.kernel.org/stable/c/51144032248cc4ea22917370565650670b8b4e9b"
            },
            {
              "url": "https://git.kernel.org/stable/c/49cd5ac6de8de39a14ead609bb552d372d5602cd"
            },
            {
              "url": "https://git.kernel.org/stable/c/6e92b28cd74fa433658efeadf21b9d4b01023d7d"
            },
            {
              "url": "https://git.kernel.org/stable/c/277281c10c63791067d24d421f7c43a15faa9096"
            }
          ],
          "title": "crypto: qat - fix VF2PF work teardown race in adf_disable_sriov()",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64438",
        "datePublished": "2026-07-25T08:51:11.740Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:39.854Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64437 (GCVE-0-2026-64437)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    ksmbd: fix use-after-free of a deferred file_lock on SMB2_CLOSE then SMB2_CANCEL
    Summary
    In the Linux kernel, the following vulnerability has been resolved: ksmbd: fix use-after-free of a deferred file_lock on SMB2_CLOSE then SMB2_CANCEL Commit f580d27e8928 ("ksmbd: fix use-after-free of a deferred file_lock on double SMB2_CANCEL") made smb2_cancel() skip a work whose state is KSMBD_WORK_CANCELLED, so its cancel_fn cannot be fired a second time. But KSMBD_WORK has three states (ACTIVE, CANCELLED, CLOSED), and the same freeing producer path is reached for CLOSED too: SMB2_CLOSE on the locking handle -> set_close_state_blocked_works() sets the deferred work's state to KSMBD_WORK_CLOSED and wakes the smb2_lock() worker. The worker takes the non-ACTIVE early-exit, locks_free_lock()s the file_lock and, because the state is not KSMBD_WORK_CANCELLED, takes the STATUS_RANGE_NOT_LOCKED branch with "goto out2" -- which, like the cancelled branch, skips release_async_work(). The work stays on conn->async_requests with a live cancel_fn = smb2_remove_blocked_lock pointing at the freed file_lock. A subsequent SMB2_CANCEL for the same AsyncId then passes the KSMBD_WORK_CANCELLED-only guard (its state is KSMBD_WORK_CLOSED), so smb2_cancel() fires cancel_fn again over the freed file_lock -- the same use-after-free fixed, via SMB2_CLOSE instead of a first SMB2_CANCEL: BUG: KASAN: slab-use-after-free in __locks_delete_block __locks_delete_block locks_delete_block ksmbd_vfs_posix_lock_unblock smb2_remove_blocked_lock smb2_cancel <- 2nd SMB2_CANCEL fires cancel_fn handle_ksmbd_work Allocated by ...: locks_alloc_lock <- smb2_lock Freed by ...: locks_free_lock <- smb2_lock (non-ACTIVE early-exit) ... cache file_lock_cache of size 192 Reproduced on mainline 7.1-rc7 (which already contains f580d27e8928) with KASAN by an authenticated SMB client; the double-SMB2_CANCEL control is silent on that kernel, so the splat is attributable to the CLOSE trigger. Only an ACTIVE deferred work may have its cancel_fn fired: both terminal states (CANCELLED and CLOSED) reach the smb2_lock() early-exit that frees the file_lock and skips release_async_work(). Guard on KSMBD_WORK_ACTIVE so any non-active work is skipped.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: b7063c7426ea5a4d15e01b60538718765392f49d , < a796ba4e61d5e14e07b79a359faac69f8f9b22a3 (git)
    Affected: 0da2e073f9cbf4985a0fd9acb71bc5ff599f8afd , < b8e274e69ab09222c7a552c7c0c1eef9ce627fc1 (git)
    Affected: 89ae9df09d2c1fb4a4eb495c113a7ce1dca34147 , < ddb9239828336b36d8a3ef5943fdffb2f55b6508 (git)
    Affected: 14d2eee0193ac3cd1bf3d014373449f0b8d35d6d , < 94083db751930b1540ddff2b54d4677549c57f81 (git)
    Affected: f580d27e8928828693df44ba2db0fffdbe11dfea , < 12c36c99655f325befe50c26842f7deca414c381 (git)
    Affected: f580d27e8928828693df44ba2db0fffdbe11dfea , < 10f293a07f9e10e988b0ae44e2e99c631f5a68e0 (git)
    Affected: 2b2eda2821cff1d1b5a423b6ee7d8fc6fbc8e694 (git)
    Affected: 6.1.176 , < 6.1.178 (semver)
    Affected: 6.6.143 , < 6.6.145 (semver)
    Affected: 6.12.94 , < 6.12.96 (semver)
    Affected: 6.18.36 , < 6.18.39 (semver)
    Affected: 7.0.13 , < 7.1 (semver)
    Create a notification for this product.
    Linux Linux Affected: 7.1
    Unaffected: 0 , < 7.1 (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/smb/server/smb2pdu.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "a796ba4e61d5e14e07b79a359faac69f8f9b22a3",
                  "status": "affected",
                  "version": "b7063c7426ea5a4d15e01b60538718765392f49d",
                  "versionType": "git"
                },
                {
                  "lessThan": "b8e274e69ab09222c7a552c7c0c1eef9ce627fc1",
                  "status": "affected",
                  "version": "0da2e073f9cbf4985a0fd9acb71bc5ff599f8afd",
                  "versionType": "git"
                },
                {
                  "lessThan": "ddb9239828336b36d8a3ef5943fdffb2f55b6508",
                  "status": "affected",
                  "version": "89ae9df09d2c1fb4a4eb495c113a7ce1dca34147",
                  "versionType": "git"
                },
                {
                  "lessThan": "94083db751930b1540ddff2b54d4677549c57f81",
                  "status": "affected",
                  "version": "14d2eee0193ac3cd1bf3d014373449f0b8d35d6d",
                  "versionType": "git"
                },
                {
                  "lessThan": "12c36c99655f325befe50c26842f7deca414c381",
                  "status": "affected",
                  "version": "f580d27e8928828693df44ba2db0fffdbe11dfea",
                  "versionType": "git"
                },
                {
                  "lessThan": "10f293a07f9e10e988b0ae44e2e99c631f5a68e0",
                  "status": "affected",
                  "version": "f580d27e8928828693df44ba2db0fffdbe11dfea",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "2b2eda2821cff1d1b5a423b6ee7d8fc6fbc8e694",
                  "versionType": "git"
                },
                {
                  "lessThan": "6.1.178",
                  "status": "affected",
                  "version": "6.1.176",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.6.145",
                  "status": "affected",
                  "version": "6.6.143",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.12.96",
                  "status": "affected",
                  "version": "6.12.94",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.18.39",
                  "status": "affected",
                  "version": "6.18.36",
                  "versionType": "semver"
                },
                {
                  "lessThan": "7.1",
                  "status": "affected",
                  "version": "7.0.13",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/smb/server/smb2pdu.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "7.1"
                },
                {
                  "lessThan": "7.1",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.1.178",
                      "versionStartIncluding": "6.1.176",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "6.6.143",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "6.12.94",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.18.36",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "7.0.13",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nksmbd: fix use-after-free of a deferred file_lock on SMB2_CLOSE then SMB2_CANCEL\n\nCommit f580d27e8928 (\"ksmbd: fix use-after-free of a deferred file_lock on\ndouble SMB2_CANCEL\") made smb2_cancel() skip a work whose state is\nKSMBD_WORK_CANCELLED, so its cancel_fn cannot be fired a second time. But\nKSMBD_WORK has three states (ACTIVE, CANCELLED, CLOSED), and the same\nfreeing producer path is reached for CLOSED too:\n\n  SMB2_CLOSE on the locking handle -\u003e set_close_state_blocked_works() sets\n  the deferred work\u0027s state to KSMBD_WORK_CLOSED and wakes the smb2_lock()\n  worker. The worker takes the non-ACTIVE early-exit, locks_free_lock()s\n  the file_lock and, because the state is not KSMBD_WORK_CANCELLED, takes\n  the STATUS_RANGE_NOT_LOCKED branch with \"goto out2\" -- which, like the\n  cancelled branch, skips release_async_work(). The work stays on\n  conn-\u003easync_requests with a live cancel_fn = smb2_remove_blocked_lock\n  pointing at the freed file_lock.\n\nA subsequent SMB2_CANCEL for the same AsyncId then passes the\nKSMBD_WORK_CANCELLED-only guard (its state is KSMBD_WORK_CLOSED), so\nsmb2_cancel() fires cancel_fn again over the freed file_lock -- the same\nuse-after-free fixed, via SMB2_CLOSE instead of a first SMB2_CANCEL:\n\n  BUG: KASAN: slab-use-after-free in __locks_delete_block\n    __locks_delete_block\n    locks_delete_block\n    ksmbd_vfs_posix_lock_unblock\n    smb2_remove_blocked_lock\n    smb2_cancel                 \u003c- 2nd SMB2_CANCEL fires cancel_fn\n    handle_ksmbd_work\n  Allocated by ...: locks_alloc_lock \u003c- smb2_lock\n  Freed by ...:     locks_free_lock  \u003c- smb2_lock (non-ACTIVE early-exit)\n  ... cache file_lock_cache of size 192\n\nReproduced on mainline 7.1-rc7 (which already contains f580d27e8928) with\nKASAN by an authenticated SMB client; the double-SMB2_CANCEL control is\nsilent on that kernel, so the splat is attributable to the CLOSE trigger.\n\nOnly an ACTIVE deferred work may have its cancel_fn fired: both terminal\nstates (CANCELLED and CLOSED) reach the smb2_lock() early-exit that frees\nthe file_lock and skips release_async_work(). Guard on KSMBD_WORK_ACTIVE\nso any non-active work is skipped."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - ksmbd processes attacker-supplied SMB2 requests over TCP port 445, so the complete vulnerable path is remotely network-reachable.\nAC:L - The attacker controls the conflicting file handles, deferred LOCK, CLOSE, and CANCEL requests and can pipeline or repeat them to win the cleanup race without relying on victim-controlled conditions.\nPR:L - The sequence is post-authentication: LOCK and CLOSE require a valid SMB session, authorized tree connection, and usable file handle, but only ordinary share-user rights and no administrative capabilities.\nUI:N - No victim action is required because the authenticated SMB client can create the conflicting locks and send the complete triggering sequence.\nS:U - The corruption occurs within the host kernel serving SMB and does not inherently cross a separate virtualization, sandbox, or IOMMU security authority.\nC:H - The stale 192-byte file_lock is dereferenced through attacker-timed slab reuse, including linked-list and waitqueue pointers, making kernel-memory disclosure reasonably exploitable.\nI:H - Operations such as list unlinking and waitqueue handling on the reclaimed object can corrupt kernel pointers and potentially provide arbitrary writes or control-flow hijacking.\nA:H - The confirmed slab use-after-free can cause a kernel oops or panic, and the remote client can repeatedly trigger the sequence."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:38.646Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/a796ba4e61d5e14e07b79a359faac69f8f9b22a3"
            },
            {
              "url": "https://git.kernel.org/stable/c/b8e274e69ab09222c7a552c7c0c1eef9ce627fc1"
            },
            {
              "url": "https://git.kernel.org/stable/c/ddb9239828336b36d8a3ef5943fdffb2f55b6508"
            },
            {
              "url": "https://git.kernel.org/stable/c/94083db751930b1540ddff2b54d4677549c57f81"
            },
            {
              "url": "https://git.kernel.org/stable/c/12c36c99655f325befe50c26842f7deca414c381"
            },
            {
              "url": "https://git.kernel.org/stable/c/10f293a07f9e10e988b0ae44e2e99c631f5a68e0"
            }
          ],
          "title": "ksmbd: fix use-after-free of a deferred file_lock on SMB2_CLOSE then SMB2_CANCEL",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64437",
        "datePublished": "2026-07-25T08:51:11.072Z",
        "dateReserved": "2026-07-19T15:36:31.788Z",
        "dateUpdated": "2026-08-17T04:55:38.646Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64436 (GCVE-0-2026-64436)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    net: af_key: initialize alg_key_len for IPComp states
    Summary
    In the Linux kernel, the following vulnerability has been resolved: net: af_key: initialize alg_key_len for IPComp states pfkey_msg2xfrm_state() handles the IPComp (SADB_X_SATYPE_IPCOMP) case by allocating x->calg and copying only the algorithm name: x->calg = kmalloc_obj(*x->calg); if (!x->calg) { err = -ENOMEM; goto out; } strcpy(x->calg->alg_name, a->name); x->props.calgo = sa->sadb_sa_encrypt; Unlike the authentication (x->aalg) and encryption (x->ealg) branches of the same function, the compression branch never initializes calg->alg_key_len. IPComp carries no key and the allocation only reserves sizeof(struct xfrm_algo) (i.e. no room for a key), so the field is left containing uninitialized slab data. calg->alg_key_len is later used as a length by xfrm_algo_clone() when an IPComp state is cloned during XFRM_MSG_MIGRATE: xfrm_state_migrate() xfrm_state_clone_and_setup() x->calg = xfrm_algo_clone(orig->calg); kmemdup(orig, xfrm_alg_len(orig)); where xfrm_alg_len() returns sizeof(*alg) + (alg_key_len + 7) / 8. With a non-zero garbage alg_key_len, kmemdup() reads past the end of the 68-byte calg object. Adding an IPComp SA via PF_KEY and then migrating it triggers (net-next, KASAN, init_on_alloc=0): BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x44/0x60 Read of size 4164 at addr ff11000025a74980 by task diag2/9287 CPU: 3 UID: 0 PID: 9287 Comm: diag2 7.1.0-rc6-g903db046d557 #1 Call Trace: <TASK> dump_stack_lvl+0x10e/0x1f0 print_report+0xf7/0x600 kasan_report+0xe4/0x120 kasan_check_range+0x105/0x1b0 __asan_memcpy+0x23/0x60 kmemdup_noprof+0x44/0x60 xfrm_state_migrate+0x70a/0x1da0 xfrm_migrate+0x753/0x18a0 xfrm_do_migrate+0xb47/0xf10 xfrm_user_rcv_msg+0x411/0xb50 netlink_rcv_skb+0x158/0x420 xfrm_netlink_rcv+0x71/0x90 netlink_unicast+0x584/0x850 netlink_sendmsg+0x8b0/0xdc0 ____sys_sendmsg+0x9f7/0xb90 ___sys_sendmsg+0x134/0x1d0 __sys_sendmsg+0x16d/0x220 do_syscall_64+0x116/0x7d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> Allocated by task 9287: kasan_save_stack+0x33/0x60 kasan_save_track+0x14/0x30 __kasan_kmalloc+0xaa/0xb0 pfkey_add+0x2652/0x2ea0 pfkey_process+0x6d0/0x830 pfkey_sendmsg+0x42c/0x850 __sys_sendto+0x461/0x4b0 __x64_sys_sendto+0xe0/0x1c0 do_syscall_64+0x116/0x7d0 entry_SYSCALL_64_after_hwframe+0x77/0x7f The buggy address belongs to the object at ff11000025a74980 which belongs to the cache kmalloc-96 of size 96 The buggy address is located 0 bytes inside of allocated 68-byte region [ff11000025a74980, ff11000025a749c4) Depending on the uninitialized value the same field can instead request an oversized kmemdup() allocation and make the migration clone fail. The XFRM netlink path is not affected: verify_one_alg() rejects an XFRMA_ALG_COMP attribute shorter than xfrm_alg_len(), so a calg added via XFRM_MSG_NEWSA is always self-consistent. Initialize calg->alg_key_len to 0, matching the aalg/ealg branches.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < 58e82fc3dedb57b1432292504415b224fd2d6acb (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < 01b9115b55018123ef2449ac4951f89147a8428e (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < 3f63d1752d90c0e28be931a48ab5d89bc97d637d (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < 273c06b81d2e902b21acc801ae18c8276c8a9b69 (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < 6de2a650917bedaaefd65b17cede83c5e2c1dedd (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < e8417353cbd078d10531ba3928e609c84ab09e6b (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < cea34abc94b0a81e3a8b5cfb41cf45af37c2c67e (git)
    Affected: 80c9abaabf4283f7cf4a0b3597cd302506635b7f , < d129c3177d7b1138fd5066fcc63a698b3ba415b0 (git)
    Create a notification for this product.
    Linux Linux Affected: 2.6.21
    Unaffected: 0 , < 2.6.21 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "net/key/af_key.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "58e82fc3dedb57b1432292504415b224fd2d6acb",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "01b9115b55018123ef2449ac4951f89147a8428e",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "3f63d1752d90c0e28be931a48ab5d89bc97d637d",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "273c06b81d2e902b21acc801ae18c8276c8a9b69",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "6de2a650917bedaaefd65b17cede83c5e2c1dedd",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "e8417353cbd078d10531ba3928e609c84ab09e6b",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "cea34abc94b0a81e3a8b5cfb41cf45af37c2c67e",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                },
                {
                  "lessThan": "d129c3177d7b1138fd5066fcc63a698b3ba415b0",
                  "status": "affected",
                  "version": "80c9abaabf4283f7cf4a0b3597cd302506635b7f",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "net/key/af_key.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "2.6.21"
                },
                {
                  "lessThan": "2.6.21",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "2.6.21",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: af_key: initialize alg_key_len for IPComp states\n\npfkey_msg2xfrm_state() handles the IPComp (SADB_X_SATYPE_IPCOMP) case by\nallocating x-\u003ecalg and copying only the algorithm name:\n\n\tx-\u003ecalg = kmalloc_obj(*x-\u003ecalg);\n\tif (!x-\u003ecalg) {\n\t\terr = -ENOMEM;\n\t\tgoto out;\n\t}\n\tstrcpy(x-\u003ecalg-\u003ealg_name, a-\u003ename);\n\tx-\u003eprops.calgo = sa-\u003esadb_sa_encrypt;\n\nUnlike the authentication (x-\u003eaalg) and encryption (x-\u003eealg) branches of\nthe same function, the compression branch never initializes\ncalg-\u003ealg_key_len.  IPComp carries no key and the allocation only\nreserves sizeof(struct xfrm_algo) (i.e. no room for a key), so the field\nis left containing uninitialized slab data.\n\ncalg-\u003ealg_key_len is later used as a length by xfrm_algo_clone() when an\nIPComp state is cloned during XFRM_MSG_MIGRATE:\n\n\txfrm_state_migrate()\n\t  xfrm_state_clone_and_setup()\n\t    x-\u003ecalg = xfrm_algo_clone(orig-\u003ecalg);\n\t      kmemdup(orig, xfrm_alg_len(orig));\n\nwhere xfrm_alg_len() returns sizeof(*alg) + (alg_key_len + 7) / 8.  With\na non-zero garbage alg_key_len, kmemdup() reads past the end of the\n68-byte calg object.  Adding an IPComp SA via PF_KEY and then migrating\nit triggers (net-next, KASAN, init_on_alloc=0):\n\n  BUG: KASAN: slab-out-of-bounds in kmemdup_noprof+0x44/0x60\n  Read of size 4164 at addr ff11000025a74980 by task diag2/9287\n  CPU: 3 UID: 0 PID: 9287 Comm: diag2 7.1.0-rc6-g903db046d557 #1\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x10e/0x1f0\n   print_report+0xf7/0x600\n   kasan_report+0xe4/0x120\n   kasan_check_range+0x105/0x1b0\n   __asan_memcpy+0x23/0x60\n   kmemdup_noprof+0x44/0x60\n   xfrm_state_migrate+0x70a/0x1da0\n   xfrm_migrate+0x753/0x18a0\n   xfrm_do_migrate+0xb47/0xf10\n   xfrm_user_rcv_msg+0x411/0xb50\n   netlink_rcv_skb+0x158/0x420\n   xfrm_netlink_rcv+0x71/0x90\n   netlink_unicast+0x584/0x850\n   netlink_sendmsg+0x8b0/0xdc0\n   ____sys_sendmsg+0x9f7/0xb90\n   ___sys_sendmsg+0x134/0x1d0\n   __sys_sendmsg+0x16d/0x220\n   do_syscall_64+0x116/0x7d0\n   entry_SYSCALL_64_after_hwframe+0x77/0x7f\n   \u003c/TASK\u003e\n\n  Allocated by task 9287:\n   kasan_save_stack+0x33/0x60\n   kasan_save_track+0x14/0x30\n   __kasan_kmalloc+0xaa/0xb0\n   pfkey_add+0x2652/0x2ea0\n   pfkey_process+0x6d0/0x830\n   pfkey_sendmsg+0x42c/0x850\n   __sys_sendto+0x461/0x4b0\n   __x64_sys_sendto+0xe0/0x1c0\n   do_syscall_64+0x116/0x7d0\n   entry_SYSCALL_64_after_hwframe+0x77/0x7f\n\n  The buggy address belongs to the object at ff11000025a74980\n   which belongs to the cache kmalloc-96 of size 96\n  The buggy address is located 0 bytes inside of\n   allocated 68-byte region [ff11000025a74980, ff11000025a749c4)\n\nDepending on the uninitialized value the same field can instead request\nan oversized kmemdup() allocation and make the migration clone fail.\n\nThe XFRM netlink path is not affected: verify_one_alg() rejects an\nXFRMA_ALG_COMP attribute shorter than xfrm_alg_len(), so a calg added via\nXFRM_MSG_NEWSA is always self-consistent.\n\nInitialize calg-\u003ealg_key_len to 0, matching the aalg/ealg branches."
            }
          ],
          "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 - Exploitation requires local PF_KEY and XFRM netlink messages; received IPComp network packets cannot create or migrate the vulnerable state.\nAC:L - The attacker can deterministically prime the same kmalloc-96 cache and control the stale length before triggering migration. No race or victim-controlled condition is required.\nPR:L - Both paths require CAP_NET_ADMIN relative to the network namespace\u0027s owning user namespace. An unprivileged user can obtain this capability in a newly created user and network namespace.\nUI:N - No victim action is required after the attacker gains local execution and submits the crafted state and migration messages.\nS:U - The vulnerability affects the host kernel within its existing security authority and does not cross a VM, IOMMU, or equivalent scope boundary.\nC:H - The controlled length causes a potentially large out-of-bounds read across adjacent kernel heap objects, which can capture sensitive kernel memory and is not tightly bounded.\nI:N - kmemdup allocates a destination matching the computed length, and the vulnerable operation only over-reads the source. No out-of-bounds write or control-flow modification path was identified.\nA:H - The over-read can trigger a kernel fault or panic under memory-safety enforcement. Controlled oversized clone allocations can also be repeated across states to exhaust kernel memory."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:37.549Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/58e82fc3dedb57b1432292504415b224fd2d6acb"
            },
            {
              "url": "https://git.kernel.org/stable/c/01b9115b55018123ef2449ac4951f89147a8428e"
            },
            {
              "url": "https://git.kernel.org/stable/c/3f63d1752d90c0e28be931a48ab5d89bc97d637d"
            },
            {
              "url": "https://git.kernel.org/stable/c/273c06b81d2e902b21acc801ae18c8276c8a9b69"
            },
            {
              "url": "https://git.kernel.org/stable/c/6de2a650917bedaaefd65b17cede83c5e2c1dedd"
            },
            {
              "url": "https://git.kernel.org/stable/c/e8417353cbd078d10531ba3928e609c84ab09e6b"
            },
            {
              "url": "https://git.kernel.org/stable/c/cea34abc94b0a81e3a8b5cfb41cf45af37c2c67e"
            },
            {
              "url": "https://git.kernel.org/stable/c/d129c3177d7b1138fd5066fcc63a698b3ba415b0"
            }
          ],
          "title": "net: af_key: initialize alg_key_len for IPComp states",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64436",
        "datePublished": "2026-07-25T08:51:10.370Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:37.549Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64435 (GCVE-0-2026-64435)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    audit: Fix data races of skb_queue_len() readers on audit_queue
    Summary
    In the Linux kernel, the following vulnerability has been resolved: audit: Fix data races of skb_queue_len() readers on audit_queue Multiple readers access audit_queue.qlen via skb_queue_len() without holding the queue lock or using READ_ONCE(), while kauditd writes to this field via the skb_dequeue() → __skb_unlink() path with WRITE_ONCE() protected by a spinlock. This constitutes data races. All affected skb_queue_len(&audit_queue) call sites: - kauditd_thread() wait_event_freezable() condition - audit_receive_msg() AUDIT_GET handler (s.backlog assignment) - audit_receive() backlog check - audit_log_start() backlog check and pr_warn() KCSAN reports the following conflicting access pattern (one example): ================================================================== BUG: KCSAN: data-race in audit_log_start / skb_dequeue write (marked) to 0xffffffff8512ee20 of 4 bytes by task 661 on cpu 57: skb_dequeue+0x70/0xf0 kauditd_send_queue+0x71/0x220 kauditd_thread+0x1cb/0x430 kthread+0x1c2/0x210 ret_from_fork+0x162/0x1a0 ret_from_fork_asm+0x1a/0x30 read to 0xffffffff8512ee20 of 4 bytes by task 36586 on cpu 1: audit_log_start+0x2a0/0x6b0 audit_core_dumps+0x64/0xa0 do_coredump+0x14b/0x1260 get_signal+0xeb2/0xf70 arch_do_signal_or_restart+0x41/0x170 exit_to_user_mode_loop+0xa2/0x1c0 do_syscall_64+0x1a3/0x1c0 entry_SYSCALL_64_after_hwframe+0x76/0xe0 value changed: 0x00000001 -> 0x00000000 ================================================================== Resolve the race by switching to lockless helper skb_queue_len_lockless(), which internally uses READ_ONCE() and properly pairs with the WRITE_ONCE() write accesses already present on the writer side. [PM: line length tweak]
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < 69f98fff30bdaa72b0cb0e7e078ab6456a0a59b0 (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < b35597bdae1a5d8395da4b9baa993b9b71f74d68 (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < e575dabb805252e3113fdc3f56f6ecacfde422d0 (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < 7ff42312ccde549f8c698723822c7db35107a39b (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < a3d85dec60bb0622360fc176b2a51abdbe2ff0ad (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < fe997a84a385f840b593ead92e575503a5046cee (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < c5186201fa7030289cc4fe23fae87a3fcb566856 (git)
    Affected: 3197542482df22c2a131d4a813280bd7c54cedf5 , < c9a71daaecb2fb1d8c704545cc0b1c920b9bf5d7 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.10
    Unaffected: 0 , < 4.10 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "kernel/audit.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "69f98fff30bdaa72b0cb0e7e078ab6456a0a59b0",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "b35597bdae1a5d8395da4b9baa993b9b71f74d68",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "e575dabb805252e3113fdc3f56f6ecacfde422d0",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "7ff42312ccde549f8c698723822c7db35107a39b",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "a3d85dec60bb0622360fc176b2a51abdbe2ff0ad",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "fe997a84a385f840b593ead92e575503a5046cee",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "c5186201fa7030289cc4fe23fae87a3fcb566856",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                },
                {
                  "lessThan": "c9a71daaecb2fb1d8c704545cc0b1c920b9bf5d7",
                  "status": "affected",
                  "version": "3197542482df22c2a131d4a813280bd7c54cedf5",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "kernel/audit.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.10"
                },
                {
                  "lessThan": "4.10",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.10",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\naudit: Fix data races of skb_queue_len() readers on audit_queue\n\nMultiple readers access audit_queue.qlen via skb_queue_len() without\nholding the queue lock or using READ_ONCE(), while kauditd writes to\nthis field via the skb_dequeue() \u2192 __skb_unlink() path with WRITE_ONCE()\nprotected by a spinlock. This constitutes data races.\n\nAll affected skb_queue_len(\u0026audit_queue) call sites:\n  - kauditd_thread() wait_event_freezable() condition\n  - audit_receive_msg() AUDIT_GET handler (s.backlog assignment)\n  - audit_receive() backlog check\n  - audit_log_start() backlog check and pr_warn()\n\nKCSAN reports the following conflicting access pattern (one example):\n==================================================================\nBUG: KCSAN: data-race in audit_log_start / skb_dequeue\n\nwrite (marked) to 0xffffffff8512ee20 of 4 bytes by task 661 on cpu 57:\n skb_dequeue+0x70/0xf0\n kauditd_send_queue+0x71/0x220\n kauditd_thread+0x1cb/0x430\n kthread+0x1c2/0x210\n ret_from_fork+0x162/0x1a0\n ret_from_fork_asm+0x1a/0x30\n\nread to 0xffffffff8512ee20 of 4 bytes by task 36586 on cpu 1:\n audit_log_start+0x2a0/0x6b0\n audit_core_dumps+0x64/0xa0\n do_coredump+0x14b/0x1260\n get_signal+0xeb2/0xf70\n arch_do_signal_or_restart+0x41/0x170\n exit_to_user_mode_loop+0xa2/0x1c0\n do_syscall_64+0x1a3/0x1c0\n entry_SYSCALL_64_after_hwframe+0x76/0xe0\n\nvalue changed: 0x00000001 -\u003e 0x00000000\n==================================================================\n\nResolve the race by switching to lockless helper skb_queue_len_lockless(),\nwhich internally uses READ_ONCE() and properly pairs with the WRITE_ONCE()\nwrite accesses already present on the writer side.\n\n[PM: line length tweak]"
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.2,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - Unauthenticated packets matching a pre-existing nftables audit-level logging or xtables AUDIT rule reach audit_log_start() through the network receive and netfilter paths.\nAC:L - Parallel matching traffic invokes the vulnerable readers while feeding and waking kauditd, allowing the attacker to repeatedly drive both sides of the race.\nPR:N - The audit rule must already be configured, but the remote attacker needs no credentials or capabilities to send matching packets.\nUI:N - No victim action is required after the affected network-audit configuration is active.\nS:U - The race and its effects remain within the host kernel and its audit security authority.\nC:N - The raced value is only the 32-bit queue length; no pointer, packet contents, or adjacent memory is disclosed.\nI:L - An incorrect backlog decision can delay or discard audit records, causing limited corruption of the security audit trail without an arbitrary-write primitive.\nA:H - In hardened systems using AUDIT_FAIL_PANIC, a raced queue length interpreted as exceeding the limit from the GFP_ATOMIC packet-audit path calls audit_log_lost() and can panic the kernel."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:36.444Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/69f98fff30bdaa72b0cb0e7e078ab6456a0a59b0"
            },
            {
              "url": "https://git.kernel.org/stable/c/b35597bdae1a5d8395da4b9baa993b9b71f74d68"
            },
            {
              "url": "https://git.kernel.org/stable/c/e575dabb805252e3113fdc3f56f6ecacfde422d0"
            },
            {
              "url": "https://git.kernel.org/stable/c/7ff42312ccde549f8c698723822c7db35107a39b"
            },
            {
              "url": "https://git.kernel.org/stable/c/a3d85dec60bb0622360fc176b2a51abdbe2ff0ad"
            },
            {
              "url": "https://git.kernel.org/stable/c/fe997a84a385f840b593ead92e575503a5046cee"
            },
            {
              "url": "https://git.kernel.org/stable/c/c5186201fa7030289cc4fe23fae87a3fcb566856"
            },
            {
              "url": "https://git.kernel.org/stable/c/c9a71daaecb2fb1d8c704545cc0b1c920b9bf5d7"
            }
          ],
          "title": "audit: Fix data races of skb_queue_len() readers on audit_queue",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64435",
        "datePublished": "2026-07-25T08:51:09.688Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:36.444Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64434 (GCVE-0-2026-64434)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-19 16:28
    VLAI
    Title
    Bluetooth: L2CAP: Fix UAF in channel timeout by holding conn ref
    Summary
    In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: Fix UAF in channel timeout by holding conn ref l2cap_chan_timeout() runs asynchronously and accesses chan->conn. If the connection is torn down while the timer is running or pending, chan->conn can be freed, leading to a use-after-free when the timer worker attempts to lock conn->lock: | BUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:112 [inline] | BUG: KASAN: slab-use-after-free in atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline] | BUG: KASAN: slab-use-after-free in __mutex_trylock_fast kernel/locking/mutex.c:161 [inline] | BUG: KASAN: slab-use-after-free in mutex_lock+0x4f/0xa0 kernel/locking/mutex.c:318 | Write of size 8 at addr ffff8881298d9550 by task kworker/2:1/83 | | CPU: 2 UID: 0 PID: 83 Comm: kworker/2:1 Not tainted 7.1.0-rc6-next-20260601-dirty #6 PREEMPT(full) | Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-debian-1.17.0-1 04/01/2014 | Workqueue: events l2cap_chan_timeout | Call Trace: | <TASK> | instrument_atomic_read_write include/linux/instrumented.h:112 [inline] | atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline] | __mutex_trylock_fast kernel/locking/mutex.c:161 [inline] | mutex_lock+0x4f/0xa0 kernel/locking/mutex.c:318 | l2cap_chan_timeout+0x5d/0x1b0 net/bluetooth/l2cap_core.c:422 | process_one_work kernel/workqueue.c:3326 [inline] | process_scheduled_works+0x7c8/0xfb0 kernel/workqueue.c:3409 | worker_thread+0x8a9/0xcf0 kernel/workqueue.c:3490 | kthread+0x346/0x430 kernel/kthread.c:436 | ret_from_fork+0x1a3/0x470 arch/x86/kernel/process.c:158 | ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 | </TASK> | | Allocated by task 320: | l2cap_conn_add+0xa7/0x820 net/bluetooth/l2cap_core.c:7075 | l2cap_connect_cfm+0xdb/0xd70 net/bluetooth/l2cap_core.c:7452 | hci_connect_cfm include/net/bluetooth/hci_core.h:2139 [inline] | hci_remote_features_evt+0x52f/0x9f0 net/bluetooth/hci_event.c:3760 | hci_event_func net/bluetooth/hci_event.c:7796 [inline] | hci_event_packet+0x561/0xa70 net/bluetooth/hci_event.c:7847 | hci_rx_work+0x370/0x890 net/bluetooth/hci_core.c:4040 | process_one_work kernel/workqueue.c:3326 [inline] | process_scheduled_works+0x7c8/0xfb0 kernel/workqueue.c:3409 | worker_thread+0x8a9/0xcf0 kernel/workqueue.c:3490 | kthread+0x346/0x430 kernel/kthread.c:436 | ret_from_fork+0x1a3/0x470 arch/x86/kernel/process.c:158 | ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245 | | Freed by task 322: | hci_disconn_cfm include/net/bluetooth/hci_core.h:2154 [inline] | hci_conn_hash_flush+0x101/0x1f0 net/bluetooth/hci_conn.c:2736 | hci_dev_close_sync+0x889/0xde0 net/bluetooth/hci_sync.c:5405 | hci_dev_do_close net/bluetooth/hci_core.c:502 [inline] | hci_unregister_dev+0x1f7/0x370 net/bluetooth/hci_core.c:2679 | vhci_release+0x12a/0x180 drivers/bluetooth/hci_vhci.c:690 | __fput+0x369/0x890 fs/file_table.c:510 | task_work_run+0x160/0x1d0 kernel/task_work.c:233 | get_signal+0xf5b/0x1120 kernel/signal.c:2810 | arch_do_signal_or_restart+0x4d/0x600 arch/x86/kernel/signal.c:337 | __exit_to_user_mode_loop kernel/entry/common.c:64 [inline] | exit_to_user_mode_loop+0x85/0x510 kernel/entry/common.c:98 | do_syscall_64+0x263/0x3d0 arch/x86/entry/syscall_64.c:100 | entry_SYSCALL_64_after_hwframe+0x77/0x7f | | The buggy address belongs to the object at ffff8881298d9400 | which belongs to the cache kmalloc-512 of size 512 | The buggy address is located 336 bytes inside of | freed 512-byte region [ffff8881298d9400, ffff8881298d9600) Fix it by having chan->conn hold a reference to l2cap_conn (via l2cap_conn_get) when the channel is added to the connection, and releasing it in the channel destructor. This ensures the l2cap_conn remains alive as long as the channel exists. A new FLAG_DEL channel flag is introduced to indicate that the ch ---truncated---
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 3634cbdc2eb414b69ffa752ddbe5e0458518e321 , < 8f90405a4a6f1f1880dc07996b47bf57c712bd8a (git)
    Affected: e1c100e2d61bd8c718b7d91fe3e050780a9bf72d , < 32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b (git)
    Affected: deb8493a8fa599f6c95e2465b12bfdfb7f94a1d9 , < 8922c7940bae9ce4b1736dddb6362370793835c2 (git)
    Affected: 89dec92041717b027216e110599e4f6d6c921b79 , < 91047a4396a8b1857a6f712a90cf33ec0012b189 (git)
    Affected: 50dfec218808b148ab4247b1858031b7a32015c5 , < 0b0e2bf39cf99e458d991b9df253727e036a7d7d (git)
    Affected: 859d3ace791ed878ae9ba5522c7844d960da8f88 , < d3b739db5dc6f688a60d56da872fabaf65246032 (git)
    Affected: 8c8e620467a7b51562dbcefbd1f09f288d7d710d , < 50c38d9f42a529691e4e67ea9cedf4f0bfc8d277 (git)
    Affected: 8c8e620467a7b51562dbcefbd1f09f288d7d710d , < b66774b48dd98f07254951f74ea6f513efe7ff8b (git)
    Affected: 7555fd885a0603f50e49a655850a1f2bd8a25398 (git)
    Affected: 5.10.259 , < 5.10.265 (semver)
    Affected: 5.15.210 , < 5.15.216 (semver)
    Affected: 6.1.176 , < 6.1.183 (semver)
    Affected: 6.6.143 , < 6.6.145 (semver)
    Affected: 6.12.93 , < 6.12.97 (semver)
    Affected: 6.18.35 , < 6.18.39 (semver)
    Affected: 7.0.12 , < 7.1 (semver)
    Create a notification for this product.
    Linux Linux Affected: 7.1
    Unaffected: 0 , < 7.1 (semver)
    Unaffected: 5.10.265 , ≤ 5.10.* (semver)
    Unaffected: 5.15.216 , ≤ 5.15.* (semver)
    Unaffected: 6.1.183 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.97 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "include/net/bluetooth/l2cap.h",
                "net/bluetooth/l2cap_core.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "8f90405a4a6f1f1880dc07996b47bf57c712bd8a",
                  "status": "affected",
                  "version": "3634cbdc2eb414b69ffa752ddbe5e0458518e321",
                  "versionType": "git"
                },
                {
                  "lessThan": "32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b",
                  "status": "affected",
                  "version": "e1c100e2d61bd8c718b7d91fe3e050780a9bf72d",
                  "versionType": "git"
                },
                {
                  "lessThan": "8922c7940bae9ce4b1736dddb6362370793835c2",
                  "status": "affected",
                  "version": "deb8493a8fa599f6c95e2465b12bfdfb7f94a1d9",
                  "versionType": "git"
                },
                {
                  "lessThan": "91047a4396a8b1857a6f712a90cf33ec0012b189",
                  "status": "affected",
                  "version": "89dec92041717b027216e110599e4f6d6c921b79",
                  "versionType": "git"
                },
                {
                  "lessThan": "0b0e2bf39cf99e458d991b9df253727e036a7d7d",
                  "status": "affected",
                  "version": "50dfec218808b148ab4247b1858031b7a32015c5",
                  "versionType": "git"
                },
                {
                  "lessThan": "d3b739db5dc6f688a60d56da872fabaf65246032",
                  "status": "affected",
                  "version": "859d3ace791ed878ae9ba5522c7844d960da8f88",
                  "versionType": "git"
                },
                {
                  "lessThan": "50c38d9f42a529691e4e67ea9cedf4f0bfc8d277",
                  "status": "affected",
                  "version": "8c8e620467a7b51562dbcefbd1f09f288d7d710d",
                  "versionType": "git"
                },
                {
                  "lessThan": "b66774b48dd98f07254951f74ea6f513efe7ff8b",
                  "status": "affected",
                  "version": "8c8e620467a7b51562dbcefbd1f09f288d7d710d",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "7555fd885a0603f50e49a655850a1f2bd8a25398",
                  "versionType": "git"
                },
                {
                  "lessThan": "5.10.265",
                  "status": "affected",
                  "version": "5.10.259",
                  "versionType": "semver"
                },
                {
                  "lessThan": "5.15.216",
                  "status": "affected",
                  "version": "5.15.210",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.1.183",
                  "status": "affected",
                  "version": "6.1.176",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.6.145",
                  "status": "affected",
                  "version": "6.6.143",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.12.97",
                  "status": "affected",
                  "version": "6.12.93",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.18.39",
                  "status": "affected",
                  "version": "6.18.35",
                  "versionType": "semver"
                },
                {
                  "lessThan": "7.1",
                  "status": "affected",
                  "version": "7.0.12",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "include/net/bluetooth/l2cap.h",
                "net/bluetooth/l2cap_core.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "7.1"
                },
                {
                  "lessThan": "7.1",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.265",
                  "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.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.97",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.265",
                      "versionStartIncluding": "5.10.259",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.216",
                      "versionStartIncluding": "5.15.210",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.183",
                      "versionStartIncluding": "6.1.176",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "6.6.143",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.97",
                      "versionStartIncluding": "6.12.93",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.18.35",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "7.0.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: L2CAP: Fix UAF in channel timeout by holding conn ref\n\nl2cap_chan_timeout() runs asynchronously and accesses chan-\u003econn. If\nthe connection is torn down while the timer is running or pending,\nchan-\u003econn can be freed, leading to a use-after-free when the timer\nworker attempts to lock conn-\u003elock:\n\n| BUG: KASAN: slab-use-after-free in instrument_atomic_read_write include/linux/instrumented.h:112 [inline]\n| BUG: KASAN: slab-use-after-free in atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline]\n| BUG: KASAN: slab-use-after-free in __mutex_trylock_fast kernel/locking/mutex.c:161 [inline]\n| BUG: KASAN: slab-use-after-free in mutex_lock+0x4f/0xa0 kernel/locking/mutex.c:318\n| Write of size 8 at addr ffff8881298d9550 by task kworker/2:1/83\n|\n| CPU: 2 UID: 0 PID: 83 Comm: kworker/2:1 Not tainted 7.1.0-rc6-next-20260601-dirty #6 PREEMPT(full)\n| Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-debian-1.17.0-1 04/01/2014\n| Workqueue: events l2cap_chan_timeout\n| Call Trace:\n|  \u003cTASK\u003e\n|  instrument_atomic_read_write include/linux/instrumented.h:112 [inline]\n|  atomic_long_try_cmpxchg_acquire include/linux/atomic/atomic-instrumented.h:4456 [inline]\n|  __mutex_trylock_fast kernel/locking/mutex.c:161 [inline]\n|  mutex_lock+0x4f/0xa0 kernel/locking/mutex.c:318\n|  l2cap_chan_timeout+0x5d/0x1b0 net/bluetooth/l2cap_core.c:422\n|  process_one_work kernel/workqueue.c:3326 [inline]\n|  process_scheduled_works+0x7c8/0xfb0 kernel/workqueue.c:3409\n|  worker_thread+0x8a9/0xcf0 kernel/workqueue.c:3490\n|  kthread+0x346/0x430 kernel/kthread.c:436\n|  ret_from_fork+0x1a3/0x470 arch/x86/kernel/process.c:158\n|  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245\n|  \u003c/TASK\u003e\n|\n| Allocated by task 320:\n|  l2cap_conn_add+0xa7/0x820 net/bluetooth/l2cap_core.c:7075\n|  l2cap_connect_cfm+0xdb/0xd70 net/bluetooth/l2cap_core.c:7452\n|  hci_connect_cfm include/net/bluetooth/hci_core.h:2139 [inline]\n|  hci_remote_features_evt+0x52f/0x9f0 net/bluetooth/hci_event.c:3760\n|  hci_event_func net/bluetooth/hci_event.c:7796 [inline]\n|  hci_event_packet+0x561/0xa70 net/bluetooth/hci_event.c:7847\n|  hci_rx_work+0x370/0x890 net/bluetooth/hci_core.c:4040\n|  process_one_work kernel/workqueue.c:3326 [inline]\n|  process_scheduled_works+0x7c8/0xfb0 kernel/workqueue.c:3409\n|  worker_thread+0x8a9/0xcf0 kernel/workqueue.c:3490\n|  kthread+0x346/0x430 kernel/kthread.c:436\n|  ret_from_fork+0x1a3/0x470 arch/x86/kernel/process.c:158\n|  ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245\n|\n| Freed by task 322:\n|  hci_disconn_cfm include/net/bluetooth/hci_core.h:2154 [inline]\n|  hci_conn_hash_flush+0x101/0x1f0 net/bluetooth/hci_conn.c:2736\n|  hci_dev_close_sync+0x889/0xde0 net/bluetooth/hci_sync.c:5405\n|  hci_dev_do_close net/bluetooth/hci_core.c:502 [inline]\n|  hci_unregister_dev+0x1f7/0x370 net/bluetooth/hci_core.c:2679\n|  vhci_release+0x12a/0x180 drivers/bluetooth/hci_vhci.c:690\n|  __fput+0x369/0x890 fs/file_table.c:510\n|  task_work_run+0x160/0x1d0 kernel/task_work.c:233\n|  get_signal+0xf5b/0x1120 kernel/signal.c:2810\n|  arch_do_signal_or_restart+0x4d/0x600 arch/x86/kernel/signal.c:337\n|  __exit_to_user_mode_loop kernel/entry/common.c:64 [inline]\n|  exit_to_user_mode_loop+0x85/0x510 kernel/entry/common.c:98\n|  do_syscall_64+0x263/0x3d0 arch/x86/entry/syscall_64.c:100\n|  entry_SYSCALL_64_after_hwframe+0x77/0x7f\n|\n| The buggy address belongs to the object at ffff8881298d9400\n|  which belongs to the cache kmalloc-512 of size 512\n| The buggy address is located 336 bytes inside of\n|  freed 512-byte region [ffff8881298d9400, ffff8881298d9600)\n\nFix it by having chan-\u003econn hold a reference to l2cap_conn (via\nl2cap_conn_get) when the channel is added to the connection, and\nreleasing it in the channel destructor. This ensures the l2cap_conn\nremains alive as long as the channel exists.\n\nA new FLAG_DEL channel flag is introduced to indicate that the ch\n---truncated---"
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 8.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:A - An unauthenticated Bluetooth peer within radio range can reach the vulnerable worker by creating a half-configured L2CAP channel and subsequently terminating the ACL connection.\nAC:L - The attacker controls both channel creation and connection teardown, can leave the 40-second channel timer armed, and can repeat or parallelize attempts to win the race.\nPR:N - The BR/EDR signaling path processes incoming L2CAP requests before application acceptance, and an SDP listener permits this path without pairing or authentication.\nUI:N - Exploitation requires no victim action because an already-running Bluetooth service and the kernel independently process the connection, timer, and disconnection.\nS:U - The UAF compromises the host kernel within the same security authority and does not inherently cross a VM, IOMMU, or comparable boundary.\nC:H - The freed kmalloc object can be reclaimed with attacker-influenced contents, allowing the UAF to support kernel-memory disclosure primitives.\nI:H - The worker performs mutex writes into the freed allocation, enabling heap corruption and potentially arbitrary write or kernel control-flow hijacking after heap grooming.\nA:H - The stale mutex access can corrupt memory, trigger an oops or panic, and can be retriggered by a nearby Bluetooth peer."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-19T16:28:16.061Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/8f90405a4a6f1f1880dc07996b47bf57c712bd8a"
            },
            {
              "url": "https://git.kernel.org/stable/c/32d783cafb46ff3ca58e6f9fd62c9c5f35eaf26b"
            },
            {
              "url": "https://git.kernel.org/stable/c/8922c7940bae9ce4b1736dddb6362370793835c2"
            },
            {
              "url": "https://git.kernel.org/stable/c/91047a4396a8b1857a6f712a90cf33ec0012b189"
            },
            {
              "url": "https://git.kernel.org/stable/c/0b0e2bf39cf99e458d991b9df253727e036a7d7d"
            },
            {
              "url": "https://git.kernel.org/stable/c/d3b739db5dc6f688a60d56da872fabaf65246032"
            },
            {
              "url": "https://git.kernel.org/stable/c/50c38d9f42a529691e4e67ea9cedf4f0bfc8d277"
            },
            {
              "url": "https://git.kernel.org/stable/c/b66774b48dd98f07254951f74ea6f513efe7ff8b"
            }
          ],
          "title": "Bluetooth: L2CAP: Fix UAF in channel timeout by holding conn ref",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64434",
        "datePublished": "2026-07-25T08:51:09.066Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-19T16:28:16.061Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64433 (GCVE-0-2026-64433)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    Bluetooth: MGMT: Fix UAF of hci_conn_params in add_device_complete
    Summary
    In the Linux kernel, the following vulnerability has been resolved: Bluetooth: MGMT: Fix UAF of hci_conn_params in add_device_complete add_device_complete() runs from the hci_cmd_sync_work kworker, which holds only hci_req_sync_lock and *not* hci_dev_lock. It calls hci_conn_params_lookup() and then dereferences the returned object (params->flags) without taking hci_dev_lock: params = hci_conn_params_lookup(hdev, &cp->addr.bdaddr, le_addr_type(cp->addr.type)); ... device_flags_changed(NULL, hdev, &cp->addr.bdaddr, cp->addr.type, hdev->conn_flags, params ? params->flags : 0); hci_conn_params_lookup() walks hdev->le_conn_params and is documented to require hdev->lock. A concurrent MGMT_OP_REMOVE_DEVICE (remove_device()), which does run under hci_dev_lock, can call hci_conn_params_free() to list_del() and kfree() the very object the lookup returned, so the subsequent params->flags read touches freed memory [0]. Hold hci_dev_lock() across the hci_conn_params_lookup() and the read of params->flags (and the matching event emission) so the lookup result cannot be freed by a concurrent remove_device() before it is used, honouring the locking contract of hci_conn_params_lookup(). [0]: (trailing page/memory-state dump trimmed) BUG: KASAN: slab-use-after-free in add_device_complete+0x358/0x3d8 net/bluetooth/mgmt.c:7671 Read of size 1 at addr ffff000017ab26c1 by task kworker/u9:8/388 CPU: 1 UID: 0 PID: 388 Comm: kworker/u9:8 Not tainted 7.0.11 #20 PREEMPT Hardware name: linux,dummy-virt (DT) Workqueue: hci0 hci_cmd_sync_work Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xb4/0xd4 lib/dump_stack.c:120 print_address_description mm/kasan/report.c:378 [inline] print_report+0x118/0x5d8 mm/kasan/report.c:482 kasan_report+0xb0/0xf4 mm/kasan/report.c:595 __asan_report_load1_noabort+0x20/0x2c mm/kasan/report_generic.c:378 add_device_complete+0x358/0x3d8 net/bluetooth/mgmt.c:7671 hci_cmd_sync_work+0x14c/0x240 net/bluetooth/hci_sync.c:334 process_one_work+0x628/0xd38 kernel/workqueue.c:3289 process_scheduled_works kernel/workqueue.c:3372 [inline] worker_thread+0x7a8/0xac0 kernel/workqueue.c:3453 kthread+0x39c/0x444 kernel/kthread.c:436 ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:860 Allocated by task 3401: kasan_save_stack+0x3c/0x64 mm/kasan/common.c:57 kasan_save_track+0x20/0x3c mm/kasan/common.c:78 kasan_save_alloc_info+0x40/0x54 mm/kasan/generic.c:570 poison_kmalloc_redzone mm/kasan/common.c:398 [inline] __kasan_kmalloc+0xd4/0xd8 mm/kasan/common.c:415 kasan_kmalloc include/linux/kasan.h:263 [inline] __kmalloc_cache_noprof+0x1b0/0x458 mm/slub.c:5385 kmalloc_noprof include/linux/slab.h:950 [inline] kzalloc_noprof include/linux/slab.h:1188 [inline] hci_conn_params_add+0x10c/0x4b0 net/bluetooth/hci_core.c:2279 hci_conn_params_set net/bluetooth/mgmt.c:5162 [inline] add_device+0x5b4/0xa54 net/bluetooth/mgmt.c:7755 hci_mgmt_cmd net/bluetooth/hci_sock.c:1721 [inline] hci_sock_sendmsg+0x10b4/0x1dd0 net/bluetooth/hci_sock.c:1841 sock_sendmsg_nosec net/socket.c:727 [inline] __sock_sendmsg+0xe0/0x128 net/socket.c:742 sock_write_iter+0x250/0x390 net/socket.c:1195 new_sync_write fs/read_write.c:595 [inline] vfs_write+0x66c/0xab0 fs/read_write.c:688 ksys_write+0x1fc/0x24c fs/read_write.c:740 __do_sys_write fs/read_write.c:751 [inline] __se_sys_write fs/read_write.c:748 [inline] __arm64_sys_write+0x70/0xa4 fs/read_write.c:748 __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline] invoke_syscall+0x84/0x2a8 arch/arm64/kernel/syscall.c:49 el0_svc_common.constprop.0+0xe4/0x294 arch/arm64/kernel/syscall.c:132 do_el0_svc+0x44/0x5c arch/arm64/kernel/syscall.c:151 el0_svc+0x38/0xac arch/arm64/kernel/entry-common.c:724 el0t_64_sync_handler+0xa0/0xe4 arch/arm64/kernel/entry-common.c:743 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:596 Freed by task 3740: kasan_save_stack+0x3c/0x64 ---truncated---
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 31492b8386e5a243df26ca4a9421f6b041f414d5 , < caed4a96d55757c139a899744657c032b6186665 (git)
    Affected: 28826a89fdfd49f3291980c2e68b8a7c5d55e199 , < e4369e4e970f3fa4676b76be14c1d315c87f22b6 (git)
    Affected: 1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775 , < b346efa825b5e4386f19bc63f81141652d496ec4 (git)
    Affected: 1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775 , < 9531014c60c804e16099885d4a98aedcf31bce8d (git)
    Affected: 1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775 , < fa85d985f614bc3feb343000f14a1072e99b0df1 (git)
    Affected: 7e370545b8bdb54ed7f1ae485d6d24d3b62a0b53 (git)
    Affected: 6.6.92 , < 6.6.145 (semver)
    Affected: 6.12.30 , < 6.12.96 (semver)
    Affected: 6.14.8 , < 6.15 (semver)
    Create a notification for this product.
    Linux Linux Affected: 6.15
    Unaffected: 0 , < 6.15 (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "net/bluetooth/mgmt.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "caed4a96d55757c139a899744657c032b6186665",
                  "status": "affected",
                  "version": "31492b8386e5a243df26ca4a9421f6b041f414d5",
                  "versionType": "git"
                },
                {
                  "lessThan": "e4369e4e970f3fa4676b76be14c1d315c87f22b6",
                  "status": "affected",
                  "version": "28826a89fdfd49f3291980c2e68b8a7c5d55e199",
                  "versionType": "git"
                },
                {
                  "lessThan": "b346efa825b5e4386f19bc63f81141652d496ec4",
                  "status": "affected",
                  "version": "1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775",
                  "versionType": "git"
                },
                {
                  "lessThan": "9531014c60c804e16099885d4a98aedcf31bce8d",
                  "status": "affected",
                  "version": "1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775",
                  "versionType": "git"
                },
                {
                  "lessThan": "fa85d985f614bc3feb343000f14a1072e99b0df1",
                  "status": "affected",
                  "version": "1e2e3044c1bc64a64aa0eaf7c17f7832c26c9775",
                  "versionType": "git"
                },
                {
                  "status": "affected",
                  "version": "7e370545b8bdb54ed7f1ae485d6d24d3b62a0b53",
                  "versionType": "git"
                },
                {
                  "lessThan": "6.6.145",
                  "status": "affected",
                  "version": "6.6.92",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.12.96",
                  "status": "affected",
                  "version": "6.12.30",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.15",
                  "status": "affected",
                  "version": "6.14.8",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "net/bluetooth/mgmt.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.15"
                },
                {
                  "lessThan": "6.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.6.145",
                      "versionStartIncluding": "6.6.92",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "6.12.30",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionStartIncluding": "6.14.8",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nBluetooth: MGMT: Fix UAF of hci_conn_params in add_device_complete\n\nadd_device_complete() runs from the hci_cmd_sync_work kworker, which\nholds only hci_req_sync_lock and *not* hci_dev_lock.  It calls\nhci_conn_params_lookup() and then dereferences the returned object\n(params-\u003eflags) without taking hci_dev_lock:\n\n\tparams = hci_conn_params_lookup(hdev, \u0026cp-\u003eaddr.bdaddr,\n\t\t\t\t\tle_addr_type(cp-\u003eaddr.type));\n\t...\n\tdevice_flags_changed(NULL, hdev, \u0026cp-\u003eaddr.bdaddr,\n\t\t\t     cp-\u003eaddr.type, hdev-\u003econn_flags,\n\t\t\t     params ? params-\u003eflags : 0);\n\nhci_conn_params_lookup() walks hdev-\u003ele_conn_params and is documented to\nrequire hdev-\u003elock.  A concurrent MGMT_OP_REMOVE_DEVICE\n(remove_device()), which does run under hci_dev_lock, can call\nhci_conn_params_free() to list_del() and kfree() the very object the\nlookup returned, so the subsequent params-\u003eflags read touches freed\nmemory [0].\n\nHold hci_dev_lock() across the hci_conn_params_lookup() and the read of\nparams-\u003eflags (and the matching event emission) so the lookup result\ncannot be freed by a concurrent remove_device() before it is used,\nhonouring the locking contract of hci_conn_params_lookup().\n\n[0]: (trailing page/memory-state dump trimmed)\nBUG: KASAN: slab-use-after-free in add_device_complete+0x358/0x3d8 net/bluetooth/mgmt.c:7671\nRead of size 1 at addr ffff000017ab26c1 by task kworker/u9:8/388\n\nCPU: 1 UID: 0 PID: 388 Comm: kworker/u9:8 Not tainted 7.0.11 #20 PREEMPT\nHardware name: linux,dummy-virt (DT)\nWorkqueue: hci0 hci_cmd_sync_work\nCall trace:\n show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:499 (C)\n __dump_stack lib/dump_stack.c:94 [inline]\n dump_stack_lvl+0xb4/0xd4 lib/dump_stack.c:120\n print_address_description mm/kasan/report.c:378 [inline]\n print_report+0x118/0x5d8 mm/kasan/report.c:482\n kasan_report+0xb0/0xf4 mm/kasan/report.c:595\n __asan_report_load1_noabort+0x20/0x2c mm/kasan/report_generic.c:378\n add_device_complete+0x358/0x3d8 net/bluetooth/mgmt.c:7671\n hci_cmd_sync_work+0x14c/0x240 net/bluetooth/hci_sync.c:334\n process_one_work+0x628/0xd38 kernel/workqueue.c:3289\n process_scheduled_works kernel/workqueue.c:3372 [inline]\n worker_thread+0x7a8/0xac0 kernel/workqueue.c:3453\n kthread+0x39c/0x444 kernel/kthread.c:436\n ret_from_fork+0x10/0x20 arch/arm64/kernel/entry.S:860\n\nAllocated by task 3401:\n kasan_save_stack+0x3c/0x64 mm/kasan/common.c:57\n kasan_save_track+0x20/0x3c mm/kasan/common.c:78\n kasan_save_alloc_info+0x40/0x54 mm/kasan/generic.c:570\n poison_kmalloc_redzone mm/kasan/common.c:398 [inline]\n __kasan_kmalloc+0xd4/0xd8 mm/kasan/common.c:415\n kasan_kmalloc include/linux/kasan.h:263 [inline]\n __kmalloc_cache_noprof+0x1b0/0x458 mm/slub.c:5385\n kmalloc_noprof include/linux/slab.h:950 [inline]\n kzalloc_noprof include/linux/slab.h:1188 [inline]\n hci_conn_params_add+0x10c/0x4b0 net/bluetooth/hci_core.c:2279\n hci_conn_params_set net/bluetooth/mgmt.c:5162 [inline]\n add_device+0x5b4/0xa54 net/bluetooth/mgmt.c:7755\n hci_mgmt_cmd net/bluetooth/hci_sock.c:1721 [inline]\n hci_sock_sendmsg+0x10b4/0x1dd0 net/bluetooth/hci_sock.c:1841\n sock_sendmsg_nosec net/socket.c:727 [inline]\n __sock_sendmsg+0xe0/0x128 net/socket.c:742\n sock_write_iter+0x250/0x390 net/socket.c:1195\n new_sync_write fs/read_write.c:595 [inline]\n vfs_write+0x66c/0xab0 fs/read_write.c:688\n ksys_write+0x1fc/0x24c fs/read_write.c:740\n __do_sys_write fs/read_write.c:751 [inline]\n __se_sys_write fs/read_write.c:748 [inline]\n __arm64_sys_write+0x70/0xa4 fs/read_write.c:748\n __invoke_syscall arch/arm64/kernel/syscall.c:35 [inline]\n invoke_syscall+0x84/0x2a8 arch/arm64/kernel/syscall.c:49\n el0_svc_common.constprop.0+0xe4/0x294 arch/arm64/kernel/syscall.c:132\n do_el0_svc+0x44/0x5c arch/arm64/kernel/syscall.c:151\n el0_svc+0x38/0xac arch/arm64/kernel/entry-common.c:724\n el0t_64_sync_handler+0xa0/0xe4 arch/arm64/kernel/entry-common.c:743\n el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:596\n\nFreed by task 3740:\n kasan_save_stack+0x3c/0x64 \n---truncated---"
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:34.241Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/caed4a96d55757c139a899744657c032b6186665"
            },
            {
              "url": "https://git.kernel.org/stable/c/e4369e4e970f3fa4676b76be14c1d315c87f22b6"
            },
            {
              "url": "https://git.kernel.org/stable/c/b346efa825b5e4386f19bc63f81141652d496ec4"
            },
            {
              "url": "https://git.kernel.org/stable/c/9531014c60c804e16099885d4a98aedcf31bce8d"
            },
            {
              "url": "https://git.kernel.org/stable/c/fa85d985f614bc3feb343000f14a1072e99b0df1"
            }
          ],
          "title": "Bluetooth: MGMT: Fix UAF of hci_conn_params in add_device_complete",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64433",
        "datePublished": "2026-07-25T08:51:08.432Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:34.241Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64432 (GCVE-0-2026-64432)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    fs/ntfs3: validate Dirty Page Table capacity in log_replay copy_lcns
    Summary
    In the Linux kernel, the following vulnerability has been resolved: fs/ntfs3: validate Dirty Page Table capacity in log_replay copy_lcns In the analysis pass of $LogFile journal replay, log_replay() copies LCNs from each action log record into an existing Dirty Page Table (DPT) entry without bounding the destination index. A crafted NTFS image with DPT entry lcns_follow=1 and an action log record with lcns_follow=2 produces a kernel slab out-of-bounds write at mount time: BUG: KASAN: slab-out-of-bounds in log_replay+0x654c/0xdb60 Write of size 8 at addr ffff8880095e1040 by task mount Two attacker-controlled fields can drive j+i past the allocated page_lcns[] array: 1. dp->lcns_follow (capacity) can be smaller than lrh->lcns_follow. 2. lrh->target_vcn may be smaller than dp->vcn, making the u64 subtraction wrap to a huge size_t. Validate target VCN delta and per-record LCN count against the DPT entry capacity, bail via the existing out: cleanup label with -EINVAL. This mirrors the bounds-check pattern added in commit b2bc7c44ed17 ("fs/ntfs3: Fix slab-out-of-bounds read in DeleteIndexEntryRoot") and commit 0ca0485e4b2e ("fs/ntfs3: validate rec->used in journal-replay file record check").
    Impacted products
    Vendor Product Version
    Linux Linux Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < 964c3fae1dfc49dde5468eace940f199cda234e9 (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < 3aa96956ca2200674e2a8f9c23ec6ecd45e5010f (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < 946046841013ebac8492ef49651c53638d7a9a6a (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < c6f9e804f73ef809529865fbc7256dd189ff8c33 (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < cf28fc1658463d768657cf1c27a83980d4ba7ef2 (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < f433acc85b86f327d03ba8b03a33c105c51053de (git)
    Affected: b46acd6a6a627d876898e1c84d3f84902264b445 , < 57382ec6ac63b63dce2789e835fded28b698ae79 (git)
    Create a notification for this product.
    Linux Linux Affected: 5.15
    Unaffected: 0 , < 5.15 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/ntfs3/fslog.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "964c3fae1dfc49dde5468eace940f199cda234e9",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "3aa96956ca2200674e2a8f9c23ec6ecd45e5010f",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "946046841013ebac8492ef49651c53638d7a9a6a",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "c6f9e804f73ef809529865fbc7256dd189ff8c33",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "cf28fc1658463d768657cf1c27a83980d4ba7ef2",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "f433acc85b86f327d03ba8b03a33c105c51053de",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                },
                {
                  "lessThan": "57382ec6ac63b63dce2789e835fded28b698ae79",
                  "status": "affected",
                  "version": "b46acd6a6a627d876898e1c84d3f84902264b445",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/ntfs3/fslog.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.15"
                },
                {
                  "lessThan": "5.15",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "5.15",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nfs/ntfs3: validate Dirty Page Table capacity in log_replay copy_lcns\n\nIn the analysis pass of $LogFile journal replay, log_replay() copies\nLCNs from each action log record into an existing Dirty Page Table\n(DPT) entry without bounding the destination index. A crafted NTFS\nimage with DPT entry lcns_follow=1 and an action log record with\nlcns_follow=2 produces a kernel slab out-of-bounds write at mount\ntime:\n\n  BUG: KASAN: slab-out-of-bounds in log_replay+0x654c/0xdb60\n  Write of size 8 at addr ffff8880095e1040 by task mount\n\nTwo attacker-controlled fields can drive j+i past the allocated\npage_lcns[] array:\n\n  1. dp-\u003elcns_follow (capacity) can be smaller than lrh-\u003elcns_follow.\n  2. lrh-\u003etarget_vcn may be smaller than dp-\u003evcn, making the u64\n     subtraction wrap to a huge size_t.\n\nValidate target VCN delta and per-record LCN count against the\nDPT entry capacity, bail via the existing out: cleanup label with\n-EINVAL.\n\nThis mirrors the bounds-check pattern added in commit b2bc7c44ed17\n(\"fs/ntfs3: Fix slab-out-of-bounds read in DeleteIndexEntryRoot\")\nand commit 0ca0485e4b2e (\"fs/ntfs3: validate rec-\u003eused in\njournal-replay file record check\")."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The vulnerable journal-replay code is reached by mounting a crafted local block-device or loop-backed NTFS image, not through network traffic.\nAC:L - Crafted DPT and action records deterministically trigger the out-of-bounds write without a race or conditions beyond attacker control.\nPR:N - Although direct mounting requires initial-namespace CAP_SYS_ADMIN, an unprivileged attacker can provide the crafted volume for a privileged victim to mount and therefore needs no privileges.\nUI:R - A victim must attach, select, or mount the attacker-supplied NTFS volume; replay occurs during that mount even when read-only.\nS:U - The corruption and resulting impacts occur within the host kernel\u0027s existing security authority, without crossing a virtualization or other scope boundary.\nC:H - The attacker controls a sequential kernel slab out-of-bounds write that can corrupt adjacent objects and plausibly enable kernel code execution and arbitrary memory disclosure.\nI:H - The attacker-controlled 64-bit overwrite can corrupt kernel objects, pointers, or control data, making arbitrary modification and control-flow hijacking defensible.\nA:H - The reproduced slab out-of-bounds write can cause an immediate kernel oops or panic, and malformed volumes can trigger it repeatedly when mounted."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:33.145Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/964c3fae1dfc49dde5468eace940f199cda234e9"
            },
            {
              "url": "https://git.kernel.org/stable/c/3aa96956ca2200674e2a8f9c23ec6ecd45e5010f"
            },
            {
              "url": "https://git.kernel.org/stable/c/946046841013ebac8492ef49651c53638d7a9a6a"
            },
            {
              "url": "https://git.kernel.org/stable/c/c6f9e804f73ef809529865fbc7256dd189ff8c33"
            },
            {
              "url": "https://git.kernel.org/stable/c/cf28fc1658463d768657cf1c27a83980d4ba7ef2"
            },
            {
              "url": "https://git.kernel.org/stable/c/f433acc85b86f327d03ba8b03a33c105c51053de"
            },
            {
              "url": "https://git.kernel.org/stable/c/57382ec6ac63b63dce2789e835fded28b698ae79"
            }
          ],
          "title": "fs/ntfs3: validate Dirty Page Table capacity in log_replay copy_lcns",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64432",
        "datePublished": "2026-07-25T08:51:07.791Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:33.145Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64431 (GCVE-0-2026-64431)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    ntfs: avoid calling post_write_mst_fixup() for invalid index_block
    Summary
    In the Linux kernel, the following vulnerability has been resolved: ntfs: avoid calling post_write_mst_fixup() for invalid index_block ntfs_icx_ib_sync_write() calls post_write_mst_fixup() when ntfs_ib_write() returns an error, intending to restore the buffer after a failed write. However, ntfs_ib_write() returns an error immediately if pre_write_mst_fixup() validation fails. The caller, ntfs_icx_ib_sync_write(), interprets any error as a write failure requiring rollback. It does not differentiate between I/O errors and validation failures, and calls post_write_mst_fixup() anyway. Since post_write_mst_fixup() assumes that the index_block contents is correct, it doesn't perform the boundary checks, which results in out-of-bounds memory access. An attacker can craft a malicious NTFS image with: - large index_block.usa_ofs offset, pointing outside the ntfs_record - index_block.usa_count = 0, causing integer underflow - or index_block.usa_count larger than actual number of sectors in the ntfs_record, causing out-of-bounds access KASAN reports describing the memory corruption: ================================================================== BUG: KASAN: slab-out-of-bounds in post_write_mst_fixup+0x19c/0x1d0 Read of size 2 at addr ffff8881586c9018 by task p/9428 Call Trace: <TASK> dump_stack_lvl+0x100/0x190 print_report+0x139/0x4ad ? post_write_mst_fixup+0x19c/0x1d0 ? __virt_addr_valid+0x262/0x500 ? post_write_mst_fixup+0x19c/0x1d0 kasan_report+0xe4/0x1d0 ? post_write_mst_fixup+0x19c/0x1d0 post_write_mst_fixup+0x19c/0x1d0 ntfs_icx_ib_sync_write+0x179/0x220 ntfs_inode_sync_filename+0x83d/0x1080 __ntfs_write_inode+0x1049/0x1480 ntfs_file_fsync+0x131/0x9b0 ================================================================== BUG: KASAN: slab-out-of-bounds in post_write_mst_fixup+0x1aa/0x1d0 Write of size 2 at addr ffff8881586c91fe by task p/9428 Call Trace: <TASK> dump_stack_lvl+0x100/0x190 print_report+0x139/0x4ad ? post_write_mst_fixup+0x1aa/0x1d0 ? __virt_addr_valid+0x262/0x500 ? post_write_mst_fixup+0x1aa/0x1d0 kasan_report+0xe4/0x1d0 ? post_write_mst_fixup+0x1aa/0x1d0 post_write_mst_fixup+0x1aa/0x1d0 ntfs_icx_ib_sync_write+0x179/0x220 ntfs_inode_sync_filename+0x83d/0x1080 __ntfs_write_inode+0x1049/0x1480 ntfs_file_fsync+0x131/0x9b0 ================================================================== Let's move the post_write_mst_fixup() call to ntfs_ib_write(). The ntfs_ib_write() function calls pre_write_mst_fixup() at the beginning. If the index_block contents is invalid, pre_write_mst_fixup() fails and ntfs_ib_write() returns early without calling post_write_mst_fixup() on bad index_block.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 0a8ac0c1fa0b99a5b29002bc7f232ed7eafddef0 , < e2018628301a6d9f54e34b0cb417f1688c66df1d (git)
    Affected: 0a8ac0c1fa0b99a5b29002bc7f232ed7eafddef0 , < 5b6eedd7cc2936f9238e852b553a1b326105bde8 (git)
    Create a notification for this product.
    Linux Linux Affected: 7.1
    Unaffected: 0 , < 7.1 (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "fs/ntfs/index.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "e2018628301a6d9f54e34b0cb417f1688c66df1d",
                  "status": "affected",
                  "version": "0a8ac0c1fa0b99a5b29002bc7f232ed7eafddef0",
                  "versionType": "git"
                },
                {
                  "lessThan": "5b6eedd7cc2936f9238e852b553a1b326105bde8",
                  "status": "affected",
                  "version": "0a8ac0c1fa0b99a5b29002bc7f232ed7eafddef0",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "fs/ntfs/index.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "7.1"
                },
                {
                  "lessThan": "7.1",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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": "7.1.4",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nntfs: avoid calling post_write_mst_fixup() for invalid index_block\n\nntfs_icx_ib_sync_write() calls post_write_mst_fixup() when ntfs_ib_write()\nreturns an error, intending to restore the buffer after a failed write.\n\nHowever, ntfs_ib_write() returns an error immediately if\npre_write_mst_fixup() validation fails. The caller,\nntfs_icx_ib_sync_write(), interprets any error as a write failure\nrequiring rollback. It does not differentiate between I/O errors and\nvalidation failures, and calls post_write_mst_fixup() anyway.\n\nSince post_write_mst_fixup() assumes that the index_block contents is\ncorrect, it doesn\u0027t perform the boundary checks, which results in\nout-of-bounds memory access.\n\nAn attacker can craft a malicious NTFS image with:\n  - large index_block.usa_ofs offset, pointing outside the ntfs_record\n  - index_block.usa_count = 0, causing integer underflow\n  - or index_block.usa_count larger than actual number of sectors in the\n    ntfs_record, causing out-of-bounds access\n\nKASAN reports describing the memory corruption:\n  ==================================================================\n  BUG: KASAN: slab-out-of-bounds in post_write_mst_fixup+0x19c/0x1d0\n  Read of size 2 at addr ffff8881586c9018 by task p/9428\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x100/0x190\n   print_report+0x139/0x4ad\n   ? post_write_mst_fixup+0x19c/0x1d0\n   ? __virt_addr_valid+0x262/0x500\n   ? post_write_mst_fixup+0x19c/0x1d0\n   kasan_report+0xe4/0x1d0\n   ? post_write_mst_fixup+0x19c/0x1d0\n   post_write_mst_fixup+0x19c/0x1d0\n   ntfs_icx_ib_sync_write+0x179/0x220\n   ntfs_inode_sync_filename+0x83d/0x1080\n   __ntfs_write_inode+0x1049/0x1480\n   ntfs_file_fsync+0x131/0x9b0\n  ==================================================================\n  BUG: KASAN: slab-out-of-bounds in post_write_mst_fixup+0x1aa/0x1d0\n  Write of size 2 at addr ffff8881586c91fe by task p/9428\n  Call Trace:\n   \u003cTASK\u003e\n   dump_stack_lvl+0x100/0x190\n   print_report+0x139/0x4ad\n   ? post_write_mst_fixup+0x1aa/0x1d0\n   ? __virt_addr_valid+0x262/0x500\n   ? post_write_mst_fixup+0x1aa/0x1d0\n   kasan_report+0xe4/0x1d0\n   ? post_write_mst_fixup+0x1aa/0x1d0\n   post_write_mst_fixup+0x1aa/0x1d0\n   ntfs_icx_ib_sync_write+0x179/0x220\n   ntfs_inode_sync_filename+0x83d/0x1080\n   __ntfs_write_inode+0x1049/0x1480\n   ntfs_file_fsync+0x131/0x9b0\n  ==================================================================\n\nLet\u0027s move the post_write_mst_fixup() call to ntfs_ib_write().\nThe ntfs_ib_write() function calls pre_write_mst_fixup() at the beginning.\nIf the index_block contents is invalid, pre_write_mst_fixup() fails and\nntfs_ib_write() returns early without calling post_write_mst_fixup() on\nbad index_block."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.8,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:L - The malformed USA fields originate in a crafted NTFS volume, and exploitation proceeds through local file modification followed by fsync or writeback. Network file access alone cannot create the required malformed index metadata.\nAC:L - The attacker controls the index block, USA offset/count, target filename, and triggering operation; no race or condition outside attacker control is required. The usa_count underflow provides a deterministic corruption path.\nPR:L - Although a direct NTFS mount requires initial-namespace CAP_SYS_ADMIN because NTFS lacks FS_USERNS_MOUNT, delegated or automatic mounting allows an ordinary local user to reach the trigger. After mounting, only write access to the crafted file is needed and no capability check occurs.\nUI:N - In reasonable automount, delegated-mount, or fstab-user deployments, no separate victim action is required. The attacker can mount or access the volume, modify the writable file, and invoke fsync independently.\nS:U - The corruption occurs in the host kernel and compromises resources governed by that same kernel security authority. This is standard local kernel privilege escalation rather than a guest-to-host or IOMMU boundary escape.\nC:H - Unchecked USA metadata causes substantial out-of-bounds reads, and the accompanying kernel heap corruption can be leveraged to disclose arbitrary kernel memory. The reads are not confined to a small bounded value.\nI:H - An underflowed usa_count produces up to 65,535 two-byte writes at 512-byte intervals, spanning roughly 32 MiB beyond the index-block allocation. Attacker-controlled initial source values and heap grooming make control-flow hijacking or arbitrary kernel modification defensible.\nA:H - The extensive out-of-bounds access can corrupt unrelated kernel objects or access invalid memory, causing an oops, panic, or system-wide failure. The trigger is repeatable through local filesystem operations."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:32.047Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/e2018628301a6d9f54e34b0cb417f1688c66df1d"
            },
            {
              "url": "https://git.kernel.org/stable/c/5b6eedd7cc2936f9238e852b553a1b326105bde8"
            }
          ],
          "title": "ntfs: avoid calling post_write_mst_fixup() for invalid index_block",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64431",
        "datePublished": "2026-07-25T08:51:07.194Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:32.047Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64430 (GCVE-0-2026-64430)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    NTB: epf: Avoid calling pci_irq_vector() from hardirq context
    Summary
    In the Linux kernel, the following vulnerability has been resolved: NTB: epf: Avoid calling pci_irq_vector() from hardirq context ntb_epf_vec_isr() calls pci_irq_vector() in hardirq context to derive the vector number. pci_irq_vector() calls msi_get_virq() that takes a mutex and can therefore trigger "scheduling while atomic" splats: BUG: scheduling while atomic: kworker/u33:0/55/0x00010001 ... Call trace: ... schedule+0x38/0x110 schedule_preempt_disabled+0x28/0x50 __mutex_lock.constprop.0+0x848/0x908 __mutex_lock_slowpath+0x18/0x30 mutex_lock+0x4c/0x60 msi_domain_get_virq+0xe8/0x138 pci_irq_vector+0x2c/0x60 ntb_epf_vec_isr+0x28/0x120 [ntb_hw_epf] __handle_irq_event_percpu+0x70/0x3a8 handle_irq_event+0x48/0x100 handle_edge_irq+0x100/0x1c8 ... Cache the Linux IRQ number for vector 0 when vectors are allocated and use it as a base in the ISR. Running the ISR in a threaded IRQ handler would also avoid the problem, but that would be unnecessary here.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < 33bba331a4a5fee8b6026fe72eca13cceeec1b7b (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < aff271b12a1eb8c8b3da19223ae1a6abe1e8168b (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < 1dba8444ac0100133d72374634f6d7451fff1ccc (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < 174a97f21bf9c54fa37ec0f321692e862ea130a3 (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < f71e8d9875069fa73e335f63f02ec6e52e3aaa51 (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < 6350df503897d57c5634f71b0767d48c3b837583 (git)
    Affected: 812ce2f8d14ea791edd88c36ebcc9017bf4c88cb , < 4dcddc1c794d1c65eda68f1f8dd04a0fecc0870f (git)
    Create a notification for this product.
    Linux Linux Affected: 5.12
    Unaffected: 0 , < 5.12 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/ntb/hw/epf/ntb_hw_epf.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "33bba331a4a5fee8b6026fe72eca13cceeec1b7b",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "aff271b12a1eb8c8b3da19223ae1a6abe1e8168b",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "1dba8444ac0100133d72374634f6d7451fff1ccc",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "174a97f21bf9c54fa37ec0f321692e862ea130a3",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "f71e8d9875069fa73e335f63f02ec6e52e3aaa51",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "6350df503897d57c5634f71b0767d48c3b837583",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                },
                {
                  "lessThan": "4dcddc1c794d1c65eda68f1f8dd04a0fecc0870f",
                  "status": "affected",
                  "version": "812ce2f8d14ea791edd88c36ebcc9017bf4c88cb",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/ntb/hw/epf/ntb_hw_epf.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.12"
                },
                {
                  "lessThan": "5.12",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "5.12",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nNTB: epf: Avoid calling pci_irq_vector() from hardirq context\n\nntb_epf_vec_isr() calls pci_irq_vector() in hardirq context to derive\nthe vector number. pci_irq_vector() calls msi_get_virq() that takes a\nmutex and can therefore trigger \"scheduling while atomic\" splats:\n\n  BUG: scheduling while atomic: kworker/u33:0/55/0x00010001\n  ...\n  Call trace:\n   ...\n   schedule+0x38/0x110\n   schedule_preempt_disabled+0x28/0x50\n   __mutex_lock.constprop.0+0x848/0x908\n   __mutex_lock_slowpath+0x18/0x30\n   mutex_lock+0x4c/0x60\n   msi_domain_get_virq+0xe8/0x138\n   pci_irq_vector+0x2c/0x60\n   ntb_epf_vec_isr+0x28/0x120 [ntb_hw_epf]\n   __handle_irq_event_percpu+0x70/0x3a8\n   handle_irq_event+0x48/0x100\n   handle_edge_irq+0x100/0x1c8\n   ...\n\nCache the Linux IRQ number for vector 0 when vectors are allocated and\nuse it as a base in the ISR. Running the ISR in a threaded IRQ handler\nwould also avoid the problem, but that would be unnecessary here."
            }
          ],
          "metrics": [
            {
              "cvssV3_1": {
                "baseScore": 7.5,
                "baseSeverity": "HIGH",
                "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
                "version": "3.1"
              },
              "scenarios": [
                {
                  "lang": "en",
                  "value": "AV:N - Routed traffic over the standard NTB Netdev interface causes the peer host to ring the victim\u0027s PCIe MSI/MSI-X doorbell, so an unauthenticated remote sender can reach the vulnerable interrupt handler.\nAC:L - Every delivered doorbell enters the sleep-capable MSI lookup, and the attacker can repeatedly or concurrently trigger multiple allocated vectors to drive mutex contention.\nPR:N - NTB Netdev traffic and peer doorbells have no victim-side authentication or capability check, so an unauthenticated network sender needs no privileges.\nUI:N - Once the NTB link is deployed, receiving traffic automatically invokes the hardirq handler without victim user action.\nS:U - The resulting failure affects the vulnerable host kernel itself and does not cross a VM, IOMMU, or other security-authority boundary.\nC:N - The bug performs no out-of-bounds access or disclosure and provides no kernel-memory read primitive.\nI:N - The defect is an illegal sleep and mutex wait in hardirq context, with no memory corruption, arbitrary write, or data-modification primitive.\nA:H - Mutex contention in hardirq context can cause scheduling-while-atomic failures, deadlock or hang, and a kernel panic on hardened panic-on-warning systems."
                }
              ]
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:30.939Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/33bba331a4a5fee8b6026fe72eca13cceeec1b7b"
            },
            {
              "url": "https://git.kernel.org/stable/c/aff271b12a1eb8c8b3da19223ae1a6abe1e8168b"
            },
            {
              "url": "https://git.kernel.org/stable/c/1dba8444ac0100133d72374634f6d7451fff1ccc"
            },
            {
              "url": "https://git.kernel.org/stable/c/174a97f21bf9c54fa37ec0f321692e862ea130a3"
            },
            {
              "url": "https://git.kernel.org/stable/c/f71e8d9875069fa73e335f63f02ec6e52e3aaa51"
            },
            {
              "url": "https://git.kernel.org/stable/c/6350df503897d57c5634f71b0767d48c3b837583"
            },
            {
              "url": "https://git.kernel.org/stable/c/4dcddc1c794d1c65eda68f1f8dd04a0fecc0870f"
            }
          ],
          "title": "NTB: epf: Avoid calling pci_irq_vector() from hardirq context",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64430",
        "datePublished": "2026-07-25T08:51:06.612Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:30.939Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64429 (GCVE-0-2026-64429)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    gpio: eic-sprd: use raw_spinlock_t in the irq startup path
    Summary
    In the Linux kernel, the following vulnerability has been resolved: gpio: eic-sprd: use raw_spinlock_t in the irq startup path sprd_eic_irq_unmask() enables the GPIO IRQ and then updates controller state through sprd_eic_update(), which takes sprd_eic->lock with spin_lock_irqsave(). The callback can be reached from irq_startup() while setting up a requested IRQ. That path is not sleepable, but on PREEMPT_RT a regular spinlock_t becomes a sleeping lock. This issue was found by our static analysis tool and then manually reviewed against the current tree. The grounded PoC kept the request_threaded_irq() -> __setup_irq() -> irq_startup() -> sprd_eic_irq_unmask() -> sprd_eic_update() carrier and used the original spin_lock_irqsave(&sprd_eic->lock) edge. Lockdep BUG: sleeping function called from invalid context hardirqs last disabled at ... __setup_irq.constprop.0 ... [vuln_msv] sprd_rt_spin_lock_irqsave+0x1c/0x30 [vuln_msv] sprd_eic_update.constprop.0+0x48/0x90 [vuln_msv] sprd_eic_irq_unmask.constprop.0+0x35/0x50 [vuln_msv] __setup_irq.constprop.0+0xd/0x30 [vuln_msv] Convert the Spreadtrum EIC controller lock to raw_spinlock_t. The locked section only serializes MMIO register updates and does not contain sleepable operations, so keeping it non-sleeping is appropriate for the irqchip callbacks.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 96612bf2712cd961dbd9b52f3a9b4ab668f57628 (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 581ac2ad001ff1128931191f249a7f2074672b7a (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < e244cd8b51001ba480f274c44dba9002813a4739 (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 19d63fd528719ce7d06d9aeb88d25b7d6478198a (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 6112fba4150039ccd90e29f2d1b788c73ad7b3dd (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 4750909a40da9016185e0ac991510a278cecb1e7 (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 5c3c9ec1172a4c3384b8b800b3a8896cc2c1b20e (git)
    Affected: 25518e024e3a6e5715d672f1daa91e1d100f7436 , < 90f0109019e6817eb40a486671b7722d1544ae29 (git)
    Create a notification for this product.
    Linux Linux Affected: 4.17
    Unaffected: 0 , < 4.17 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/gpio/gpio-eic-sprd.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "96612bf2712cd961dbd9b52f3a9b4ab668f57628",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "581ac2ad001ff1128931191f249a7f2074672b7a",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "e244cd8b51001ba480f274c44dba9002813a4739",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "19d63fd528719ce7d06d9aeb88d25b7d6478198a",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "6112fba4150039ccd90e29f2d1b788c73ad7b3dd",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "4750909a40da9016185e0ac991510a278cecb1e7",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "5c3c9ec1172a4c3384b8b800b3a8896cc2c1b20e",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                },
                {
                  "lessThan": "90f0109019e6817eb40a486671b7722d1544ae29",
                  "status": "affected",
                  "version": "25518e024e3a6e5715d672f1daa91e1d100f7436",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/gpio/gpio-eic-sprd.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "4.17"
                },
                {
                  "lessThan": "4.17",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "4.17",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ngpio: eic-sprd: use raw_spinlock_t in the irq startup path\n\nsprd_eic_irq_unmask() enables the GPIO IRQ and then updates controller\nstate through sprd_eic_update(), which takes sprd_eic-\u003elock with\nspin_lock_irqsave().  The callback can be reached from irq_startup()\nwhile setting up a requested IRQ.  That path is not sleepable, but on\nPREEMPT_RT a regular spinlock_t becomes a sleeping lock.\n\nThis issue was found by our static analysis tool and then manually\nreviewed against the current tree.\n\nThe grounded PoC kept the request_threaded_irq() -\u003e __setup_irq() -\u003e\nirq_startup() -\u003e sprd_eic_irq_unmask() -\u003e sprd_eic_update() carrier and\nused the original spin_lock_irqsave(\u0026sprd_eic-\u003elock) edge.  Lockdep\n\n  BUG: sleeping function called from invalid context\n  hardirqs last disabled at ... __setup_irq.constprop.0 ... [vuln_msv]\n  sprd_rt_spin_lock_irqsave+0x1c/0x30 [vuln_msv]\n  sprd_eic_update.constprop.0+0x48/0x90 [vuln_msv]\n  sprd_eic_irq_unmask.constprop.0+0x35/0x50 [vuln_msv]\n  __setup_irq.constprop.0+0xd/0x30 [vuln_msv]\n\nConvert the Spreadtrum EIC controller lock to raw_spinlock_t.  The\nlocked section only serializes MMIO register updates and does not contain\nsleepable operations, so keeping it non-sleeping is appropriate for the\nirqchip callbacks."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:29.849Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/96612bf2712cd961dbd9b52f3a9b4ab668f57628"
            },
            {
              "url": "https://git.kernel.org/stable/c/581ac2ad001ff1128931191f249a7f2074672b7a"
            },
            {
              "url": "https://git.kernel.org/stable/c/e244cd8b51001ba480f274c44dba9002813a4739"
            },
            {
              "url": "https://git.kernel.org/stable/c/19d63fd528719ce7d06d9aeb88d25b7d6478198a"
            },
            {
              "url": "https://git.kernel.org/stable/c/6112fba4150039ccd90e29f2d1b788c73ad7b3dd"
            },
            {
              "url": "https://git.kernel.org/stable/c/4750909a40da9016185e0ac991510a278cecb1e7"
            },
            {
              "url": "https://git.kernel.org/stable/c/5c3c9ec1172a4c3384b8b800b3a8896cc2c1b20e"
            },
            {
              "url": "https://git.kernel.org/stable/c/90f0109019e6817eb40a486671b7722d1544ae29"
            }
          ],
          "title": "gpio: eic-sprd: use raw_spinlock_t in the irq startup path",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64429",
        "datePublished": "2026-07-25T08:51:06.016Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:29.849Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64428 (GCVE-0-2026-64428)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    gpio: sch: use raw_spinlock_t in the irq startup path
    Summary
    In the Linux kernel, the following vulnerability has been resolved: gpio: sch: use raw_spinlock_t in the irq startup path sch_irq_unmask() enables the GPIO IRQ and then updates the controller state through sch_irq_mask_unmask(), which takes sch->lock with spin_lock_irqsave(). The callback can be reached from irq_startup() while setting up a requested IRQ. That path is not sleepable, but on PREEMPT_RT a regular spinlock_t becomes a sleeping lock. This issue was found by our static analysis tool and then manually reviewed against the current tree. The grounded PoC kept the request_threaded_irq() -> __setup_irq() -> irq_startup() -> sch_irq_unmask() -> sch_irq_mask_unmask() carrier and used the original spin_lock_irqsave(&sch->lock) edge. Lockdep reported: BUG: sleeping function called from invalid context hardirqs last disabled at ... __setup_irq.constprop.0 ... [vuln_msv] sch_rt_spin_lock_irqsave+0x1c/0x30 [vuln_msv] sch_irq_mask_unmask.constprop.0+0x31/0x70 [vuln_msv] __setup_irq.constprop.0+0xd/0x30 [vuln_msv] Convert the SCH controller lock to raw_spinlock_t. The same lock is also used by the GPIO direction and value callbacks, but those critical sections only update MMIO-backed GPIO registers and do not contain sleepable operations. Keeping this register lock non-sleeping is therefore appropriate for the irqchip callbacks and does not change the GPIO-side locking contract.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 3b1aa05ec27eeccc889ecaa3f2d9baa9f453e50d (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 4f03a15cc73c83740fc355ee22b336492d17b4da (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 7a550256d68bbdfa0903ab1c4595c04a6815493a (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < a235cec779bb39ec8f961a935b28a2ce278c6c64 (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 4508366ab7dd0c2917a51a9c2e23cc1b9d35157a (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 41cad91a09d69e8fff4e936db29b1054b4e9f9f7 (git)
    Affected: 7a81638485c1a62a87b4c391ecc9c651a4a9dc19 , < 286533cb14a3c8a8bd39ff64ea2fc8e1aa0f638b (git)
    Create a notification for this product.
    Linux Linux Affected: 5.13
    Unaffected: 0 , < 5.13 (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.97 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/gpio/gpio-sch.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "3b1aa05ec27eeccc889ecaa3f2d9baa9f453e50d",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "4f03a15cc73c83740fc355ee22b336492d17b4da",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "7a550256d68bbdfa0903ab1c4595c04a6815493a",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "a235cec779bb39ec8f961a935b28a2ce278c6c64",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "4508366ab7dd0c2917a51a9c2e23cc1b9d35157a",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "41cad91a09d69e8fff4e936db29b1054b4e9f9f7",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                },
                {
                  "lessThan": "286533cb14a3c8a8bd39ff64ea2fc8e1aa0f638b",
                  "status": "affected",
                  "version": "7a81638485c1a62a87b4c391ecc9c651a4a9dc19",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/gpio/gpio-sch.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "5.13"
                },
                {
                  "lessThan": "5.13",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.97",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.212",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.97",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "5.13",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\ngpio: sch: use raw_spinlock_t in the irq startup path\n\nsch_irq_unmask() enables the GPIO IRQ and then updates the controller\nstate through sch_irq_mask_unmask(), which takes sch-\u003elock with\nspin_lock_irqsave().  The callback can be reached from irq_startup()\nwhile setting up a requested IRQ.  That path is not sleepable, but on\nPREEMPT_RT a regular spinlock_t becomes a sleeping lock.\n\nThis issue was found by our static analysis tool and then manually\nreviewed against the current tree.\n\nThe grounded PoC kept the request_threaded_irq() -\u003e __setup_irq() -\u003e\nirq_startup() -\u003e sch_irq_unmask() -\u003e sch_irq_mask_unmask() carrier and\nused the original spin_lock_irqsave(\u0026sch-\u003elock) edge.  Lockdep reported:\n\n  BUG: sleeping function called from invalid context\n  hardirqs last disabled at ... __setup_irq.constprop.0 ... [vuln_msv]\n  sch_rt_spin_lock_irqsave+0x1c/0x30 [vuln_msv]\n  sch_irq_mask_unmask.constprop.0+0x31/0x70 [vuln_msv]\n  __setup_irq.constprop.0+0xd/0x30 [vuln_msv]\n\nConvert the SCH controller lock to raw_spinlock_t.  The same lock is\nalso used by the GPIO direction and value callbacks, but those critical\nsections only update MMIO-backed GPIO registers and do not contain\nsleepable operations.  Keeping this register lock non-sleeping is\ntherefore appropriate for the irqchip callbacks and does not change the\nGPIO-side locking contract."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:28.748Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/3b1aa05ec27eeccc889ecaa3f2d9baa9f453e50d"
            },
            {
              "url": "https://git.kernel.org/stable/c/4f03a15cc73c83740fc355ee22b336492d17b4da"
            },
            {
              "url": "https://git.kernel.org/stable/c/7a550256d68bbdfa0903ab1c4595c04a6815493a"
            },
            {
              "url": "https://git.kernel.org/stable/c/a235cec779bb39ec8f961a935b28a2ce278c6c64"
            },
            {
              "url": "https://git.kernel.org/stable/c/4508366ab7dd0c2917a51a9c2e23cc1b9d35157a"
            },
            {
              "url": "https://git.kernel.org/stable/c/41cad91a09d69e8fff4e936db29b1054b4e9f9f7"
            },
            {
              "url": "https://git.kernel.org/stable/c/286533cb14a3c8a8bd39ff64ea2fc8e1aa0f638b"
            }
          ],
          "title": "gpio: sch: use raw_spinlock_t in the irq startup path",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64428",
        "datePublished": "2026-07-25T08:51:05.460Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:28.748Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64427 (GCVE-0-2026-64427)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-19 16:28
    VLAI
    Title
    HID: logitech-dj: Fix maxfield check in DJ short report validation
    Summary
    In the Linux kernel, the following vulnerability has been resolved: HID: logitech-dj: Fix maxfield check in DJ short report validation Commit b6a57912854e ("HID: logitech-dj: Prevent REPORT_ID_DJ_SHORT related user initiated OOB write") added validation for the DJ short output report, but the error path dereferences rep->field[0] even when rep->maxfield is zero. Commit 8b9a097eb2fc ("HID: logitech-dj: fix wrong detection of bad DJ_SHORT output report") made the check conditional on rep being present, but a crafted descriptor can still create report ID 0x20 with only padding output items. hid-core registers the report, ignores the padding field, and leaves rep->maxfield as zero. In that case the validation enters the rep->maxfield < 1 branch and then dereferences rep->field[0]->report_count while printing the error message, causing a NULL pointer dereference during probe. This is reproducible with uhid by emulating a Logitech receiver with a padding-only DJ short output report: BUG: KASAN: null-ptr-deref in logi_dj_probe+0xb1/0x754 [hid_logitech_dj] Read of size 4 at addr 0000000000000028 by task kworker/4:1/129 ... Call Trace: logi_dj_probe+0xb1/0x754 [hid_logitech_dj] hid_device_probe+0x329/0x3f0 [hid] really_probe+0x162/0x570 __device_attach+0x137/0x2c0 bus_probe_device+0x38/0xc0 device_add+0xa56/0xce0 hid_add_device+0x19c/0x280 [hid] uhid_device_add_worker+0x2c/0xb0 [uhid] Reject the zero-field report before printing the field report_count.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 7754ade02d0fb1caf20392baf4e02937378fd136 , < f3790a6af9c7f47d454225cab9dc145270e48f62 (git)
    Affected: 2ed9638cfbf9d49bdef9b0f5ee547236c2c2f500 , < 1215febd644c3e16f77e0f1799d89544dd57a754 (git)
    Affected: eeb5ad388595ca2b6624689198a057847f3a3e19 , < 6f7f22a8d244c2e586b8eb61c7585784b62aea01 (git)
    Affected: 968e84f5c0dca4960580d174500e4bbf0c45dc15 , < 95b3f23d632490b5eb285b9fcf7284f2ac8f9872 (git)
    Affected: ce2a731c179df8869e1969a1b2b5b9e4e1c25f8b , < 80c1e18473f63fd7c6a2bc9ad6f3d0a6cc4fb500 (git)
    Affected: bc3bba4656ad280267ea78cf845ab6b1d95b9fcd , < 2b70bebc709489d29a31ac2935aeffb8d5228395 (git)
    Affected: b6a57912854e7ea36f3b270032661140cc4209cd , < 7a89ad762fad53d56b7002d7ffc923a4b7f4006f (git)
    Affected: b6a57912854e7ea36f3b270032661140cc4209cd , < 590cc4d782487632a52f37c2171bee1eeea29627 (git)
    Create a notification for this product.
    Linux Linux Affected: 7.1
    Unaffected: 0 , < 7.1 (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "drivers/hid/hid-logitech-dj.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "f3790a6af9c7f47d454225cab9dc145270e48f62",
                  "status": "affected",
                  "version": "7754ade02d0fb1caf20392baf4e02937378fd136",
                  "versionType": "git"
                },
                {
                  "lessThan": "1215febd644c3e16f77e0f1799d89544dd57a754",
                  "status": "affected",
                  "version": "2ed9638cfbf9d49bdef9b0f5ee547236c2c2f500",
                  "versionType": "git"
                },
                {
                  "lessThan": "6f7f22a8d244c2e586b8eb61c7585784b62aea01",
                  "status": "affected",
                  "version": "eeb5ad388595ca2b6624689198a057847f3a3e19",
                  "versionType": "git"
                },
                {
                  "lessThan": "95b3f23d632490b5eb285b9fcf7284f2ac8f9872",
                  "status": "affected",
                  "version": "968e84f5c0dca4960580d174500e4bbf0c45dc15",
                  "versionType": "git"
                },
                {
                  "lessThan": "80c1e18473f63fd7c6a2bc9ad6f3d0a6cc4fb500",
                  "status": "affected",
                  "version": "ce2a731c179df8869e1969a1b2b5b9e4e1c25f8b",
                  "versionType": "git"
                },
                {
                  "lessThan": "2b70bebc709489d29a31ac2935aeffb8d5228395",
                  "status": "affected",
                  "version": "bc3bba4656ad280267ea78cf845ab6b1d95b9fcd",
                  "versionType": "git"
                },
                {
                  "lessThan": "7a89ad762fad53d56b7002d7ffc923a4b7f4006f",
                  "status": "affected",
                  "version": "b6a57912854e7ea36f3b270032661140cc4209cd",
                  "versionType": "git"
                },
                {
                  "lessThan": "590cc4d782487632a52f37c2171bee1eeea29627",
                  "status": "affected",
                  "version": "b6a57912854e7ea36f3b270032661140cc4209cd",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "drivers/hid/hid-logitech-dj.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "7.1"
                },
                {
                  "lessThan": "7.1",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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": "7.1.4",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "7.1",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nHID: logitech-dj: Fix maxfield check in DJ short report validation\n\nCommit b6a57912854e (\"HID: logitech-dj: Prevent REPORT_ID_DJ_SHORT\nrelated user initiated OOB write\") added validation for the DJ short\noutput report, but the error path dereferences rep-\u003efield[0] even when\nrep-\u003emaxfield is zero.\n\nCommit 8b9a097eb2fc (\"HID: logitech-dj: fix wrong detection of bad\nDJ_SHORT output report\") made the check conditional on rep being present,\nbut a crafted descriptor can still create report ID 0x20 with only padding\noutput items. hid-core registers the report, ignores the padding field,\nand leaves rep-\u003emaxfield as zero.\n\nIn that case the validation enters the rep-\u003emaxfield \u003c 1 branch and then\ndereferences rep-\u003efield[0]-\u003ereport_count while printing the error message,\ncausing a NULL pointer dereference during probe. This is reproducible with\nuhid by emulating a Logitech receiver with a padding-only DJ short output\nreport:\n\n  BUG: KASAN: null-ptr-deref in logi_dj_probe+0xb1/0x754 [hid_logitech_dj]\n  Read of size 4 at addr 0000000000000028 by task kworker/4:1/129\n  ...\n  Call Trace:\n   logi_dj_probe+0xb1/0x754 [hid_logitech_dj]\n   hid_device_probe+0x329/0x3f0 [hid]\n   really_probe+0x162/0x570\n   __device_attach+0x137/0x2c0\n   bus_probe_device+0x38/0xc0\n   device_add+0xa56/0xce0\n   hid_add_device+0x19c/0x280 [hid]\n   uhid_device_add_worker+0x2c/0xb0 [uhid]\n\nReject the zero-field report before printing the field report_count."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-19T16:28:13.596Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/f3790a6af9c7f47d454225cab9dc145270e48f62"
            },
            {
              "url": "https://git.kernel.org/stable/c/1215febd644c3e16f77e0f1799d89544dd57a754"
            },
            {
              "url": "https://git.kernel.org/stable/c/6f7f22a8d244c2e586b8eb61c7585784b62aea01"
            },
            {
              "url": "https://git.kernel.org/stable/c/95b3f23d632490b5eb285b9fcf7284f2ac8f9872"
            },
            {
              "url": "https://git.kernel.org/stable/c/80c1e18473f63fd7c6a2bc9ad6f3d0a6cc4fb500"
            },
            {
              "url": "https://git.kernel.org/stable/c/2b70bebc709489d29a31ac2935aeffb8d5228395"
            },
            {
              "url": "https://git.kernel.org/stable/c/7a89ad762fad53d56b7002d7ffc923a4b7f4006f"
            },
            {
              "url": "https://git.kernel.org/stable/c/590cc4d782487632a52f37c2171bee1eeea29627"
            }
          ],
          "title": "HID: logitech-dj: Fix maxfield check in DJ short report validation",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64427",
        "datePublished": "2026-07-25T08:51:04.686Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-19T16:28:13.596Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64426 (GCVE-0-2026-64426)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    io_uring/nop: fix file reference leak with IOSQE_FIXED_FILE
    Summary
    In the Linux kernel, the following vulnerability has been resolved: io_uring/nop: fix file reference leak with IOSQE_FIXED_FILE NOP file-acquisition support choses between a fixed (registered) file and a normal fget()'d file based on its own IORING_NOP_FIXED_FILE flag in sqe->nop_flags. However, a request's REQ_F_FIXED_FILE is set independently from the generic IOSQE_FIXED_FILE sqe flag during request init, before the issue handler runs. If a NOP is submitted with IOSQE_FIXED_FILE set (so REQ_F_FIXED_FILE is set) but without IORING_NOP_FIXED_FILE, io_nop() takes the normal path and grabs a real reference via io_file_get_normal(). On completion, io_put_file() only drops the reference when REQ_F_FIXED_FILE is clear, so the fget()'d file is never released and leaks: BUG: memory leak unreferenced object 0xffff88800f42c240 (size 176): kmem_cache_alloc_noprof+0x358/0x440 alloc_empty_file+0x57/0x180 path_openat+0x44/0x1e50 do_file_open+0x121/0x200 do_sys_openat2+0xa7/0x150 __x64_sys_openat+0x82/0xf0 Decide between fixed and normal file acquisition from REQ_F_FIXED_FILE, the same way io_assign_file() does for every other opcode, and fold IORING_NOP_FIXED_FILE into REQ_F_FIXED_FILE at prep time.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: a85f31052bce52111b4e9d5a536003481d0421d0 , < 722869fcff598fad20d5ab79c305897a7534708b (git)
    Affected: a85f31052bce52111b4e9d5a536003481d0421d0 , < 7267717f35787167fcce4bc14f6ef3fa06682dcf (git)
    Affected: a85f31052bce52111b4e9d5a536003481d0421d0 , < 2564ca2e31bd8ee8348362941af2ee4671e487ca (git)
    Create a notification for this product.
    Linux Linux Affected: 6.13
    Unaffected: 0 , < 6.13 (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "io_uring/nop.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "722869fcff598fad20d5ab79c305897a7534708b",
                  "status": "affected",
                  "version": "a85f31052bce52111b4e9d5a536003481d0421d0",
                  "versionType": "git"
                },
                {
                  "lessThan": "7267717f35787167fcce4bc14f6ef3fa06682dcf",
                  "status": "affected",
                  "version": "a85f31052bce52111b4e9d5a536003481d0421d0",
                  "versionType": "git"
                },
                {
                  "lessThan": "2564ca2e31bd8ee8348362941af2ee4671e487ca",
                  "status": "affected",
                  "version": "a85f31052bce52111b4e9d5a536003481d0421d0",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "io_uring/nop.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.13"
                },
                {
                  "lessThan": "6.13",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.39",
                      "versionStartIncluding": "6.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.13",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.13",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nio_uring/nop: fix file reference leak with IOSQE_FIXED_FILE\n\nNOP file-acquisition support choses between a fixed (registered) file and\na normal fget()\u0027d file based on its own IORING_NOP_FIXED_FILE flag in\nsqe-\u003enop_flags. However, a request\u0027s REQ_F_FIXED_FILE is set\nindependently from the generic IOSQE_FIXED_FILE sqe flag during request\ninit, before the issue handler runs.\n\nIf a NOP is submitted with IOSQE_FIXED_FILE set (so REQ_F_FIXED_FILE is\nset) but without IORING_NOP_FIXED_FILE, io_nop() takes the normal path\nand grabs a real reference via io_file_get_normal(). On completion,\nio_put_file() only drops the reference when REQ_F_FIXED_FILE is clear,\nso the fget()\u0027d file is never released and leaks:\n\n  BUG: memory leak\n  unreferenced object 0xffff88800f42c240 (size 176):\n    kmem_cache_alloc_noprof+0x358/0x440\n    alloc_empty_file+0x57/0x180\n    path_openat+0x44/0x1e50\n    do_file_open+0x121/0x200\n    do_sys_openat2+0xa7/0x150\n    __x64_sys_openat+0x82/0xf0\n\nDecide between fixed and normal file acquisition from REQ_F_FIXED_FILE,\nthe same way io_assign_file() does for every other opcode, and fold\nIORING_NOP_FIXED_FILE into REQ_F_FIXED_FILE at prep time."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:26.542Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/722869fcff598fad20d5ab79c305897a7534708b"
            },
            {
              "url": "https://git.kernel.org/stable/c/7267717f35787167fcce4bc14f6ef3fa06682dcf"
            },
            {
              "url": "https://git.kernel.org/stable/c/2564ca2e31bd8ee8348362941af2ee4671e487ca"
            }
          ],
          "title": "io_uring/nop: fix file reference leak with IOSQE_FIXED_FILE",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64426",
        "datePublished": "2026-07-25T08:51:03.867Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:26.542Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64425 (GCVE-0-2026-64425)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-09-08 08:50
    VLAI
    Title
    io_uring/io-wq: re-check IO_WQ_BIT_EXIT for each linked work item
    Summary
    In the Linux kernel, the following vulnerability has been resolved: io_uring/io-wq: re-check IO_WQ_BIT_EXIT for each linked work item commit 10dc95939817 ("io_uring/io-wq: check IO_WQ_BIT_EXIT inside work run loop") fixed the obvious case where io_worker_handle_work() took one exit-bit snapshot before draining pending work, but the fix stops one level too early. io_worker_handle_work() now re-checks IO_WQ_BIT_EXIT in its outer work run loop, yet it still snapshots that bit once before processing a whole dependent linked-work chain. If io_wq_exit_start() sets IO_WQ_BIT_EXIT after the first linked item has started, the remaining linked items can still reuse stale do_kill = false, skip IO_WQ_WORK_CANCEL, and continue running after exit has begun. Move the check further inside, so it covers linked items too. Note: this is a syzbot special as it loves setting up tons of slow linked work on weird devices like msr that take forever to read, and immediately close the ring. Exit then takes a long time.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 065dd936195a3466b8ebe5f9287400987ee3c063 , < 14b7ecad2ec56699325180a744f4b19f046401bb (git)
    Affected: 27e47500fac23d15b7dc93ff650bc4844d2581bd , < d179533c610e1b4c6aa436e3c1fd1b719d2c727c (git)
    Affected: d05d99573f81a091547b1778b9a50120f5d6c68a , < 6e2f51f3e06773c2ee98ad09738f0908b48f76f9 (git)
    Affected: 85eb83694a91c89d9abe615d717c0053c3efa714 , < ea61b04e1d7242cb37f5ed2cc91cf21a493f6597 (git)
    Affected: 2e8ca1078b14142db2ce51cbd18ff9971560046b , < b6f179a653a934736c88d820fe0098c3c2532549 (git)
    Affected: bdf0bf73006ea8af9327cdb85cfdff4c23a5f966 , < 1636d85dc139b07c0449308f2bb5e0c7a2e0da99 (git)
    Affected: 10dc959398175736e495f71c771f8641e1ca1907 , < ab85765cbe3258b43dc6729af0e6ce3a87a133d8 (git)
    Affected: 10dc959398175736e495f71c771f8641e1ca1907 , < 29bef9934b2521f787bb15dd1985d4c0d12ae02a (git)
    Affected: 5.10.253 , < 5.10.261 (semver)
    Affected: 5.15.203 , < 5.15.212 (semver)
    Affected: 6.1.167 , < 6.1.178 (semver)
    Affected: 6.6.122 , < 6.6.145 (semver)
    Affected: 6.12.68 , < 6.12.96 (semver)
    Affected: 6.18.8 , < 6.18.39 (semver)
    Create a notification for this product.
    Linux Linux Affected: 6.19
    Unaffected: 0 , < 6.19 (semver)
    Unaffected: 5.10.261 , ≤ 5.10.* (semver)
    Unaffected: 5.15.212 , ≤ 5.15.* (semver)
    Unaffected: 6.1.178 , ≤ 6.1.* (semver)
    Unaffected: 6.6.145 , ≤ 6.6.* (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP Affected: V3.1.6 , < * (custom)
    Create a notification for this product.
    Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP Affected: V3.1.6 , < * (custom)
    Create a notification for this product.
    Siemens SIPLUS S7-1500 CPU 1518-4 PN/DP MFP Affected: V3.1.6 , < * (custom)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "adp": [
          {
            "affected": [
              {
                "defaultStatus": "unknown",
                "product": "SIMATIC S7-1500 CPU 1518-4 PN/DP MFP",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "*",
                    "status": "affected",
                    "version": "V3.1.6",
                    "versionType": "custom"
                  }
                ]
              },
              {
                "defaultStatus": "unknown",
                "product": "SIMATIC S7-1500 CPU 1518-4 PN/DP MFP",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "*",
                    "status": "affected",
                    "version": "V3.1.6",
                    "versionType": "custom"
                  }
                ]
              },
              {
                "defaultStatus": "unknown",
                "product": "SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "*",
                    "status": "affected",
                    "version": "V3.1.6",
                    "versionType": "custom"
                  }
                ]
              },
              {
                "defaultStatus": "unknown",
                "product": "SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "*",
                    "status": "affected",
                    "version": "V3.1.6",
                    "versionType": "custom"
                  }
                ]
              },
              {
                "defaultStatus": "unknown",
                "product": "SIPLUS S7-1500 CPU 1518-4 PN/DP MFP",
                "vendor": "Siemens",
                "versions": [
                  {
                    "lessThan": "*",
                    "status": "affected",
                    "version": "V3.1.6",
                    "versionType": "custom"
                  }
                ]
              }
            ],
            "providerMetadata": {
              "dateUpdated": "2026-09-08T08:50:39.947Z",
              "orgId": "0b142b55-0307-4c5a-b3c9-f314f3fb7c5e",
              "shortName": "siemens-SADP"
            },
            "references": [
              {
                "url": "https://cert-portal.siemens.com/productcert/html/ssa-019113.html"
              }
            ],
            "x_adpType": "supplier"
          }
        ],
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "io_uring/io-wq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "14b7ecad2ec56699325180a744f4b19f046401bb",
                  "status": "affected",
                  "version": "065dd936195a3466b8ebe5f9287400987ee3c063",
                  "versionType": "git"
                },
                {
                  "lessThan": "d179533c610e1b4c6aa436e3c1fd1b719d2c727c",
                  "status": "affected",
                  "version": "27e47500fac23d15b7dc93ff650bc4844d2581bd",
                  "versionType": "git"
                },
                {
                  "lessThan": "6e2f51f3e06773c2ee98ad09738f0908b48f76f9",
                  "status": "affected",
                  "version": "d05d99573f81a091547b1778b9a50120f5d6c68a",
                  "versionType": "git"
                },
                {
                  "lessThan": "ea61b04e1d7242cb37f5ed2cc91cf21a493f6597",
                  "status": "affected",
                  "version": "85eb83694a91c89d9abe615d717c0053c3efa714",
                  "versionType": "git"
                },
                {
                  "lessThan": "b6f179a653a934736c88d820fe0098c3c2532549",
                  "status": "affected",
                  "version": "2e8ca1078b14142db2ce51cbd18ff9971560046b",
                  "versionType": "git"
                },
                {
                  "lessThan": "1636d85dc139b07c0449308f2bb5e0c7a2e0da99",
                  "status": "affected",
                  "version": "bdf0bf73006ea8af9327cdb85cfdff4c23a5f966",
                  "versionType": "git"
                },
                {
                  "lessThan": "ab85765cbe3258b43dc6729af0e6ce3a87a133d8",
                  "status": "affected",
                  "version": "10dc959398175736e495f71c771f8641e1ca1907",
                  "versionType": "git"
                },
                {
                  "lessThan": "29bef9934b2521f787bb15dd1985d4c0d12ae02a",
                  "status": "affected",
                  "version": "10dc959398175736e495f71c771f8641e1ca1907",
                  "versionType": "git"
                },
                {
                  "lessThan": "5.10.261",
                  "status": "affected",
                  "version": "5.10.253",
                  "versionType": "semver"
                },
                {
                  "lessThan": "5.15.212",
                  "status": "affected",
                  "version": "5.15.203",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.1.178",
                  "status": "affected",
                  "version": "6.1.167",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.6.145",
                  "status": "affected",
                  "version": "6.6.122",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.12.96",
                  "status": "affected",
                  "version": "6.12.68",
                  "versionType": "semver"
                },
                {
                  "lessThan": "6.18.39",
                  "status": "affected",
                  "version": "6.18.8",
                  "versionType": "semver"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "io_uring/io-wq.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "6.19"
                },
                {
                  "lessThan": "6.19",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.10.*",
                  "status": "unaffected",
                  "version": "5.10.261",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "5.15.*",
                  "status": "unaffected",
                  "version": "5.15.212",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.1.*",
                  "status": "unaffected",
                  "version": "6.1.178",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.6.*",
                  "status": "unaffected",
                  "version": "6.6.145",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.10.261",
                      "versionStartIncluding": "5.10.253",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "5.15.212",
                      "versionStartIncluding": "5.15.203",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.1.178",
                      "versionStartIncluding": "6.1.167",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.6.145",
                      "versionStartIncluding": "6.6.122",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.12.96",
                      "versionStartIncluding": "6.12.68",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "6.18.8",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "6.19",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "6.19",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nio_uring/io-wq: re-check IO_WQ_BIT_EXIT for each linked work item\n\ncommit 10dc95939817 (\"io_uring/io-wq: check IO_WQ_BIT_EXIT inside work\nrun loop\") fixed the obvious case where io_worker_handle_work() took one\nexit-bit snapshot before draining pending work, but the fix stops one\nlevel too early.\n\nio_worker_handle_work() now re-checks IO_WQ_BIT_EXIT in its outer work\nrun loop, yet it still snapshots that bit once before processing a whole\ndependent linked-work chain. If io_wq_exit_start() sets IO_WQ_BIT_EXIT\nafter the first linked item has started, the remaining linked items can\nstill reuse stale do_kill = false, skip IO_WQ_WORK_CANCEL, and continue\nrunning after exit has begun.\n\nMove the check further inside, so it covers linked items too. Note: this\nis a syzbot special as it loves setting up tons of slow linked work on\nweird devices like msr that take forever to read, and immediately close\nthe ring. Exit then takes a long time."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:25.440Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/14b7ecad2ec56699325180a744f4b19f046401bb"
            },
            {
              "url": "https://git.kernel.org/stable/c/d179533c610e1b4c6aa436e3c1fd1b719d2c727c"
            },
            {
              "url": "https://git.kernel.org/stable/c/6e2f51f3e06773c2ee98ad09738f0908b48f76f9"
            },
            {
              "url": "https://git.kernel.org/stable/c/ea61b04e1d7242cb37f5ed2cc91cf21a493f6597"
            },
            {
              "url": "https://git.kernel.org/stable/c/b6f179a653a934736c88d820fe0098c3c2532549"
            },
            {
              "url": "https://git.kernel.org/stable/c/1636d85dc139b07c0449308f2bb5e0c7a2e0da99"
            },
            {
              "url": "https://git.kernel.org/stable/c/ab85765cbe3258b43dc6729af0e6ce3a87a133d8"
            },
            {
              "url": "https://git.kernel.org/stable/c/29bef9934b2521f787bb15dd1985d4c0d12ae02a"
            }
          ],
          "title": "io_uring/io-wq: re-check IO_WQ_BIT_EXIT for each linked work item",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64425",
        "datePublished": "2026-07-25T08:51:03.036Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-09-08T08:50:39.947Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }

    CVE-2026-64424 (GCVE-0-2026-64424)

    Vulnerability from nvd – Published: 2026-07-25 08:51 – Updated: 2026-08-17 04:55
    VLAI
    Title
    netpoll: fix a use-after-free on shutdown path
    Summary
    In the Linux kernel, the following vulnerability has been resolved: netpoll: fix a use-after-free on shutdown path There is a use-after-free error on netpoll, which is clearly detected by KASAN. BUG: KASAN: slab-use-after-free in _raw_spin_lock_irqsave+0x3b/0x80 Read of size 1 at addr ... by task kworker/9:1 Workqueue: events queue_process Call Trace: skb_dequeue+0x1e/0xb0 queue_process+0x2c/0x600 process_scheduled_works+0x4b6/0x850 worker_thread+0x414/0x5a0 Allocated by task 242: __netpoll_setup+0x201/0x4a0 netpoll_setup+0x249/0x550 enabled_store+0x32f/0x380 Freed by task 0: kfree+0x1b7/0x540 rcu_core+0x3f8/0x7a0 The problem happens when there is a pending TX worker running in parallel with the cleanup path. This is what happens on netpoll shutdown path: 1) __netpoll_cleanup() is called 2) set dev->npinfo to NULL 3) call_rcu() with rcu_cleanup_netpoll_info() 3.1) rcu_cleanup_netpoll_info() tries to cancel all workers with cancel_delayed_work(), but doesn't wait for the worker to finish 4) and kfree(npinfo); Because 3.1) doesn't really cancel the work, as the comment says "we can't call cancel_delayed_work_sync here, as we are in softirq", the TX worker can run after 4). Tl;DR: queue_process() is not an RCU reader, it reaches npinfo through the work item via container_of(). Use disable_delayed_work_sync() to ensure the worker is completely stopped and prevent any future re-arming attempts. Once npinfo is set to NULL, senders will bail out and not queue new work. The disable flag ensures any in-flight re-arming attempts also fail silently. In the future, we can do the cleanup inline here without needing the npinfo->rcu rcu_head, but that is net-next material.
    Severity
    No CVSS data available.
    Impacted products
    Vendor Product Version
    Linux Linux Affected: 38e6bc185d9544dfad1774b3f8902a0b061aea25 , < 95ecc5b58042f6b6743b589e6588f1cd7ba336aa (git)
    Affected: 38e6bc185d9544dfad1774b3f8902a0b061aea25 , < a33f37f8d079da7236ed7b7e2aed2a34ab81e7cf (git)
    Affected: 38e6bc185d9544dfad1774b3f8902a0b061aea25 , < 5ed09a108d93a3b002cc79823d9455b50c4a8be7 (git)
    Affected: 38e6bc185d9544dfad1774b3f8902a0b061aea25 , < 45f1458a85017a023f138b22ac5c76abd477db42 (git)
    Create a notification for this product.
    Linux Linux Affected: 3.6
    Unaffected: 0 , < 3.6 (semver)
    Unaffected: 6.12.96 , ≤ 6.12.* (semver)
    Unaffected: 6.18.39 , ≤ 6.18.* (semver)
    Unaffected: 7.1.4 , ≤ 7.1.* (semver)
    Unaffected: 7.2 , ≤ * (original_commit_for_fix)
    Create a notification for this product.
    Show details on NVD website

    {
      "containers": {
        "cna": {
          "affected": [
            {
              "defaultStatus": "unaffected",
              "product": "Linux",
              "programFiles": [
                "net/core/netpoll.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "lessThan": "95ecc5b58042f6b6743b589e6588f1cd7ba336aa",
                  "status": "affected",
                  "version": "38e6bc185d9544dfad1774b3f8902a0b061aea25",
                  "versionType": "git"
                },
                {
                  "lessThan": "a33f37f8d079da7236ed7b7e2aed2a34ab81e7cf",
                  "status": "affected",
                  "version": "38e6bc185d9544dfad1774b3f8902a0b061aea25",
                  "versionType": "git"
                },
                {
                  "lessThan": "5ed09a108d93a3b002cc79823d9455b50c4a8be7",
                  "status": "affected",
                  "version": "38e6bc185d9544dfad1774b3f8902a0b061aea25",
                  "versionType": "git"
                },
                {
                  "lessThan": "45f1458a85017a023f138b22ac5c76abd477db42",
                  "status": "affected",
                  "version": "38e6bc185d9544dfad1774b3f8902a0b061aea25",
                  "versionType": "git"
                }
              ]
            },
            {
              "defaultStatus": "affected",
              "product": "Linux",
              "programFiles": [
                "net/core/netpoll.c"
              ],
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "vendor": "Linux",
              "versions": [
                {
                  "status": "affected",
                  "version": "3.6"
                },
                {
                  "lessThan": "3.6",
                  "status": "unaffected",
                  "version": "0",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.12.*",
                  "status": "unaffected",
                  "version": "6.12.96",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "6.18.*",
                  "status": "unaffected",
                  "version": "6.18.39",
                  "versionType": "semver"
                },
                {
                  "lessThanOrEqual": "7.1.*",
                  "status": "unaffected",
                  "version": "7.1.4",
                  "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.12.96",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "6.18.39",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.1.4",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    },
                    {
                      "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                      "versionEndExcluding": "7.2",
                      "versionStartIncluding": "3.6",
                      "vulnerable": true
                    }
                  ],
                  "negate": false,
                  "operator": "OR"
                }
              ]
            }
          ],
          "descriptions": [
            {
              "lang": "en",
              "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nnetpoll: fix a use-after-free on shutdown path\n\nThere is a use-after-free error on netpoll, which is clearly detected by\nKASAN.\n\n      BUG: KASAN: slab-use-after-free in _raw_spin_lock_irqsave+0x3b/0x80\n      Read of size 1 at addr ... by task kworker/9:1\n      Workqueue: events queue_process\n      Call Trace:\n       skb_dequeue+0x1e/0xb0\n       queue_process+0x2c/0x600\n       process_scheduled_works+0x4b6/0x850\n       worker_thread+0x414/0x5a0\n      Allocated by task 242:\n       __netpoll_setup+0x201/0x4a0\n       netpoll_setup+0x249/0x550\n       enabled_store+0x32f/0x380\n      Freed by task 0:\n       kfree+0x1b7/0x540\n       rcu_core+0x3f8/0x7a0\n\nThe problem happens when there is a pending TX worker running in\nparallel with the cleanup path.\n\nThis is what happens on netpoll shutdown path:\n\n1) __netpoll_cleanup() is called\n2) set dev-\u003enpinfo to NULL\n3) call_rcu() with rcu_cleanup_netpoll_info()\n  3.1) rcu_cleanup_netpoll_info() tries to cancel all workers with\n       cancel_delayed_work(), but doesn\u0027t wait for the worker to finish\n4) and kfree(npinfo);\n\nBecause 3.1) doesn\u0027t really cancel the work, as the comment says \"we\ncan\u0027t call cancel_delayed_work_sync here, as we are in softirq\", the TX\nworker can run after 4).\n\nTl;DR: queue_process() is not an RCU reader, it reaches npinfo through\nthe work item via container_of().\n\nUse disable_delayed_work_sync() to ensure the worker is completely\nstopped and prevent any future re-arming attempts. Once npinfo is set\nto NULL, senders will bail out and not queue new work. The disable flag\nensures any in-flight re-arming attempts also fail silently.\n\nIn the future, we can do the cleanup inline here without needing the\nnpinfo-\u003ercu rcu_head, but that is net-next material."
            }
          ],
          "providerMetadata": {
            "dateUpdated": "2026-08-17T04:55:24.351Z",
            "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
            "shortName": "Linux"
          },
          "references": [
            {
              "url": "https://git.kernel.org/stable/c/95ecc5b58042f6b6743b589e6588f1cd7ba336aa"
            },
            {
              "url": "https://git.kernel.org/stable/c/a33f37f8d079da7236ed7b7e2aed2a34ab81e7cf"
            },
            {
              "url": "https://git.kernel.org/stable/c/5ed09a108d93a3b002cc79823d9455b50c4a8be7"
            },
            {
              "url": "https://git.kernel.org/stable/c/45f1458a85017a023f138b22ac5c76abd477db42"
            }
          ],
          "title": "netpoll: fix a use-after-free on shutdown path",
          "x_generator": {
            "engine": "bippy-1.2.0"
          }
        }
      },
      "cveMetadata": {
        "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "assignerShortName": "Linux",
        "cveId": "CVE-2026-64424",
        "datePublished": "2026-07-25T08:51:02.276Z",
        "dateReserved": "2026-07-19T15:36:31.787Z",
        "dateUpdated": "2026-08-17T04:55:24.351Z",
        "state": "PUBLISHED"
      },
      "dataType": "CVE_RECORD",
      "dataVersion": "5.2"
    }