目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1325

100%

CVE-2021-46987— Linux kernel 安全漏洞

AI 预测 4.7 利用难度: 中等 EPSS 0.18% · P8

影响版本矩阵 12

厂商产品版本范围状态
LinuxLinuxc53e9653605dbf708f5be02902de51831be4b009< f8fbbd06fab9b75dcd68d850fe318ac3bc128974affected
c53e9653605dbf708f5be02902de51831be4b009< d5347827d0b4b2250cbce6eccaa1c81dc78d8651affected
c53e9653605dbf708f5be02902de51831be4b009< 96157707c0420e3d3edfe046f1cc797fee117adeaffected
c53e9653605dbf708f5be02902de51831be4b009< f9baa501b4fd6962257853d46ddffbc21f27e344affected
36af2de520cca7c37974cc4944b47850f6c460eeaffected
5.4.141< 5.5affected
5.9affected
< 5.9unaffected
… +4 条更多
获取后续新漏洞提醒登录后订阅

一、 漏洞 CVE-2021-46987 基础信息

漏洞信息

对漏洞内容有疑问?看看神龙的深度分析是否有帮助!
查看神龙十问 ↗

尽管我们使用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。神龙努力确保数据的准确性,但请您根据实际情况进行核实和判断。

Vulnerability Title
btrfs: fix deadlock when cloning inline extents and using qgroups
来源: 美国国家漏洞数据库 NVD
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: btrfs: fix deadlock when cloning inline extents and using qgroups There are a few exceptional cases where cloning an inline extent needs to copy the inline extent data into a page of the destination inode. When this happens, we end up starting a transaction while having a dirty page for the destination inode and while having the range locked in the destination's inode iotree too. Because when reserving metadata space for a transaction we may need to flush existing delalloc in case there is not enough free space, we have a mechanism in place to prevent a deadlock, which was introduced in commit 3d45f221ce627d ("btrfs: fix deadlock when cloning inline extent and low on free metadata space"). However when using qgroups, a transaction also reserves metadata qgroup space, which can also result in flushing delalloc in case there is not enough available space at the moment. When this happens we deadlock, since flushing delalloc requires locking the file range in the inode's iotree and the range was already locked at the very beginning of the clone operation, before attempting to start the transaction. When this issue happens, stack traces like the following are reported: [72747.556262] task:kworker/u81:9 state:D stack: 0 pid: 225 ppid: 2 flags:0x00004000 [72747.556268] Workqueue: writeback wb_workfn (flush-btrfs-1142) [72747.556271] Call Trace: [72747.556273] __schedule+0x296/0x760 [72747.556277] schedule+0x3c/0xa0 [72747.556279] io_schedule+0x12/0x40 [72747.556284] __lock_page+0x13c/0x280 [72747.556287] ? generic_file_readonly_mmap+0x70/0x70 [72747.556325] extent_write_cache_pages+0x22a/0x440 [btrfs] [72747.556331] ? __set_page_dirty_nobuffers+0xe7/0x160 [72747.556358] ? set_extent_buffer_dirty+0x5e/0x80 [btrfs] [72747.556362] ? update_group_capacity+0x25/0x210 [72747.556366] ? cpumask_next_and+0x1a/0x20 [72747.556391] extent_writepages+0x44/0xa0 [btrfs] [72747.556394] do_writepages+0x41/0xd0 [72747.556398] __writeback_single_inode+0x39/0x2a0 [72747.556403] writeback_sb_inodes+0x1ea/0x440 [72747.556407] __writeback_inodes_wb+0x5f/0xc0 [72747.556410] wb_writeback+0x235/0x2b0 [72747.556414] ? get_nr_inodes+0x35/0x50 [72747.556417] wb_workfn+0x354/0x490 [72747.556420] ? newidle_balance+0x2c5/0x3e0 [72747.556424] process_one_work+0x1aa/0x340 [72747.556426] worker_thread+0x30/0x390 [72747.556429] ? create_worker+0x1a0/0x1a0 [72747.556432] kthread+0x116/0x130 [72747.556435] ? kthread_park+0x80/0x80 [72747.556438] ret_from_fork+0x1f/0x30 [72747.566958] Workqueue: btrfs-flush_delalloc btrfs_work_helper [btrfs] [72747.566961] Call Trace: [72747.566964] __schedule+0x296/0x760 [72747.566968] ? finish_wait+0x80/0x80 [72747.566970] schedule+0x3c/0xa0 [72747.566995] wait_extent_bit.constprop.68+0x13b/0x1c0 [btrfs] [72747.566999] ? finish_wait+0x80/0x80 [72747.567024] lock_extent_bits+0x37/0x90 [btrfs] [72747.567047] btrfs_invalidatepage+0x299/0x2c0 [btrfs] [72747.567051] ? find_get_pages_range_tag+0x2cd/0x380 [72747.567076] __extent_writepage+0x203/0x320 [btrfs] [72747.567102] extent_write_cache_pages+0x2bb/0x440 [btrfs] [72747.567106] ? update_load_avg+0x7e/0x5f0 [72747.567109] ? enqueue_entity+0xf4/0x6f0 [72747.567134] extent_writepages+0x44/0xa0 [btrfs] [72747.567137] ? enqueue_task_fair+0x93/0x6f0 [72747.567140] do_writepages+0x41/0xd0 [72747.567144] __filemap_fdatawrite_range+0xc7/0x100 [72747.567167] btrfs_run_delalloc_work+0x17/0x40 [btrfs] [72747.567195] btrfs_work_helper+0xc2/0x300 [btrfs] [72747.567200] process_one_work+0x1aa/0x340 [72747.567202] worker_thread+0x30/0x390 [72747.567205] ? create_worker+0x1a0/0x1a0 [72747.567208] kthread+0x116/0x130 [72747.567211] ? kthread_park+0x80/0x80 [72747.567214] ret_from_fork+0x1f/0x30 [72747.569686] task:fsstress state:D stack: ---truncated---
来源: 美国国家漏洞数据库 NVD
CVSS Information
N/A
来源: 美国国家漏洞数据库 NVD
Vulnerability Type
N/A
来源: 美国国家漏洞数据库 NVD
Vulnerability Title
Linux kernel 安全漏洞
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞,该漏洞源于在使用 qgroup 时会出现死锁情况。
来源: 中国国家信息安全漏洞库 CNNVD
CVSS Information
N/A
来源: 中国国家信息安全漏洞库 CNNVD
Vulnerability Type
N/A
来源: 中国国家信息安全漏洞库 CNNVD

受影响产品

厂商产品影响版本CPE订阅
LinuxLinux c53e9653605dbf708f5be02902de51831be4b009 ~ f8fbbd06fab9b75dcd68d850fe318ac3bc128974 -
LinuxLinux 5.9 -

二、漏洞 CVE-2021-46987 的公开POC

#POC 描述源链接神龙链接
AI 生成 POC高级

未找到公开 POC。

登录以生成 AI POC

三、漏洞 CVE-2021-46987 的情报信息

登录查看更多情报信息。

CVE-2021-46987 其他参考 (3)

同批安全公告 · Linux · 2024-02-28 · 共 86 条

CVE-2021-46997Linux kernel 安全漏洞
CVE-2021-47001Linux kernel 安全漏洞
CVE-2021-46998Linux kernel 安全漏洞
CVE-2021-47000Linux kernel 安全漏洞
CVE-2021-47003Linux kernel 安全漏洞
CVE-2021-47005Linux kernel 安全漏洞
CVE-2021-47007Linux kernel 安全漏洞
CVE-2021-47006Linux kernel 安全漏洞
CVE-2021-47009Linux kernel 安全漏洞
CVE-2021-47004Linux kernel 安全漏洞
CVE-2021-46999Linux kernel 安全漏洞
CVE-2021-46995Linux kernel 安全漏洞
CVE-2021-46996Linux kernel 安全漏洞
CVE-2021-46994Linux kernel 安全漏洞
CVE-2021-46992Linux kernel 安全漏洞
CVE-2021-46993Linux kernel 安全漏洞
CVE-2021-46990Linux kernel 安全漏洞
CVE-2021-46991Linux kernel 安全漏洞
CVE-2021-46989Linux kernel 安全漏洞
CVE-2021-46988Linux kernel 安全漏洞

显示前 20 条,共 86 条。 查看全部 &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2021-46987

暂无评论


发表评论