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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2021-47288— media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf()

EPSS 0.01% · P1
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2021-47288

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
media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf()
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: media: ngene: Fix out-of-bounds bug in ngene_command_config_free_buf() Fix an 11-year old bug in ngene_command_config_free_buf() while addressing the following warnings caught with -Warray-bounds: arch/alpha/include/asm/string.h:22:16: warning: '__builtin_memcpy' offset [12, 16] from the object at 'com' is out of the bounds of referenced subobject 'config' with type 'unsigned char' at offset 10 [-Warray-bounds] arch/x86/include/asm/string_32.h:182:25: warning: '__builtin_memcpy' offset [12, 16] from the object at 'com' is out of the bounds of referenced subobject 'config' with type 'unsigned char' at offset 10 [-Warray-bounds] The problem is that the original code is trying to copy 6 bytes of data into a one-byte size member _config_ of the wrong structue FW_CONFIGURE_BUFFERS, in a single call to memcpy(). This causes a legitimate compiler warning because memcpy() overruns the length of &com.cmd.ConfigureBuffers.config. It seems that the right structure is FW_CONFIGURE_FREE_BUFFERS, instead, because it contains 6 more members apart from the header _hdr_. Also, the name of the function ngene_command_config_free_buf() suggests that the actual intention is to ConfigureFreeBuffers, instead of ConfigureBuffers (which takes place in the function ngene_command_config_buf(), above). Fix this by enclosing those 6 members of struct FW_CONFIGURE_FREE_BUFFERS into new struct config, and use &com.cmd.ConfigureFreeBuffers.config as the destination address, instead of &com.cmd.ConfigureBuffers.config, when calling memcpy(). This also helps with the ongoing efforts to globally enable -Warray-bounds and get us closer to being able to tighten the FORTIFY_SOURCE routines on memcpy().
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于ngene_command_config_free_buf函数中存在越界错误。
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 dae52d009fc950b5c209260d50fcc000f5becd3c ~ 4487b968e5eacd02c493303dc2b61150bb7fe4b2 -
LinuxLinux 2.6.34 -

II. Public POCs for CVE-2021-47288

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2021-47288

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-05-21 · 361 CVEs total

CVE-2021-47432lib/generic-radix-tree.c: Don't overflow in peek()
CVE-2023-52760gfs2: Fix slab-use-after-free in gfs2_qd_dealloc
CVE-2023-52757smb: client: fix potential deadlock when releasing mids
CVE-2023-52755ksmbd: fix slab out of bounds write in smb_inherit_dacl()
CVE-2023-52754media: imon: fix access to invalid resource for the second interface
CVE-2023-52753drm/amd/display: Avoid NULL dereference of timing generator
CVE-2023-52752smb: client: fix use-after-free bug in cifs_debug_data_proc_show()
CVE-2023-52751smb: client: fix use-after-free in smb2_query_info_compound()
CVE-2023-52750arm64: Restrict CPU_BIG_ENDIAN to GNU as or LLVM IAS 15.x or newer
CVE-2023-52749spi: Fix null dereference on suspend
CVE-2023-52748f2fs: avoid format-overflow warning
CVE-2022-48710drm/radeon: fix a possible null pointer dereference
CVE-2023-52742net: USB: Fix wrong-direction WARNING in plusb.c
CVE-2023-52738drm/amdgpu/fence: Fix oops due to non-matching drm_sched init/fini
CVE-2023-52740powerpc/64s/interrupt: Fix interrupt exit race with security mitigation switch
CVE-2023-52739Fix page corruption caused by racy check in __free_pages
CVE-2023-52741cifs: Fix use-after-free in rdata->read_into_pages()
CVE-2023-52743ice: Do not use WQ_MEM_RECLAIM flag for workqueue
CVE-2023-52746xfrm/compat: prevent potential spectre v1 gadget in xfrm_xlate32_attr()
CVE-2023-52747IB/hfi1: Restore allocated resources on failed copyout

Showing top 20 of 361 CVEs. View all on vendor page → →

IV. Related Vulnerabilities

V. Comments for CVE-2021-47288

No comments yet


Leave a comment