CVE-2023-54019

Description

A use-after-free vulnerability was found in the Linux kernel's PSI (Pressure Stall Information) trigger handling for cgroups. When a cgroup is removed while a process is polling its PSI trigger file, the trigger's waitqueue is destroyed via psi_trigger_destroy() while the polling process still holds a reference. The subsequent poll_freewait() accesses the freed waitqueue head, causing a use-after-free crash.

Statement

This flaw affects systems using cgroup PSI monitoring with poll() or select() on PSI trigger files. The race occurs when a cgroup is removed (rmdir) while another process is actively polling for PSI events on that cgroup. This is a lifecycle mismatch between the PSI trigger and the associated file descriptor. A previous fix addressed epoll() but left synchronous poll() vulnerable.

Common Vulnerability Scoring System (CVSS) Score Details

Info alert:Important note

CVSS scores for open source components depend on vendor-specific factors (e.g. version or build chain). Therefore, Red Hat's score and impact rating can be different from NVD and other vendors. Red Hat remains the authoritative CVE Naming Authority (CNA) source for its products and services (see Red Hat classifications).

CVSS v3 Score Breakdown

Red HatNVDcve.org
Base Score5.5N/A7.8
Attack VectorLocalN/ALocal
Attack ComplexityLowN/ALow
Privileges RequiredLowN/ALow
User InteractionNoneN/ANone
ScopeUnchangedN/AUnchanged
ConfidentialityNoneN/AHigh
Integrity ImpactNoneN/AHigh
Availability ImpactHighN/AHigh

Vector

Red Hat: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

cve.org: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Understanding the Weakness (CWE)

Availability

Technical Impact: DoS: Resource Consumption (Other); DoS: Resource Consumption (Memory); DoS: Resource Consumption (CPU)

An attacker that can influence the allocation of resources that are not properly released could deplete the available resource pool and prevent all other processes from accessing the same type of resource. Frequently-affected resources include memory, CPU, disk space, power or battery, etc.

Frequently Asked Questions

Want to get errata notifications? Sign up here.