7.8

CVE-2026-64251: pwrseq: core: fix use-after-free in pwrseq_debugfs_seq_next()

Analyzed
AliasesUBUNTU-CVE-2026-64251DEBIAN-CVE-2026-64251
Published 24-07-2026Last modified 17-08-2026

Vulnerability summary

CVE-2026-64251 is a high (CVSS 7.8) Use After Free vulnerability in linux. EPSS estimates a 0.17% chance of exploitation in the next 30 days, higher than 6.4% of scored vulnerabilities.

Priority
Routine

Not severe (CVSS 7.8, local access); no exploitation reported by the 5 checked sources

Source freshness unavailable

How is this decided?
CVSS score
7.8/10
010
High · v3.1 (CVE.org)
EPSS score
0.17%
0%100%
Low · +0.05 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 12 · Related 12

Timeline

  1. 24-07-2026
    PublishedVulnerability first disclosed.
  2. 17-08-2026
    Last modifiedVulnerability information updated.

Description

In the Linux kernel, the following vulnerability has been resolved: pwrseq: core: fix use-after-free in pwrseq_debugfs_seq_next() pwrseq_debugfs_seq_next() declares 'next' with __free(put_device), which causes put_device() to be called on the returned pointer when the variable goes out of scope. This results in a use-after-free since the seq_file framework receives a pointer whose reference has already been dropped. Simply removing __free(put_device) would fix the UAF but would leak the reference acquired by bus_find_next_device(), as stop() only calls up_read(&pwrseq_sem) and never releases the device reference. Fix this by making the reference counting consistent across all seq_file callbacks, matching the standard pattern used by PCI and SCSI: - start(): use get_device() so it returns a referenced pointer. - next(): explicitly put_device(curr) to release the previous device's reference (no NULL check needed - the seq_file framework only calls next() while the previous return was non-NULL). - stop(): put_device(data) to release the last iterated device's reference, with a NULL guard since stop() may be called with NULL when start() returned NULL or next() reached end-of-sequence.

CVSS metrics

4 scores · 4 sources · 1 version

EPSS trend

Probability

0.17%

Chance of exploitation in the next 30 days

Percentile

6%

Versus all other CVEs

30-day change

Increase +0.05 pp

From 0.12% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: local access, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.

Ubuntu119 products
  • linux< 7.0.0-31.31
  • linux-allwinner-5.19All versions (No fix recorded)
  • linux-aws< 7.0.0-1012.12
  • linux-aws-5.0All versions (No fix recorded)
  • linux-aws-5.11All versions (No fix recorded)
Linux2 products
  • linux≥ 249ebf3f65f8530beb2cbfb91bff1d83ba88d23c, < ba0b9f04c7a5f9887b8ce672eaf049502c0548ec | ≥ 249ebf3f65f8530beb2cbfb91bff1d83ba88d23c, < e91df6d273445c03f5aa302bfe147eda33d45794 | ≥ 249ebf3f65f8530beb2cbfb91bff1d83ba88d23c, < 73569a44fca2992f0ca4a4c0104069741b9873a0 | ≥ 249ebf3f65f8530beb2cbfb91bff1d83ba88d23c, < 257595adf9dac15ae1edd9d07753fbc576a7583d | 6.11
  • linux_kernel≥ 6.11, < 6.12.95 | ≥ 6.13, < 6.18.38 | ≥ 6.19, < 7.1.3
Debian1 product
  • linux< 6.12.95-1 | < 7.1.3-1

3 vendors · 122 products

References

19 links
Show all 19 references