CVE-2023-53820 loop: loop_set_status_from_info() check before assignment
An integer overflow in the Linux kernel loop driver can cause incorrect offset assignments, leading to potential 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-53820?
CVE-2023-53820 is a vulnerability in Linux, published on 9 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:
loop: loop_set_status_from_info() check before assignment
In loop_set_status_from_info(), lo->lo_offset and lo->lo_sizelimit should be checked before reassignment, because if an overflow error occurs, the original correct value will be changed to the wrong value, and it will not be changed back.
More, the original patch did not solve the problem, the value was set and ioctl returned an error, but the subsequent io used the value in the loop driver, which still caused an alarm:
loop_handle_cmd do_req_filebacked loff_t pos = ((loff_t) blk_rq_pos(rq) << 9) + lo->lo_offset; lo_rw_aio cmd->iocb.ki_pos = pos
Which versions are affected by CVE-2023-53820?
How do I fix CVE-2023-53820?
Apply the vendor's patch.
Is CVE-2023-53820 being exploited?
There is no known exploitation of CVE-2023-53820 in the wild and no public exploit code.
Sources
Also known as BELL-CVE-2023-53820, DEBIAN-CVE-2023-53820, GHSA-3f7g-86g8-7vgv, UBUNTU-CVE-2023-53820.