CVE-2023-54041 io_uring: fix memory leak when removing provided buffers
A local attacker can trigger a memory leak in the Linux kernel io_uring subsystem, potentially leading to denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2023-54041?
CVE-2023-54041 is a memory corruption vulnerability in Linux, published on 24 Dec 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
io_uring: fix memory leak when removing provided buffers
When removing provided buffers, io_buffer structs are not being disposed of, leading to a memory leak. They can't be freed individually, because they are allocated in page-sized groups. They need to be added to some free list instead, such as io_buffers_cache. All callers already hold the lock protecting it, apart from when destroying buffers, so had to extend the lock there.
Which versions are affected by CVE-2023-54041?
How do I fix CVE-2023-54041?
Apply the vendor's patch.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2023-54041 being exploited?
There is no known exploitation of CVE-2023-54041 in the wild and no public exploit code.
Sources
Also known as BELL-CVE-2023-54041, DEBIAN-CVE-2023-54041, GHSA-g296-6qj4-g8f8, UBUNTU-CVE-2023-54041.