CVE-2023-52439

Source
https://cve.org/CVERecord?id=CVE-2023-52439
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52439.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2023-52439
Downstream
Related
Published
2024-02-20T18:34:49.323Z
Modified
2026-03-13T07:48:01.151160Z
Summary
uio: Fix use-after-free in uio_open
Details

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

uio: Fix use-after-free in uio_open

core-1 core-2

uiounregisterdevice uioopen idev = idrfind() deviceunregister(&idev->dev) putdevice(&idev->dev) uiodevicerelease getdevice(&idev->dev) kfree(idev) uiofreeminor(minor) uiorelease put_device(&idev->dev)

kfree(idev)

In the core-1 uiounregisterdevice(), the deviceunregister will kfree idev when the idev->dev kobject ref is 1. But after core-1 deviceunregister, putdevice and before doing kfree, the core-2 may getdevice. Then: 1. After core-1 kfree idev, the core-2 will do use-after-free for idev. 2. When core-2 do uiorelease and putdevice, the idev will be double freed.

To address this issue, we can get idev atomic & inc idev reference with minor_lock.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/52xxx/CVE-2023-52439.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
57c5f4df0a5a0ee83df799991251e2ee93a5e4e9
Fixed
3174e0f7de1ba392dc191625da83df02d695b60c
Fixed
e93da893d52d82d57fc0db2ca566024e0f26ff50
Fixed
5e0be1229ae199ebb90b33102f74a0f22d152570
Fixed
5cf604ee538ed0c467abe3b4cda5308a6398f0f7
Fixed
17a8519cb359c3b483fb5c7367efa9a8a508bdea
Fixed
35f102607054faafe78d2a6994b18d5d9d6e92ad
Fixed
913205930da6213305616ac539447702eaa85e41
Fixed
0c9ae0b8605078eafc3bea053cc78791e97ba2e2
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Last affected
13af019c87f2d90e663742cb1a819834048842ae

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-52439.json"