CVE-2023-52835

perf/core: Bail out early if the request AUX area is out of bound

HIGH
7.8
CVSS Score
Published: May 21, 2024 at 03:31 PM UTC
Updated: June 17, 2026 at 06:43 AM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
HIGH7.8
Exploit prediction
EPSS 0.3%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: perf/core: Bail out early if the request AUX area is out of bound When perf-record with a large AUX area, e.g 4GB, it fails with: #perf record -C 0 -m ,4G -e arm_spe_0// -- sleep 1 failed to mmap with 12 (Cannot allocate memory) and it reveals a WARNING with __alloc_pages(): ------------[ cut here ]------------ WARNING: CPU: 44 PID: 17573 at mm/page_alloc.c:5568 __alloc_pages+0x1ec/0x248 Call trace: __alloc_pages+0x1ec/0x248 __kmalloc_large_node+0xc0/0x1f8 __kmalloc_node+0x134/0x1e8 rb_alloc_aux+0xe0/0x298 perf_mmap+0x440/0x660 mmap_region+0x308/0x8a8 do_mmap+0x3c0/0x528 vm_mmap_pgoff+0xf4/0x1b8 ksys_mmap_pgoff+0x18c/0x218 __arm64_sys_mmap+0x38/0x58 invoke_syscall+0x50/0x128 el0_svc_common.constprop.0+0x58/0x188 do_el0_svc+0x34/0x50 el0_svc+0x34/0x108 el0t_64_sync_handler+0xb8/0xc0 el0t_64_sync+0x1a4/0x1a8 'rb->aux_pages' allocated by kcalloc() is a pointer array which is used to maintains AUX trace pages. The allocated page for this array is physically contiguous (and virtually contiguous) with an order of 0..MAX_ORDER. If the size of pointer array crosses the limitation set by MAX_ORDER, it reveals a WARNING. So bail out early with -ENOMEM if the request AUX area is out of bound, e.g.: #perf record -C 0 -m ,4G -e arm_spe_0// -- sleep 1 failed to mmap with 12 (Cannot allocate memory)

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

v < 4.19.3004.1 ≤ v < 4.19.3004.1 ≤ v < 5.10.2024.1 ≤ v < 5.15.1404.1 ≤ v < 5.4.2624.1 ≤ v < 6.1.644.1 ≤ v < 6.5.134.1 ≤ v < 6.6.34.1 ≤ v < 6.74.20 ≤ v < 5.4.2625.11 ≤ v < 5.15.1405.16 ≤ v < 6.1.645.5 ≤ v < 5.10.2026.2 ≤ v < 6.5.136.6 ≤ v < 6.6.34.145bfb2e50471abbbfd83d40d28c986078b0d24ff
Vendor states this is fixed in 1a2a4202c60fcdffbf04f259002ce9bff39edece (fixed)
Vendor states this is fixed in 2424410f94a94d91230ced094062d859714c984a (fixed)
Vendor states this is fixed in 2e905e608e38cf7f8dcddcf8a6036e91a78444cb (fixed)
Vendor states this is fixed in 54aee5f15b83437f23b2b2469bcf21bdd9823916 (fixed)
Vendor states this is fixed in 788c0b3442ead737008934947730a6d1ff703734 (fixed)
Vendor states this is fixed in 8c504f615d7ed60ae035c51d0c789137ced6797f (fixed)
Vendor states this is fixed in 9ce4e87a8efd37c85766ec08b15e885cab08553a (fixed)
Vendor states this is fixed in fd0df3f8719201dbe61a4d39083d5aecd705399a (fixed)
Vendor states this is fixed in 4.1 (unaffected)
Vendor states this is fixed in 4.19.300 (unaffected)
Vendor states this is fixed in 5.10.202 (unaffected)
Vendor states this is fixed in 5.15.140 (unaffected)
Vendor states this is fixed in 5.4.262 (unaffected)
Vendor states this is fixed in 6.1.64 (unaffected)
Vendor states this is fixed in 6.5.13 (unaffected)
Vendor states this is fixed in 6.6.3 (unaffected)
Vendor states this is fixed in 6.7 (unaffected)

References (8)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/1a2a4202c60fcdffbf04f259002ce9bff39edece
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/2424410f94a94d91230ced094062d859714c984a
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/2e905e608e38cf7f8dcddcf8a6036e91a78444cb
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/54aee5f15b83437f23b2b2469bcf21bdd9823916
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/788c0b3442ead737008934947730a6d1ff703734
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/8c504f615d7ed60ae035c51d0c789137ced6797f
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/9ce4e87a8efd37c85766ec08b15e885cab08553a
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/fd0df3f8719201dbe61a4d39083d5aecd705399a

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
HIGH
Integrity
HIGH
Availability
HIGH
Vector?

Quick Info

StatusANALYZED
CWE
CWE-129

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card