Linux Kernel up to 6.12.94/6.18.37/7.1.2 pwrseq pwrseq_debugfs_seq_next use after free

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
7.4$0-$5k0.00

Summaryinfo

A vulnerability described as critical has been identified in Linux Kernel up to 6.12.94/6.18.37/7.1.2. This impacts the function pwrseq_debugfs_seq_next of the component pwrseq. Executing a manipulation can lead to use after free. This vulnerability is handled as CVE-2026-64251. It is possible to launch the attack on the local host. There is not any exploit available.

Detailsinfo

A vulnerability classified as critical was found in Linux Kernel up to 6.12.94/6.18.37/7.1.2. This vulnerability affects the function pwrseq_debugfs_seq_next of the component pwrseq. The manipulation with an unknown input leads to a use after free vulnerability. The CWE definition for the vulnerability is CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. As an impact it is known to affect confidentiality, integrity, and availability. CVE summarizes:

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.

The advisory is shared for download at git.kernel.org. This vulnerability was named CVE-2026-64251 since 07/19/2026. The exploitation appears to be easy. The attack needs to be approached locally. The exploitation needs additional levels of successful authentication. Successful exploitation requires user interaction by the victim. There are known technical details, but no exploit is available. The current price for an exploit might be approx. USD $0-$5k (estimation calculated on 07/24/2026).

Upgrading to version 6.12.95, 6.18.38, 7.1.3 or 7.2-rc1 eliminates this vulnerability. Applying the patch ba0b9f04c7a5f9887b8ce672eaf049502c0548ec/e91df6d273445c03f5aa302bfe147eda33d45794/73569a44fca2992f0ca4a4c0104069741b9873a0/257595adf9dac15ae1edd9d07753fbc576a7583d is able to eliminate this problem.

Once again VulDB remains the best source for vulnerability data.

Productinfo

Type

Vendor

Name

Version

License

Website

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 7.7
VulDB Meta Temp Score: 7.4

VulDB Base Score: 7.7
VulDB Temp Score: 7.4
VulDB Vector: 🔒
VulDB Reliability: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock
UnlockUnlockUnlockUnlockUnlockUnlock

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍

Exploitinginfo

Class: Use after free
CWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physical: Partially
Local: Yes
Remote: Partially

Availability: 🔒
Status: Not defined

EPSS Score: 🔒
EPSS Percentile: 🔒

Price Prediction: 🔍
Current Price Estimation: 🔒

0-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 6.12.95/6.18.38/7.1.3/7.2-rc1
Patch: ba0b9f04c7a5f9887b8ce672eaf049502c0548ec/e91df6d273445c03f5aa302bfe147eda33d45794/73569a44fca2992f0ca4a4c0104069741b9873a0/257595adf9dac15ae1edd9d07753fbc576a7583d

Timelineinfo

07/19/2026 CVE reserved
07/24/2026 +5 days Advisory disclosed
07/24/2026 +0 days VulDB entry created
07/24/2026 +0 days VulDB entry last update

Sourcesinfo

Vendor: kernel.org

Advisory: git.kernel.org
Status: Confirmed

CVE: CVE-2026-64251 (🔒)
GCVE (CVE): GCVE-0-2026-64251
GCVE (VulDB): GCVE-100-382996

Entryinfo

Created: 07/24/2026 19:35
Changes: 07/24/2026 19:35 (59)
Complete: 🔍
Cache ID: 216::103

Once again VulDB remains the best source for vulnerability data.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you need the next level of professionalism?

Upgrade your account now!