جزئیات آسیب‌پذیری

CVE-2024-47794

Linux Linux

bpf: Prevent tailcall infinite loop caused by freplace

CVSS 3.1
7.8بالا

شرح رسمی (انگلیسی)

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.

امتیازهای CVSS

امتیازنسخهمنبعبردار
7.8بالا 3.1 CVEProject cvelistV5 (CNA) (Linux) CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

محصولات آسیب‌پذیر

فروشندهمحصولنسخه‌هامنبع
Linux Linux 5.6 CVEProject cvelistV5 (CNA)
Linux Linux be8704ff07d2374bcc5c675526f95e70c6459683 ≤ v < 272f92998cbec9e12fea8ef28f48d6b1bc625a34 CVEProject cvelistV5 (CNA)
Linux Linux be8704ff07d2374bcc5c675526f95e70c6459683 ≤ v < f8ba0d22afa613b280fc40fcf6ae99f73c7b36e6 CVEProject cvelistV5 (CNA)
Linux Linux be8704ff07d2374bcc5c675526f95e70c6459683 ≤ v < 987aa730bad3e1ef66d9f30182294daa78f6387d CVEProject cvelistV5 (CNA)
Linux Linux be8704ff07d2374bcc5c675526f95e70c6459683 ≤ v < d6083f040d5d8f8d748462c77e90547097df936e CVEProject cvelistV5 (CNA)

منابع و راهنماها

۴
هشدار CVEهای بعدی این محصولمحصول را دنبال کنید تا آسیب‌پذیری‌های تازه را در تلگرام بگیرید.

اطلاعات

تاریخ انتشار
۱۴۰۳/۱۰/۲۲
آخرین به‌روزرسانی
۱۴۰۵/۰۸/۰۸
وضعیت
منتشرشده
صادرکننده (CNA)
Linux

پیش‌بینی بهره‌برداری (EPSS)

۰٫۲۷٪
احتمال بهره‌برداری در ۳۰ روز
۲۰٫۱٪
صدک (نسبت به همه‌ی CVEها)

ارزیابی SSVC (CISA)

قابل خودکارسازی
خیر
وضعیت بهره‌برداری
ندارد
اثر فنی
کامل

ضعف‌ها (CWE)

  • —