CVE-2023-52566

nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()

State
Published
Severity
5.5 Medium
Published
Mar 2, 2024
Updated
May 11, 2026
Reserved
Mar 2, 2024

Read the record on cve.org

Description

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

nilfs2: fix potential use after free in nilfs_gccache_submit_read_data()

In nilfs_gccache_submit_read_data(), brelse(bh) is called to drop the reference count of bh when the call to nilfs_dat_translate() fails. If the reference count hits 0 and its owner page gets unlocked, bh may be freed. However, bh->b_page is dereferenced to put the page after that, which may result in a use-after-free bug. This patch moves the release operation after unlocking and putting the page.

NOTE: The function in question is only called in GC, and in combination with current userland tools, address translation using DAT does not occur in that function, so the code path that causes this issue will not be executed. However, it is possible to run that code path by intentionally modifying the userland GC library or by calling the GC ioctl directly.

[konishi.ryusuke@gmail.com: NOTE added to the commit log]

Scores

CVSSScoreVectorSource
3.15.5 MediumCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:HCISA-ADP

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before fb1084e63ee56958b0a56e17a50a4fd86445b9c1Affected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before bb61224f6abc8e71bfdf06d7c984e23460875f5bAffected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 193b5a1c6c67c36b430989dc063fe7ea4e200a33Affected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 7130a87ca32396eb9bf48b71a2d42259ae44c6c7Affected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 3936e8714907cd55e37c7cc50e50229e4a9042e8Affected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 980663f1d189eedafd18d80053d9cf3e2ceb5c8cAffected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 28df4646ad8b433340772edc90ca709cdefc53e2Affected
  • a3d93f709e893187d301aa5458b2248db9f22bd1 to before 7ee29facd8a9c5a26079148e36bcf07141b3a6bcAffected
LinuxLinux
  • 2.6.30Affected
  • before 2.6.30Not affected
  • 4.14.327 through 4.14.*Not affected
  • 4.19.296 through 4.19.*Not affected
  • 5.4.258 through 5.4.*Not affected
  • 5.10.198 through 5.10.*Not affected
  • 5.15.134 through 5.15.*Not affected
  • 6.1.56 through 6.1.*Not affected
  • 6.5.6 through 6.5.*Not affected
  • 6.6 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.