CVE-2026-64376 firmware_loader: fix device reference leak in firmware_upload_register()

Medium 5.5 Published Updated

A reference counting bug in the Linux kernel firmware loader can cause a memory leak, potentially leading to denial of service.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2026-64376?

CVE-2026-64376 is a medium-severity memory corruption vulnerability in Linux kernel, published on 25 Jul 2026. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

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

firmware_loader: fix device reference leak in firmware_upload_register()

firmware_upload_register() -> fw_create_instance() -> device_initialize()

After fw_create_instance() succeeds, the lifetime of the embedded struct device is expected to be managed through the device core reference counting, since fw_create_instance() has already called device_initialize().

In firmware_upload_register(), if alloc_lookup_fw_priv() fails after fw_create_instance() succeeds, the code reaches free_fw_sysfs and frees fw_sysfs directly instead of releasing the device reference with put_device(). This may leave the reference count of the embedded struct device unbalanced, resulting in a refcount leak.

The issue was identified by a static analysis tool I developed and confirmed by manual review. Fix this by using put_device(fw_dev) in the failure path and letting fw_dev_release() handle the final cleanup, instead of freeing the instance directly from the error path.

Which versions are affected by CVE-2026-64376?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2026-64376?

Apply the vendor's patch.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2026-64376 being exploited?

There is no known exploitation of CVE-2026-64376 in the wild and no public exploit code.

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2026-64376, DEBIAN-CVE-2026-64376, GHSA-vfm9-vf3r-mgwg, ROOT-OS-UBUNTU-2204-CVE-2026-64376, UBUNTU-CVE-2026-64376.

Is CVE-2026-64376 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free