CVE-2023-52699

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
19/05/2024
Last modified:
04/04/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> sysv: don&amp;#39;t call sb_bread() with pointers_lock held<br /> <br /> syzbot is reporting sleep in atomic context in SysV filesystem [1], for<br /> sb_bread() is called with rw_spinlock held.<br /> <br /> A "write_lock(&amp;pointers_lock) =&gt; read_lock(&amp;pointers_lock) deadlock" bug<br /> and a "sb_bread() with write_lock(&amp;pointers_lock)" bug were introduced by<br /> "Replace BKL for chain locking with sysvfs-private rwlock" in Linux 2.5.12.<br /> <br /> Then, "[PATCH] err1-40: sysvfs locking fix" in Linux 2.6.8 fixed the<br /> former bug by moving pointers_lock lock to the callers, but instead<br /> introduced a "sb_bread() with read_lock(&amp;pointers_lock)" bug (which made<br /> this problem easier to hit).<br /> <br /> Al Viro suggested that why not to do like get_branch()/get_block()/<br /> find_shared() in Minix filesystem does. And doing like that is almost a<br /> revert of "[PATCH] err1-40: sysvfs locking fix" except that get_branch()<br /> from with find_shared() is called without write_lock(&amp;pointers_lock).

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.19.312 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 5.4.274 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.215 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.15.155 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (including) 6.1.86 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (including) 6.6.27 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.8.6 (excluding)
cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*