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

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2024-46847— mm: vmalloc: ensure vmap_block is initialised before adding to queue

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存在安全漏洞,该漏洞源于在添加vmap_block到队列前,未确保其已初始化。

CVSS 7.8 · High EPSS 0.23% · P13

Possible ATT&CK Techniques 1 AI

T1059 · Command and Scripting Interpreter

Affected Version Matrix 11

VendorProduct Version RangeStatus
Linux Linux 88e0ad40d08a73a74c597e69f4cd2d1fba3838b5< 1b2770e27d6d952f491bb362b657e5b2713c3efd affected
8c61291fd8500e3b35c7ec0c781b273d8cc96cde< 6cf74e0e5e3ab5d5c9defb4c73dad54d52224671 affected
8c61291fd8500e3b35c7ec0c781b273d8cc96cde< 3e3de7947c751509027d26b679ecd243bc9db255 affected
9983b81579be3403f5cc44b11f66c6c8bea6547f affected
6.6.37< 6.6.51 affected
6.9.8< 6.10 affected
6.10 affected
< 6.10 unaffected
… +3 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2024-46847

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
mm: vmalloc: ensure vmap_block is initialised before adding to queue
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: mm: vmalloc: ensure vmap_block is initialised before adding to queue Commit 8c61291fd850 ("mm: fix incorrect vbq reference in purge_fragmented_block") extended the 'vmap_block' structure to contain a 'cpu' field which is set at allocation time to the id of the initialising CPU. When a new 'vmap_block' is being instantiated by new_vmap_block(), the partially initialised structure is added to the local 'vmap_block_queue' xarray before the 'cpu' field has been initialised. If another CPU is concurrently walking the xarray (e.g. via vm_unmap_aliases()), then it may perform an out-of-bounds access to the remote queue thanks to an uninitialised index. This has been observed as UBSAN errors in Android: | Internal error: UBSAN: array index out of bounds: 00000000f2005512 [#1] PREEMPT SMP | | Call trace: | purge_fragmented_block+0x204/0x21c | _vm_unmap_aliases+0x170/0x378 | vm_unmap_aliases+0x1c/0x28 | change_memory_common+0x1dc/0x26c | set_memory_ro+0x18/0x24 | module_enable_ro+0x98/0x238 | do_init_module+0x1b0/0x310 Move the initialisation of 'vb->cpu' in new_vmap_block() ahead of the addition to the xarray.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
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存在安全漏洞,该漏洞源于在添加vmap_block到队列前,未确保其已初始化。
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 88e0ad40d08a73a74c597e69f4cd2d1fba3838b5 ~ 1b2770e27d6d952f491bb362b657e5b2713c3efd -
Linux Linux 6.10 -

II. Public POCs for CVE-2024-46847

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

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-46847

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

Other References for CVE-2024-46847 (3)

Same Patch Batch · Linux · 2024-09-27 · 66 CVEs total

CVE-2024-46865 9.8 CRITICAL fou: fix initialization of grc
CVE-2024-46823 8.4 HIGH kunit/overflow: Fix UB in overflow_allocation_test
CVE-2024-46831 8.4 HIGH net: microchip: vcap: Fix use-after-free error in kunit test
CVE-2024-46858 8.1 HIGH mptcp: pm: Fix uaf in __timer_delete_sync
CVE-2024-46862 8.0 HIGH ASoC: Intel: soc-acpi-intel-mtl-match: add missing empty item
CVE-2024-46866 7.8 HIGH drm/xe/client: add missing bo locking in show_meminfo()
CVE-2024-46812 7.8 HIGH drm/amd/display: Skip inactive planes within ModeSupportAndSystemConfiguration
CVE-2024-46813 7.8 HIGH drm/amd/display: Check link_index before accessing dc->links[]
CVE-2024-46816 7.8 HIGH drm/amd/display: Stop amdgpu_dm initialize when link nums greater than max_links
CVE-2024-46818 7.8 HIGH drm/amd/display: Check gpio_id before used as array index
CVE-2024-46830 7.8 HIGH KVM: x86: Acquire kvm->srcu when handling KVM_SET_VCPU_EVENTS
CVE-2024-46834 7.8 HIGH ethtool: fail closed if we can't get max channel used in indirection tables
CVE-2024-46842 7.8 HIGH scsi: lpfc: Handle mailbox timeouts in lpfc_get_sfp_info
CVE-2024-46845 7.8 HIGH tracing/timerlat: Only clear timer if a kthread exists
CVE-2024-46850 7.8 HIGH drm/amd/display: Avoid race between dcn35_set_drr() and dc_state_destruct()
CVE-2024-46852 7.8 HIGH dma-buf: heaps: Fix off-by-one in CMA heap fault handler
CVE-2024-46859 7.8 HIGH platform/x86: panasonic-laptop: Fix SINF array out of bounds accesses
CVE-2024-46803 7.8 HIGH drm/amdkfd: Check debug trap enable before write dbg_ev_file
CVE-2024-46855 7.5 HIGH netfilter: nft_socket: fix sk refcount leaks
CVE-2024-46817 7.4 HIGH drm/amd/display: Stop amdgpu_dm initialize when stream nums greater than 6

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

IV. Related Vulnerabilities

V. Comments for CVE-2024-46847

No comments yet


Leave a comment