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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2021-46981— nbd: Fix NULL pointer in flush_workqueue

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel 存在安全漏洞。目前尚无此漏洞的相关信息,请随时关注CNNVD或厂商公告。

AI Predicted 5.5 Difficulty: Easy EPSS 0.25% · P15

Possible ATT&CK Techniques 1 AI

T1053.003 · Cron

Affected Version Matrix 18

VendorProduct Version RangeStatus
Linux Linux e9e006f5fcf2bab59149cb38a48a4817c1b538b4< 1c4962df938891af9ab4775f5224ef8601764107 affected
e9e006f5fcf2bab59149cb38a48a4817c1b538b4< cde4b55cfb24522dcbba80bbdb0c082303e76c43 affected
e9e006f5fcf2bab59149cb38a48a4817c1b538b4< b31d237796fd618379ec8e0f4de3370b5e4aeee7 affected
e9e006f5fcf2bab59149cb38a48a4817c1b538b4< 54b78ba7e96e5fe1edb8054e375d31a6c0dc60dc affected
e9e006f5fcf2bab59149cb38a48a4817c1b538b4< 79ebe9110fa458d58f1fceb078e2068d7ad37390 affected
0b584bf573ae59021069c056c22d65d5721910cb affected
9f0f39c92e4f50189155dfb13bb5524372e40eba affected
92ec11cccb7fc14331e000ab2337f60aa433433e affected
… +10 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2021-46981

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
nbd: Fix NULL pointer in flush_workqueue
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: nbd: Fix NULL pointer in flush_workqueue Open /dev/nbdX first, the config_refs will be 1 and the pointers in nbd_device are still null. Disconnect /dev/nbdX, then reference a null recv_workq. The protection by config_refs in nbd_genl_disconnect is useless. [ 656.366194] BUG: kernel NULL pointer dereference, address: 0000000000000020 [ 656.368943] #PF: supervisor write access in kernel mode [ 656.369844] #PF: error_code(0x0002) - not-present page [ 656.370717] PGD 10cc87067 P4D 10cc87067 PUD 1074b4067 PMD 0 [ 656.371693] Oops: 0002 [#1] SMP [ 656.372242] CPU: 5 PID: 7977 Comm: nbd-client Not tainted 5.11.0-rc5-00040-g76c057c84d28 #1 [ 656.373661] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS ?-20190727_073836-buildvm-ppc64le-16.ppc.fedoraproject.org-3.fc31 04/01/2014 [ 656.375904] RIP: 0010:mutex_lock+0x29/0x60 [ 656.376627] Code: 00 0f 1f 44 00 00 55 48 89 fd 48 83 05 6f d7 fe 08 01 e8 7a c3 ff ff 48 83 05 6a d7 fe 08 01 31 c0 65 48 8b 14 25 00 6d 01 00 <f0> 48 0f b1 55 d [ 656.378934] RSP: 0018:ffffc900005eb9b0 EFLAGS: 00010246 [ 656.379350] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 0000000000000000 [ 656.379915] RDX: ffff888104cf2600 RSI: ffffffffaae8f452 RDI: 0000000000000020 [ 656.380473] RBP: 0000000000000020 R08: 0000000000000000 R09: ffff88813bd6b318 [ 656.381039] R10: 00000000000000c7 R11: fefefefefefefeff R12: ffff888102710b40 [ 656.381599] R13: ffffc900005eb9e0 R14: ffffffffb2930680 R15: ffff88810770ef00 [ 656.382166] FS: 00007fdf117ebb40(0000) GS:ffff88813bd40000(0000) knlGS:0000000000000000 [ 656.382806] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 656.383261] CR2: 0000000000000020 CR3: 0000000100c84000 CR4: 00000000000006e0 [ 656.383819] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 656.384370] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 656.384927] Call Trace: [ 656.385111] flush_workqueue+0x92/0x6c0 [ 656.385395] nbd_disconnect_and_put+0x81/0xd0 [ 656.385716] nbd_genl_disconnect+0x125/0x2a0 [ 656.386034] genl_family_rcv_msg_doit.isra.0+0x102/0x1b0 [ 656.386422] genl_rcv_msg+0xfc/0x2b0 [ 656.386685] ? nbd_ioctl+0x490/0x490 [ 656.386954] ? genl_family_rcv_msg_doit.isra.0+0x1b0/0x1b0 [ 656.387354] netlink_rcv_skb+0x62/0x180 [ 656.387638] genl_rcv+0x34/0x60 [ 656.387874] netlink_unicast+0x26d/0x590 [ 656.388162] netlink_sendmsg+0x398/0x6c0 [ 656.388451] ? netlink_rcv_skb+0x180/0x180 [ 656.388750] ____sys_sendmsg+0x1da/0x320 [ 656.389038] ? ____sys_recvmsg+0x130/0x220 [ 656.389334] ___sys_sendmsg+0x8e/0xf0 [ 656.389605] ? ___sys_recvmsg+0xa2/0xf0 [ 656.389889] ? handle_mm_fault+0x1671/0x21d0 [ 656.390201] __sys_sendmsg+0x6d/0xe0 [ 656.390464] __x64_sys_sendmsg+0x23/0x30 [ 656.390751] do_syscall_64+0x45/0x70 [ 656.391017] entry_SYSCALL_64_after_hwframe+0x44/0xa9 To fix it, just add if (nbd->recv_workq) to nbd_disconnect_and_put().
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 存在安全漏洞。目前尚无此漏洞的相关信息,请随时关注CNNVD或厂商公告。
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

Vendor Product Affected Versions CPE Subscribe
Linux Linux e9e006f5fcf2bab59149cb38a48a4817c1b538b4 ~ 1c4962df938891af9ab4775f5224ef8601764107 -
Linux Linux 5.4 -

II. Public POCs for CVE-2021-46981

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2021-46981

请登录查看更多情报信息。

Other References for CVE-2021-46981 (5)

Same Patch Batch · Linux · 2024-02-28 · 86 CVEs total

CVE-2021-47013 9.8 CRITICAL net:emac/emac-mac: Fix a use after free in emac_mac_tx_buf_send
CVE-2021-46999 9.8 CRITICAL sctp: do asoc update earlier in sctp_sf_do_dupcook_a
CVE-2021-47036 9.8 CRITICAL udp: skip L4 aggregation for UDP tunnel packets
CVE-2021-47017 8.8 HIGH ath10k: Fix a use after free in ath10k_htc_send_bundle
CVE-2021-47035 8.8 HIGH iommu/vt-d: Remove WO permissions on second-level paging entries
CVE-2021-47049 8.4 HIGH Drivers: hv: vmbus: Use after free in __vmbus_open()
CVE-2021-47014 7.8 HIGH net/sched: act_ct: fix wild memory access when clearing fragments
CVE-2020-36787 7.8 HIGH media: aspeed: fix clock handling logic
CVE-2020-36785 7.8 HIGH media: atomisp: Fix use after free in atomisp_alloc_css_stat_bufs()
CVE-2021-46984 7.8 HIGH kyber: fix out of bounds access when preempted
CVE-2021-46998 7.8 HIGH ethernet:enic: Fix a use after free bug in enic_hard_start_xmit
CVE-2021-47048 7.8 HIGH spi: spi-zynqmp-gqspi: fix use-after-free in zynqmp_qspi_exec_op
CVE-2021-47040 7.8 HIGH io_uring: fix overflows checks in provide buffers
CVE-2021-46992 7.8 HIGH netfilter: nftables: avoid overflows in nft_hash_buckets()
CVE-2021-46977 7.8 HIGH KVM: VMX: Disable preemption when probing user return MSRs
CVE-2021-47012 7.8 HIGH RDMA/siw: Fix a use after free in siw_alloc_mr
CVE-2021-47011 7.8 HIGH mm: memcontrol: slab: fix obtain a reference to a freeing memcg
CVE-2021-46993 7.8 HIGH sched: Fix out-of-bound access in uclamp
CVE-2021-47001 7.5 HIGH xprtrdma: Fix cwnd update ordering
CVE-2021-46983 7.5 HIGH nvmet-rdma: Fix NULL deref when SEND is completed with error

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

IV. Related Vulnerabilities

V. Comments for CVE-2021-46981

No comments yet


Leave a comment