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

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2023-52447— bpf: Defer the free of inner map when necessary

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

I. Basic Information for CVE-2023-52447

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: Defer the free of inner map when necessary
Source: NVD (National Vulnerability Database)
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: bpf: Defer the free of inner map when necessary When updating or deleting an inner map in map array or map htab, the map may still be accessed by non-sleepable program or sleepable program. However bpf_map_fd_put_ptr() decreases the ref-counter of the inner map directly through bpf_map_put(), if the ref-counter is the last one (which is true for most cases), the inner map will be freed by ops->map_free() in a kworker. But for now, most .map_free() callbacks don't use synchronize_rcu() or its variants to wait for the elapse of a RCU grace period, so after the invocation of ops->map_free completes, the bpf program which is accessing the inner map may incur use-after-free problem. Fix the free of inner map by invoking bpf_map_free_deferred() after both one RCU grace period and one tasks trace RCU grace period if the inner map has been removed from the outer map before. The deferment is accomplished by using call_rcu() or call_rcu_tasks_trace() when releasing the last ref-counter of bpf map. The newly-added rcu_head field in bpf_map shares the same storage space with work field to reduce the size of bpf_map.
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存在安全漏洞,该漏洞源于当更新或删除映射数组或映射htab中的内部映射时,该映射仍可能被不可睡眠程序或可睡眠程序访问。
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 bba1dc0b55ac462d24ed1228ad49800c238cd6d7 ~ 90c445799fd1dc214d7c6279c144e33a35e29ef2 -
LinuxLinux 5.9 -

II. Public POCs for CVE-2023-52447

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2023-52447

登录查看更多情报信息。

Same Patch Batch · Linux · 2024-02-22 · 17 CVEs total

CVE-2024-26592ksmbd: fix UAF issue in ksmbd_tcp_new_connection()
CVE-2024-26591bpf: Fix re-attachment branch in bpf_tracing_prog_attach
CVE-2023-52452bpf: Fix accesses to uninit stack slots
CVE-2023-52451powerpc/pseries/memhp: Fix access beyond end of drmem array
CVE-2023-52450perf/x86/intel/uncore: Fix NULL pointer dereference issue in upi_fill_topology()
CVE-2023-52449mtd: Fix gluebi NULL pointer dereference caused by ftl notifier
CVE-2023-52448gfs2: Fix kernel NULL pointer dereference in gfs2_rgrp_dump
CVE-2023-52446bpf: Fix a race condition between btf_put() and map_free()
CVE-2023-52445media: pvrusb2: fix use after free on context disconnection
CVE-2023-52444f2fs: fix to avoid dirent corruption
CVE-2024-26589bpf: Reject variable offset alu on PTR_TO_FLOW_KEYS
CVE-2024-26590erofs: fix inconsistent per-file compression format
CVE-2024-26588LoongArch: BPF: Prevent out-of-bounds memory access
CVE-2024-26586mlxsw: spectrum_acl_tcam: Fix stack corruption
CVE-2024-26587net: netdevsim: don't try to destroy PHC on VFs
CVE-2023-52443apparmor: avoid crash when parsed profile name is empty

IV. Related Vulnerabilities

V. Comments for CVE-2023-52447

No comments yet


Leave a comment