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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2024-47794— bpf: Prevent tailcall infinite loop caused by freplace

EPSS 0.00% · P0
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2024-47794

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
bpf: Prevent tailcall infinite loop caused by freplace
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: bpf: Prevent tailcall infinite loop caused by freplace There is a potential infinite loop issue that can occur when using a combination of tail calls and freplace. In an upcoming selftest, the attach target for entry_freplace of tailcall_freplace.c is subprog_tc of tc_bpf2bpf.c, while the tail call in entry_freplace leads to entry_tc. This results in an infinite loop: entry_tc -> subprog_tc -> entry_freplace --tailcall-> entry_tc. The problem arises because the tail_call_cnt in entry_freplace resets to zero each time entry_freplace is executed, causing the tail call mechanism to never terminate, eventually leading to a kernel panic. To fix this issue, the solution is twofold: 1. Prevent updating a program extended by an freplace program to a prog_array map. 2. Prevent extending a program that is already part of a prog_array map with an freplace program. This ensures that: * If a program or its subprogram has been extended by an freplace program, it can no longer be updated to a prog_array map. * If a program has been added to a prog_array map, neither it nor its subprograms can be extended by an freplace program. Moreover, an extension program should not be tailcalled. As such, return -EINVAL if the program has a type of BPF_PROG_TYPE_EXT when adding it to a prog_array map. Additionally, fix a minor code style issue by replacing eight spaces with a tab for proper formatting.
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存在安全漏洞,该漏洞源于BPF模块在使用尾调用和freplace组合时,可能导致无限循环,最终导致内核崩溃。
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 be8704ff07d2374bcc5c675526f95e70c6459683 ~ 987aa730bad3e1ef66d9f30182294daa78f6387d -
LinuxLinux 5.6 -

II. Public POCs for CVE-2024-47794

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2024-47794

登录查看更多情报信息。

Same Patch Batch · Linux · 2025-01-11 · 67 CVEs total

CVE-2024-57793virt: tdx-guest: Just leak decrypted memory on unrecoverable errors
CVE-2024-57878arm64: ptrace: fix partial SETREGSET for NT_ARM_FPMR
CVE-2024-57877arm64: ptrace: fix partial SETREGSET for NT_ARM_POE
CVE-2024-57876drm/dp_mst: Fix resetting msg rx state after topology removal
CVE-2024-57806btrfs: fix transaction atomicity bug when enabling simple quotas
CVE-2024-57805ASoC: SOF: Intel: hda-dai: Do not release the link DMA on STOP
CVE-2024-57804scsi: mpi3mr: Fix corrupt config pages PHY state is switched in sysfs
CVE-2024-57800ALSA: memalloc: prefer dma_mapping_error() over explicit address checking
CVE-2024-57799phy: rockchip: samsung-hdptx: Set drvdata before enabling runtime PM
CVE-2024-57798drm/dp_mst: Ensure mst_primary pointer is valid in drm_dp_mst_handle_up_req()
CVE-2024-57807scsi: megaraid_sas: Fix for a potential deadlock
CVE-2024-57792power: supply: gpio-charger: Fix set charge current limits
CVE-2024-57791net/smc: check return value of sock_recvmsg when draining clc data
CVE-2024-56788net: ethernet: oa_tc6: fix tx skb race condition between reference pointers
CVE-2024-56372net: tun: fix tun_napi_alloc_frags()
CVE-2024-56369drm/modes: Avoid divide by zero harder in drm_mode_vrefresh()
CVE-2024-56368ring-buffer: Fix overflow in __rb_map_vma
CVE-2024-55916Drivers: hv: util: Avoid accessing a ringbuffer not initialized yet
CVE-2024-55881KVM: x86: Play nice with protected guests in complete_hypercall_exit()
CVE-2024-54193accel/ivpu: Fix WARN in ivpu_ipc_send_receive_internal()

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

IV. Related Vulnerabilities

V. Comments for CVE-2024-47794

No comments yet


Leave a comment