CVE-2026-80670

perf tools: Use perf_env__get_cpu_topology() in machine__resolve()

State
Published
Severity
9.1 Critical
Published
Aug 28, 2026
Updated
Aug 29, 2026
Reserved
Aug 26, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

perf tools: Use perf_env__get_cpu_topology() in machine__resolve()

machine__resolve() accesses env->cpu[al->cpu].socket_id after checking al->cpu >= 0 and env->cpu != NULL, but without validating al->cpu against env->nr_cpus_avail. Since al->cpu comes from the untrusted perf.data sample, a crafted file with a large CPU index causes an out-of-bounds heap read.

Use perf_env__get_cpu_topology() which validates both NULL and bounds. Also bounds-check al->cpu before the cast to struct perf_cpu (int16_t): without this, values like 65536 silently truncate to 0, bypassing the accessor's internal check and returning CPU 0's topology.

Scores

CVSSScoreVectorSource
3.19.1 CriticalCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 0c4c4debb0adda4c18c158d95031dc2b9f637869 to before b9e8406651dcc1c19238aad11861a758683525b4Affected
  • 0c4c4debb0adda4c18c158d95031dc2b9f637869 to before eb266a14c16a93eb4db7b56a452d6be93f8bdcd4Affected
  • 0c4c4debb0adda4c18c158d95031dc2b9f637869 to before 5484b43a0ec8231c36fba6ead654cb72dbba8b8fAffected
LinuxLinux
  • 4.4Affected
  • before 4.4Not affected
  • 6.18.40 through 6.18.*Not affected
  • 7.1.5 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.