---
id: CVE-2026-81009
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  io_uring/query: cap user size passed to copy_struct_to_user

  io_handle_query_entry() clamps hdr.size for the inbound copy_from_user()
  but keeps the original user value …
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  io_uring/query: cap user size passed to copy_struct_to_user

  io_handle_query_entry() clamps hdr.size for the inbound copy_from_user()
  but keeps the original user value …
severity: medium
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= c265ae75f900cea4e415230a77b5d152377627dd <
    417e02f7b6051765b91cf1289071882eebd172e0
  - >-
    Linux >= c265ae75f900cea4e415230a77b5d152377627dd <
    2b8ad4981ecedb14c1fdd811ab977010b23933e6
  - >-
    Linux >= c265ae75f900cea4e415230a77b5d152377627dd <
    ba77efee1b95b4ad7559b1cdbe7cd7fa36dca95b
  - Linux 6.18
published: '2026-09-11'
updated: '2026-09-11'
sourceUpdated: '2026-09-11T20:19:09.687'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-81009'
references:
  - url: 'https://git.kernel.org/stable/c/2b8ad4981ecedb14c1fdd811ab977010b23933e6'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/417e02f7b6051765b91cf1289071882eebd172e0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/ba77efee1b95b4ad7559b1cdbe7cd7fa36dca95b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-81009.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-81009'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2532289'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-81009'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-81009'
  - url: >-
      https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2026/CVE-2026-81009.mbox
tags:
  - nvd
  - cve.org
  - csaf
  - vex
  - red-hat
ingestedAt: '2026-09-14T05:48:34.517Z'
epss: 0.00206
epssPercentile: 0.09622
cvss: 5.5
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'
cvssSource: vendor
cwe:
  - CWE-770
---

## Overview

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

io_uring/query: cap user size passed to copy_struct_to_user

io_handle_query_entry() clamps hdr.size for the inbound copy_from_user()
but keeps the original user value as usize. copy_struct_to_user() uses
that usize and, when it is larger than the kernel result, clear_user()s
the trailing bytes.

As hdr.size is a __u32, a query can request nearly 4 GiB of zeroing,
including on the error path where res_size stays 0. The interface is
reachable without a ring via IORING_REGISTER_QUERY.

Reject sizes larger than PAGE_SIZE, as recommended for copy_struct_*
interfaces.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Vendor advisories

- **Red Hat VEX** · Moderate · updated 2026-09-14 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-81009.json)
