---
id: CVE-2022-4696
title: "There exists a use-after-free vulnerability in the Linux kernel through io_uring and the\_IORING_OP_SPLICE operation"
summary: "There exists a use-after-free vulnerability in the Linux kernel through io_uring and the\_IORING_OP_SPLICE operation. If\_IORING_OP_SPLICE is\_missing the IO_WQ_WORK_FILES flag, which signals that the operation won't use current->nsproxy, s…"
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-763
  - CWE-416
vendor: netapp
product: h410s_firmware
affected:
  - h410s_firmware
  - h410c_firmware
  - h700s_firmware
  - h500s_firmware
  - h300s_firmware
  - 'linux_kernel >= 5.4, < 5.10.160'
  - 'linux_kernel >= 5.11, < 5.12'
patched:
  - linux_kernel 5.12
published: '2023-01-11'
updated: '2026-09-01'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2022-4696'
references:
  - url: >-
      https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.10.y&id=75454b4bbfc7e6a4dd8338556f36ea9107ddf61a
    label: cve-coordination@google.com
  - url: 'https://kernel.dance/#75454b4bbfc7e6a4dd8338556f36ea9107ddf61a'
    label: cve-coordination@google.com
  - url: >-
      https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-5.10.y&id=75454b4bbfc7e6a4dd8338556f36ea9107ddf61a
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://kernel.dance/#75454b4bbfc7e6a4dd8338556f36ea9107ddf61a'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://security.netapp.com/advisory/ntap-20230223-0003/'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
epss: 0.00432
epssPercentile: 0.37047
ingestedAt: '2026-09-01T18:30:36.607Z'
---

## Overview

There exists a use-after-free vulnerability in the Linux kernel through io_uring and the IORING_OP_SPLICE operation. If IORING_OP_SPLICE is missing the IO_WQ_WORK_FILES flag, which signals that the operation won't use current->nsproxy, so its reference counter is not increased. This assumption is not always true as calling io_splice on specific files will call the get_uts function which will use current->nsproxy leading to invalidly decreasing its reference counter later causing the use-after-free vulnerability. We recommend upgrading to version 5.10.160 or above


## Affected

- `h410s_firmware`
- `h410c_firmware`
- `h700s_firmware`
- `h500s_firmware`
- `h300s_firmware`
- `linux_kernel >= 5.4, < 5.10.160`
- `linux_kernel >= 5.11, < 5.12`

## Remediation

Upgrade past the affected range:

- `linux_kernel 5.12`
