Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2023-52897— btrfs: qgroup: do not warn on record without old_roots populated

AI Predicted 5.5 Difficulty: Trivial EPSS 0.20% · P10

Possible ATT&CK Techniques 2AI

T1496 · Resource Hijacking T1562

Affected Version Matrix 6

VendorProductVersion RangeStatus
LinuxLinuxe15e9f43c7ca25603fcf4c20d44ec777726f1034< bb2c2e62539f2b63c5e0beb51501d328260c7595affected
e15e9f43c7ca25603fcf4c20d44ec777726f1034< 75181406b4eafacc531ff2ee5fb032bd93317e2baffected
6.1affected
< 6.1unaffected
6.1.8≤ 6.1.*unaffected
6.2≤ *unaffected
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2023-52897

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
btrfs: qgroup: do not warn on record without old_roots populated
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: btrfs: qgroup: do not warn on record without old_roots populated [BUG] There are some reports from the mailing list that since v6.1 kernel, the WARN_ON() inside btrfs_qgroup_account_extent() gets triggered during rescan: WARNING: CPU: 3 PID: 6424 at fs/btrfs/qgroup.c:2756 btrfs_qgroup_account_extents+0x1ae/0x260 [btrfs] CPU: 3 PID: 6424 Comm: snapperd Tainted: P OE 6.1.2-1-default #1 openSUSE Tumbleweed 05c7a1b1b61d5627475528f71f50444637b5aad7 RIP: 0010:btrfs_qgroup_account_extents+0x1ae/0x260 [btrfs] Call Trace: <TASK> btrfs_commit_transaction+0x30c/0xb40 [btrfs c39c9c546c241c593f03bd6d5f39ea1b676250f6] ? start_transaction+0xc3/0x5b0 [btrfs c39c9c546c241c593f03bd6d5f39ea1b676250f6] btrfs_qgroup_rescan+0x42/0xc0 [btrfs c39c9c546c241c593f03bd6d5f39ea1b676250f6] btrfs_ioctl+0x1ab9/0x25c0 [btrfs c39c9c546c241c593f03bd6d5f39ea1b676250f6] ? __rseq_handle_notify_resume+0xa9/0x4a0 ? mntput_no_expire+0x4a/0x240 ? __seccomp_filter+0x319/0x4d0 __x64_sys_ioctl+0x90/0xd0 do_syscall_64+0x5b/0x80 ? syscall_exit_to_user_mode+0x17/0x40 ? do_syscall_64+0x67/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7fd9b790d9bf </TASK> [CAUSE] Since commit e15e9f43c7ca ("btrfs: introduce BTRFS_QGROUP_RUNTIME_FLAG_NO_ACCOUNTING to skip qgroup accounting"), if our qgroup is already in inconsistent state, we will no longer do the time-consuming backref walk. This can leave some qgroup records without a valid old_roots ulist. Normally this is fine, as btrfs_qgroup_account_extents() would also skip those records if we have NO_ACCOUNTING flag set. But there is a small window, if we have NO_ACCOUNTING flag set, and inserted some qgroup_record without a old_roots ulist, but then the user triggered a qgroup rescan. During btrfs_qgroup_rescan(), we firstly clear NO_ACCOUNTING flag, then commit current transaction. And since we have a qgroup_record with old_roots = NULL, we trigger the WARN_ON() during btrfs_qgroup_account_extents(). [FIX] Unfortunately due to the introduction of NO_ACCOUNTING flag, the assumption that every qgroup_record would have its old_roots populated is no longer correct. Fix the false alerts and drop the WARN_ON().
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于 btrfs 文件系统在qgroup重扫时不应该警告记录没有old_roots。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
LinuxLinux e15e9f43c7ca25603fcf4c20d44ec777726f1034 ~ bb2c2e62539f2b63c5e0beb51501d328260c7595 -
LinuxLinux 6.1 -

II. Public POCs for CVE-2023-52897

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-52897

登录查看更多情报信息。

Other References for CVE-2023-52897 (2)

Same Patch Batch · Linux · 2024-08-21 · 68 CVEs total

CVE-2023-529108.8 HIGHiommu/iova: Fix alloc iova overflows issue
CVE-2024-438818.8 HIGHwifi: ath12k: change DMA direction while mapping reinjected packets
CVE-2022-488718.8 HIGHtty: serial: qcom-geni-serial: fix slab-out-of-bounds on RX FIFO buffer
CVE-2024-438788.1 HIGHxfrm: Fix input error path memory access
CVE-2022-488837.8 HIGHnet/mlx5e: IPoIB, Block PKEY interfaces with less rx queues than parent
CVE-2024-438827.8 HIGHexec: Fix ToCToU between perm check and set-uid/gid usage
CVE-2023-529137.8 HIGHdrm/i915: Fix potential context UAFs
CVE-2022-488927.8 HIGHsched/core: Fix use-after-free bug in dup_user_cpus_ptr()
CVE-2024-438777.8 HIGHmedia: pci: ivtv: Add check for DMA map result
CVE-2024-438807.8 HIGHmlxsw: spectrum_acl_erp: Fix object nesting warning
CVE-2022-488997.8 HIGHdrm/virtio: Fix GEM handle creation UAF
CVE-2022-488727.8 HIGHmisc: fastrpc: Fix use-after-free race condition for maps
CVE-2022-488737.8 HIGHmisc: fastrpc: Don't remove map on creater_process and device_release
CVE-2022-488747.8 HIGHmisc: fastrpc: Fix use-after-free and race in fastrpc_map_find
CVE-2023-529037.8 HIGHio_uring: lock overflowing for IOPOLL
CVE-2022-488877.8 HIGHdrm/vmwgfx: Remove rcu locks from user resources
CVE-2022-488787.8 HIGHBluetooth: hci_qca: Fix driver shutdown on closed serdev
CVE-2023-529077.8 HIGHnfc: pn533: Wait for out_urb's completion in pn533_usb_send_frame()
CVE-2023-529097.5 HIGHnfsd: fix handling of cached open files in nfsd4_open codepath
CVE-2024-438727.5 HIGHRDMA/hns: Fix soft lockup under heavy CEQE load

Showing top 20 of 68 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2023-52897

No comments yet


Leave a comment