CVE-2023-52566
Severity CVSS v4.0:
Pending analysis
Type:
CWE-416
Use After Free
Publication date:
02/03/2024
Last modified:
08/04/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()<br />
<br />
In nilfs_gccache_submit_read_data(), brelse(bh) is called to drop the<br />
reference count of bh when the call to nilfs_dat_translate() fails. If<br />
the reference count hits 0 and its owner page gets unlocked, bh may be<br />
freed. However, bh->b_page is dereferenced to put the page after that,<br />
which may result in a use-after-free bug. This patch moves the release<br />
operation after unlocking and putting the page.<br />
<br />
NOTE: The function in question is only called in GC, and in combination<br />
with current userland tools, address translation using DAT does not occur<br />
in that function, so the code path that causes this issue will not be<br />
executed. However, it is possible to run that code path by intentionally<br />
modifying the userland GC library or by calling the GC ioctl directly.<br />
<br />
[konishi.ryusuke@gmail.com: NOTE added to the commit log]
Impact
Base Score 3.x
5.50
Severity 3.x
MEDIUM
Vulnerable products and versions
CPE | From | Up to |
---|---|---|
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 2.6.30 (including) | 4.14.327 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.15 (including) | 4.19.296 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 4.20 (including) | 5.4.258 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.5 (including) | 5.10.198 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.11 (including) | 5.15.134 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 5.16 (including) | 6.1.56 (excluding) |
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | 6.2 (including) | 6.5.6 (excluding) |
cpe:2.3:o:linux:linux_kernel:6.6:rc1:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.6:rc2:*:*:*:*:*:* | ||
cpe:2.3:o:linux:linux_kernel:6.6:rc3:*:*:*:*:*:* |
To consult the complete list of CPE names with products and versions, see this page
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/193b5a1c6c67c36b430989dc063fe7ea4e200a33
- https://git.kernel.org/stable/c/28df4646ad8b433340772edc90ca709cdefc53e2
- https://git.kernel.org/stable/c/3936e8714907cd55e37c7cc50e50229e4a9042e8
- https://git.kernel.org/stable/c/7130a87ca32396eb9bf48b71a2d42259ae44c6c7
- https://git.kernel.org/stable/c/7ee29facd8a9c5a26079148e36bcf07141b3a6bc
- https://git.kernel.org/stable/c/980663f1d189eedafd18d80053d9cf3e2ceb5c8c
- https://git.kernel.org/stable/c/bb61224f6abc8e71bfdf06d7c984e23460875f5b
- https://git.kernel.org/stable/c/fb1084e63ee56958b0a56e17a50a4fd86445b9c1
- https://git.kernel.org/stable/c/193b5a1c6c67c36b430989dc063fe7ea4e200a33
- https://git.kernel.org/stable/c/28df4646ad8b433340772edc90ca709cdefc53e2
- https://git.kernel.org/stable/c/3936e8714907cd55e37c7cc50e50229e4a9042e8
- https://git.kernel.org/stable/c/7130a87ca32396eb9bf48b71a2d42259ae44c6c7
- https://git.kernel.org/stable/c/7ee29facd8a9c5a26079148e36bcf07141b3a6bc
- https://git.kernel.org/stable/c/980663f1d189eedafd18d80053d9cf3e2ceb5c8c
- https://git.kernel.org/stable/c/bb61224f6abc8e71bfdf06d7c984e23460875f5b
- https://git.kernel.org/stable/c/fb1084e63ee56958b0a56e17a50a4fd86445b9c1