CVE-2024-35986 phy: ti: tusb1210: Resolve charger-det crash if charger psy is unregistered

High 7.0 Published Updated

A use-after-free vulnerability in the TI TUSB1210 PHY driver causes a kernel crash when the charger power supply is unregistered.

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-2024-35986?

CVE-2024-35986 is a high-severity use after free vulnerability in Linux kernel, published on 20 May 2024. 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:

phy: ti: tusb1210: Resolve charger-det crash if charger psy is unregistered

The power_supply frame-work is not really designed for there to be long living in kernel references to power_supply devices.

Specifically unregistering a power_supply while some other code has a reference to it triggers a WARN in power_supply_unregister():

WARN_ON(atomic_dec_return(&psy->use_cnt));

Folllowed by the power_supply still getting removed and the backing data freed anyway, leaving the tusb1210 charger-detect code with a dangling reference, resulting in a crash the next time tusb1210_get_online() is called.

Fix this by only holding the reference in tusb1210_get_online() freeing it at the end of the function. Note this still leaves a theoretical race window, but it avoids the issue when manually rmmod-ing the charger chip driver during development.

Weakness: CWE-416

Which versions are affected by CVE-2024-35986?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2024-35986?

Apply the vendor's patch.

Upgrade to the fixed version. These bugs are found with fuzzing and sanitisers and avoided by memory-safe languages. More about Use after free.

Is CVE-2024-35986 being exploited?

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

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2024-35986, DEBIAN-CVE-2024-35986, GHSA-8xgr-fvrm-f9g3, UBUNTU-CVE-2024-35986.

Is CVE-2024-35986 in your software?

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

Check your SBOMs for free