CVE Catalog

CVE-2026-89552

Low risk· EPSS 6%
Published: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.17%

6th percentile - higher than 6% of all known CVEs

Summary

In the Linux kernel, param_set_charp() releases the previous parameter value before the replacement allocation succeeds. If kmalloc_parameter() fails, the setter returns -ENOMEM with the parameter left as NULL, which can later trigger a NULL pointer dereference, e.g., when failing zswap's compressor update before zswap is initialized.

Risk Assessment

This can lead to a kernel crash (oops/panic) and denial of service. It requires local access to write module parameters but can be exploited to destabilize the system.

Recommendation

Update the Linux kernel to a version containing the fix that allocates and copies the replacement first, then replaces the parameter value only after allocation succeeds. Verify that systems using zswap have the update installed.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: params: fix charp corruption on allocation failure param_set_charp() stores charp parameters in allocated memory after slab is available, and releases the previous value when the parameter is updated. The previous value is released before the replacement allocation succeeds. If kmalloc_parameter() fails, the setter returns -ENOMEM with the parameter left as NULL. Failing zswap's compressor update before zswap is initialized can later trigger: BUG: kernel NULL pointer dereference, address: 0000000000000000 RIP: 0010:strcmp+0x10/0x30 Call Trace: zswap_setup+0x3b1/0x490 zswap_enabled_param_set+0x5b/0xa0 param_attr_store+0x93/0xe0 module_attr_store+0x1c/0x30 kernfs_fop_write_iter+0x116/0x1f0 Allocate and copy the replacement first, then replace the parameter value only after allocation succeeds.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS