ZeroHour

CVE-2026-80991

large

Use-after-free race in Linux kernel ravb (Renesas Ethernet AVB) PTP clock teardown

CVSS 3.1
7.8 high
EPSS
Published
()
Modified
AI analysis

A race condition in the Linux kernel's Renesas Ethernet AVB network driver (ravb) lets the PTP timestamp interrupt handler ravb_ptp_interrupt() pass the PTP clock to ptp_clock_event() at the same moment ravb_ptp_stop() is freeing that clock via ptp_clock_unregister(), producing a use-after-free of kernel memory. A local attacker with low privileges who can repeatedly drive PTP event delivery while the clock is being torn down (for example, by cycling the ravb interface or disabling PTP) could corrupt freed kernel objects, and the CVSS 3.1 score of 7.8 with high confidentiality, integrity, and availability impact indicates a realistic path to kernel privilege escalation. Only systems running kernels that include the vulnerable ravb driver with PTP support — Linux on Renesas R-Car and RZ-family SoCs, typical of automotive infotainment, industrial, and embedded boards — are affected; generic x86 servers and other vendors' NICs are not. There is no known public proof of concept, the flaw is not in CISA's KEV catalog, and no exploitation in the wild has been reported. The upstream fix atomically detaches the clock pointer with xchg(), uses READ_ONCE()/WRITE_ONCE() for lockless access, and synchronizes all relevant IRQs before unregistering the clock.

What to do: Update to a kernel containing the upstream fix (or backport it): the patch detaches the PTP clock with xchg() before disabling PTP interrupts and calls synchronize_irq() before ptp_clock_unregister(). On Renesas R-Car/RZ-based products, check whether the ravb driver and PTP clock support (CONFIG_PTP_1588_CLOCK) are actually needed, and disable PTP or restrict local unprivileged access where the patch cannot be applied immediately. Risk is highest on multi-user or app-executing embedded systems, since exploitation requires local access and no public PoC exists.

Affected
Linux kernel, drivers/net/ethernet/renesas/ravb (Renesas Ethernet AVB driver with PTP support, used on Renesas R-Car/RZ
Estimated exposure
largeorder of hundreds of thousands of Renesas R-Car/RZ-based automotive, industrial, and embedded Linux devices (rough estimate; no public scan dataset isolates… — Estimated from the driver's hardware scope — ravb exists only for Renesas R-Car and RZ Ethernet AVB MACs, which ship in volume in automotive infotainment and industrial boards — while noting that no internet-scan data breaks out these…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: net: ravb: serialize PTP clock teardown ravb_ptp_interrupt() can race with ravb_ptp_stop() and pass the clock to ptp_clock_event() while ptp_clock_unregister() is freeing it. This can lead to a use-after-free. Use READ_ONCE() and WRITE_ONCE() for lockless access to the clock pointer. Atomically detach it with xchg() before disabling PTP interrupts, then synchronize all IRQs which can invoke ravb_ptp_interrupt() before unregistering the detached clock. A handler which read the old pointer completes before the clock is unregistered, while later handlers read NULL and skip the event.

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

In the news

No ingested article mentions this CVE yet.