CVE-2023-52439 json
uio: Fix use-after-free in uio_open
published 2024-02-20 2 y ago modified 2026-08-05 3 mo ago also EUVD-2023-57064
- cvss
- 7.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 22%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
uio: Fix use-after-free in uio_open
core-1 core-2 ------------------------------------------------------- uio_unregister_device uio_open idev = idr_find() device_unregister(&idev->dev) put_device(&idev->dev) uio_device_release get_device(&idev->dev) kfree(idev) uio_free_minor(minor) uio_release put_device(&idev->dev) kfree(idev) -------------------------------------------------------
In the core-1 uio_unregister_device(), the device_unregister will kfree idev when the idev->dev kobject ref is 1. But after core-1 device_unregister, put_device and before doing kfree, the core-2 may get_device. Then: 1. After core-1 kfree idev, the core-2 will do use-after-free for idev. 2. When core-2 do uio_release and put_device, the idev will be double freed.
To address this issue, we can get idev atomic & inc idev reference with minor_lock.
Patch / fix
- Linux Linux 4.15, 4.19.306, 5.4.268, 5.10.209, 5.15.148, 6.1.74, 6.6.13, 6.7.1, 6.8
- linux Debian 12 6.1.76-1
- linux Debian 14, Debian 13 6.6.13-1
debian advisories DEBIAN-CVE-2023-52439
- linux Ubuntu 20.04 LTS 5.4.0-176.196
- linux Ubuntu 22.04 LTS 5.15.0-102.112
- linux-aws Ubuntu 20.04 LTS 5.4.0-1122.132
- linux-aws Ubuntu 22.04 LTS 5.15.0-1057.63
- linux-gcp Ubuntu 20.04 LTS 5.4.0-1126.135
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1055.63
- linux-gke Ubuntu 22.04 LTS 5.15.0-1054.59
- linux-ibm Ubuntu 20.04 LTS 5.4.0-1069.74
ubuntu advisories UBUNTU-CVE-2023-52439
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-kvm RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-core RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-modules RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-debug-kvm RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-debug-core RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-debug-modules RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel-rt-modules-extra RHEL 8 4.18.0-553.5.1.rt7.346.el8_10
red hat advisories RHSA-2024:6993RHSA-2024:4823RHSA-2024:4831RHSA-2024:3627RHSA-2024:3618RHSA-2024:5281
- kernel-rt SLE Micro 5.4, SLE Micro 5.3, openSUSE Leap Micro 5.4 +1 more 5.14.21-150400.15.71.1
- kernel-source-rt SLE Micro 5.4, SLE Micro 5.3 5.14.21-150400.15.71.1
- kernel-default SLES for SAP 15 SP2, SLES 15 SP2-LTSS, SLE Live Patching 15 SP2 +2 more 5.3.18-150200.24.183.1
- kernel-rt SLE Micro 5.5, Real Time Module 15 SP5, openSUSE Leap 15.5 5.14.21-150500.13.38.1
- kernel-syms-rt Real Time Module 15 SP5, openSUSE Leap 15.5 5.14.21-150500.13.38.1
- kernel-rt_debug Real Time Module 15 SP5, openSUSE Leap 15.5 5.14.21-150500.13.38.1
- kernel-source-rt SLE Micro 5.5, Real Time Module 15 SP5, openSUSE Leap 15.5 5.14.21-150500.13.38.1
- kernel-syms SLE High Performance Computing 15 SP4-ESPOS, Manager Server 4.3, Manager Proxy 4.3 +3 more 5.14.21-150400.24.111.1
suse advisories SUSE-SU-2024:0977-1SUSE-SU-2024:0926-1SUSE-SU-2024:0910-1SUSE-SU-2024:0900-2SUSE-SU-2024:0900-1SUSE-SU-2024:0858-1
- kernel AlmaLinux 9 5.14.0-427.37.1.el9_4
- rv AlmaLinux 9 5.14.0-427.37.1.el9_4
- perf AlmaLinux 9 5.14.0-427.37.1.el9_4
- rtla AlmaLinux 9 5.14.0-427.37.1.el9_4
- bpftool AlmaLinux 9 7.3.0-427.37.1.el9_4
- libperf AlmaLinux 9 5.14.0-427.37.1.el9_4
- kernel-rt AlmaLinux 9 5.14.0-427.37.1.el9_4
- kernel-64k AlmaLinux 9 5.14.0-427.37.1.el9_4
almalinux advisories ALSA-2024:6997ALSA-2024:3618ALSA-2024:3627
- kernel-rt Rocky Linux 8 4.18.0-553.5.1.rt7.346.el8_10
- kernel Rocky Linux 8 4.18.0-553.5.1.el8_10
rocky linux advisories RLSA-2024:3627RLSA-2024:3618
- git.kernel.org/stable/c/3174e0f7de1ba392dc191625da83df02d695b60c commit
- git.kernel.org/stable/c/e93da893d52d82d57fc0db2ca566024e0f26ff50 commit
- git.kernel.org/stable/c/5e0be1229ae199ebb90b33102f74a0f22d152570 commit
- git.kernel.org/stable/c/5cf604ee538ed0c467abe3b4cda5308a6398f0f7 commit
- git.kernel.org/stable/c/17a8519cb359c3b483fb5c7367efa9a8a508bdea commit
- git.kernel.org/stable/c/35f102607054faafe78d2a6994b18d5d9d6e92ad commit
- git.kernel.org/stable/c/913205930da6213305616ac539447702eaa85e41 commit
- git.kernel.org/stable/c/0c9ae0b8605078eafc3bea053cc78791e97ba2e2 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-52439 updated cvss 7.0
kernel: uio: Fix use-after-free in uio_open
-
Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 moreaffected: workaround, no fix planned “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.”
-
Red Hat Enterprise Linux 9 kernel-rt, kernel-rt-kvm, kernel-rt-core, kernel-rt-modules, kernel-rt-debug-kvm, kernel-rt-debug-core, +12 moreaffected: workaround, no fix available “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.”
-
Red Hat CodeReady Linux Builder EUS (v.8.8) kernel-debuginfo-common-x86_64 4.18.0-477.74.1.el8_8, kernel-debuginfo-common-aarch64 4.18.0-477.74.1.el8_8, kernel-debuginfo-common-ppc64le 4.18.0-477.74.1.el8_8fixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6993
-
Red Hat CodeReady Linux Builder EUS (v.9.2) kernel-debuginfo-common-s390x 5.14.0-284.75.1.el9_2, kernel-debuginfo-common-x86_64 5.14.0-284.75.1.el9_2, kernel-debuginfo-common-aarch64 5.14.0-284.75.1.el9_2, kernel-debuginfo-common-ppc64le 5.14.0-284.75.1.el9_2fixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:4823
-
Red Hat Enterprise Linux AppStream (v. 9) rv 5.14.0-427.37.1.el9_4, perf 5.14.0-427.37.1.el9_4, rtla 5.14.0-427.37.1.el9_4, kernel-devel-matched 5.14.0-427.37.1.el9_4, kernel-64k-devel-matched 5.14.0-427.37.1.el9_4, kernel-debug-devel-matched 5.14.0-427.37.1.el9_4, +6 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6997
-
Red Hat Enterprise Linux AppStream EUS (v.9.2) perf 5.14.0-284.75.1.el9_2, rtla 5.14.0-284.75.1.el9_2, kernel-devel-matched 5.14.0-284.75.1.el9_2, kernel-64k-devel-matched 5.14.0-284.75.1.el9_2, kernel-debug-devel-matched 5.14.0-284.75.1.el9_2, kernel-debuginfo-common-s390x 5.14.0-284.75.1.el9_2, +5 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:4823
-
Red Hat Enterprise Linux BaseOS (v. 8) perf 4.18.0-553.5.1.el8_10, kernel 4.18.0-553.5.1.el8_10, bpftool 4.18.0-553.5.1.el8_10, kernel-core 4.18.0-553.5.1.el8_10, kernel-tools 4.18.0-553.5.1.el8_10, python3-perf 4.18.0-553.5.1.el8_10, +15 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:3618
-
Red Hat Enterprise Linux BaseOS (v. 9) bpftool 7.3.0-427.37.1.el9_4, kernel 5.14.0-427.37.1.el9_4, kernel-64k 5.14.0-427.37.1.el9_4, kernel-core 5.14.0-427.37.1.el9_4, kernel-tools 5.14.0-427.37.1.el9_4, python3-perf 5.14.0-427.37.1.el9_4, +28 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6997
show 12 moreshow fewer
-
Red Hat Enterprise Linux BaseOS AUS (v.8.6) perf 4.18.0-372.118.1.el8_6, kernel 4.18.0-372.118.1.el8_6, bpftool 4.18.0-372.118.1.el8_6, kernel-core 4.18.0-372.118.1.el8_6, kernel-tools 4.18.0-372.118.1.el8_6, python3-perf 4.18.0-372.118.1.el8_6, +8 more Red Hat Enterprise Linux BaseOS E4S (v.8.6) perf 4.18.0-372.118.1.el8_6, kernel 4.18.0-372.118.1.el8_6, bpftool 4.18.0-372.118.1.el8_6, kernel-core 4.18.0-372.118.1.el8_6, kernel-tools 4.18.0-372.118.1.el8_6, python3-perf 4.18.0-372.118.1.el8_6, +15 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:5281
-
Red Hat Enterprise Linux BaseOS EUS (v.8.8) perf 4.18.0-477.74.1.el8_8, kernel 4.18.0-477.74.1.el8_8, bpftool 4.18.0-477.74.1.el8_8, kernel-core 4.18.0-477.74.1.el8_8, kernel-tools 4.18.0-477.74.1.el8_8, python3-perf 4.18.0-477.74.1.el8_8, +15 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6993
-
Red Hat Enterprise Linux BaseOS EUS (v.9.2) bpftool 7.0.0-284.75.1.el9_2, kernel 5.14.0-284.75.1.el9_2, kernel-64k 5.14.0-284.75.1.el9_2, kernel-core 5.14.0-284.75.1.el9_2, kernel-tools 5.14.0-284.75.1.el9_2, python3-perf 5.14.0-284.75.1.el9_2, +28 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:4823
-
Red Hat Enterprise Linux BaseOS TUS (v.8.6) perf 4.18.0-372.118.1.el8_6, kernel 4.18.0-372.118.1.el8_6, bpftool 4.18.0-372.118.1.el8_6, kernel-core 4.18.0-372.118.1.el8_6, kernel-tools 4.18.0-372.118.1.el8_6, python3-perf 4.18.0-372.118.1.el8_6, +8 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:5281
-
Red Hat Enterprise Linux CRB (v. 8) kernel-debuginfo-common-x86_64 4.18.0-553.5.1.el8_10, kernel-debuginfo-common-aarch64 4.18.0-553.5.1.el8_10, kernel-debuginfo-common-ppc64le 4.18.0-553.5.1.el8_10fixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:3618
-
Red Hat Enterprise Linux CRB (v. 9) libperf 5.14.0-427.37.1.el9_4, kernel-debuginfo-common-s390x 5.14.0-427.37.1.el9_4, kernel-debuginfo-common-x86_64 5.14.0-427.37.1.el9_4, kernel-debuginfo-common-aarch64 5.14.0-427.37.1.el9_4, kernel-debuginfo-common-ppc64le 5.14.0-427.37.1.el9_4fixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6997
-
Red Hat Enterprise Linux NFV (v. 8) kernel-rt 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-kvm 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-core 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-modules 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-debug-kvm 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-debug-core 4.18.0-553.5.1.rt7.346.el8_10, +4 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:3627
-
Red Hat Enterprise Linux NFV (v. 9) kernel-rt 5.14.0-427.37.1.el9_4, kernel-rt-kvm 5.14.0-427.37.1.el9_4, kernel-rt-core 5.14.0-427.37.1.el9_4, kernel-rt-modules 5.14.0-427.37.1.el9_4, kernel-rt-debug-kvm 5.14.0-427.37.1.el9_4, kernel-rt-debug-core 5.14.0-427.37.1.el9_4, +6 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6997
-
Red Hat Enterprise Linux Real Time EUS (v.9.2) kernel-rt 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-core 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-modules 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-debug-core 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-modules-core 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-debug-modules 5.14.0-284.75.1.rt14.360.el9_2, +4 more Red Hat Enterprise Linux Real Time for NFV EUS (v.9.2) kernel-rt 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-kvm 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-core 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-modules 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-debug-kvm 5.14.0-284.75.1.rt14.360.el9_2, kernel-rt-debug-core 5.14.0-284.75.1.rt14.360.el9_2, +6 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:4831
-
Red Hat Enterprise Linux RT (v. 8) kernel-rt 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-core 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-modules 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-debug-core 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-debug-modules 4.18.0-553.5.1.rt7.346.el8_10, kernel-rt-modules-extra 4.18.0-553.5.1.rt7.346.el8_10, +2 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:3627
-
Red Hat Enterprise Linux RT (v. 9) kernel-rt 5.14.0-427.37.1.el9_4, kernel-rt-core 5.14.0-427.37.1.el9_4, kernel-rt-modules 5.14.0-427.37.1.el9_4, kernel-rt-debug-core 5.14.0-427.37.1.el9_4, kernel-rt-modules-core 5.14.0-427.37.1.el9_4, kernel-rt-debug-modules 5.14.0-427.37.1.el9_4, +4 morefixed: vendor fix “To mitigate this issue, prevent module uio from being loaded. Please see https://access.redhat.com/solutions/41278 for how to blacklist a kernel module to prevent it from loading automatically.” RHSA-2024:6997
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux AppStream EUS (v.9.2) kernel-doc 5.14.0-284.75.1.el9_2 Red Hat Enterprise Linux BaseOS AUS (v.8.6) kernel-headers 4.18.0-372.118.1.el8_6, kernel-cross-headers 4.18.0-372.118.1.el8_6 Red Hat Enterprise Linux BaseOS E4S (v.8.6) kernel-headers 4.18.0-372.118.1.el8_6, kernel-cross-headers 4.18.0-372.118.1.el8_6 Red Hat Enterprise Linux BaseOS TUS (v.8.6) kernel-headers 4.18.0-372.118.1.el8_6, kernel-cross-headers 4.18.0-372.118.1.el8_6not affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- partial
- Assessed
- 2 y ago
Exploit prediction
0.30% chance of exploitation in the next 30 days, higher than 22% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-415 Double Free
- Technology feeds
References
-
git.kernel.org
/stable/c/3174e0f7de1ba392dc191625da83df02d695b60c
patch
-
git.kernel.org
/stable/c/e93da893d52d82d57fc0db2ca566024e0f26ff50
patch
-
git.kernel.org
/stable/c/5e0be1229ae199ebb90b33102f74a0f22d152570
patch
-
git.kernel.org
/stable/c/5cf604ee538ed0c467abe3b4cda5308a6398f0f7
patch
-
git.kernel.org
/stable/c/17a8519cb359c3b483fb5c7367efa9a8a508bdea
patch
-
git.kernel.org
/stable/c/35f102607054faafe78d2a6994b18d5d9d6e92ad
patch
-
git.kernel.org
/stable/c/913205930da6213305616ac539447702eaa85e41
patch
-
git.kernel.org
/stable/c/0c9ae0b8605078eafc3bea053cc78791e97ba2e2
patch
- lists.debian.org /debian-lts-announce/2024/06/msg00016.html
- lists.debian.org /debian-lts-announce/2024/06/msg00020.html
- security.netapp.com /advisory/ntap-20241227-0006/
Sources
- CVE List CVE-2023-52439
- NVD CVE-2023-52439
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.