ZeroHour

CVE-2026-80622

niche

Use-after-free in Linux kernel tlclk (telco clock) driver cleanup path

CVSS 3.1
7.8 high
EPSS
<1%p3
Published
()
Modified
AI analysis

The tlclk character driver in the Linux kernel mishandles module teardown: tlclk_fops lacks an .owner field and tlclk_cleanup() frees alarm_events without first waking blocked waiters and synchronously stopping the switchover_timer, allowing a use-after-free and race conditions if the device is closed or the module unloaded while user-space processes are still interacting with it. A local, low-privileged attacker or process racing the cleanup path could corrupt freed memory, potentially leading to a kernel crash or local privilege escalation. The flaw only matters on Linux systems where the tlclk (telco clock, CONFIG_TELCLOCK) driver is built and used, which is tied to rare telecom clocking hardware. There are no known public exploits, proof-of-concepts, or CISA KEV entries, and EPSS puts the 30-day exploitation probability at about 0.1%.

What to do: Update the Linux kernel to a build containing the tlclk fix as it is merged into your distribution's stable/long-term branches; do not rely on version numbers beyond that until vendors publish patched releases. Check whether /dev/telclk exists or CONFIG_TELCLOCK is enabled in running kernels; if the telco clock hardware is not in use, disable, unload or blacklist the driver. Given the local attack vector, standard controls restricting unprivileged local shell access on exposed hosts also reduce risk.

Affected
Linux kernel (tlclk / telco clock char driver, CONFIG_TELCLOCK)
Estimated exposure
nichelikely thousands of systems at most worldwide (driver limited to rare MEN telco-clocking telecom hardware) — The tlclk driver is only present in kernels compiled with CONFIG_TELCLOCK and only functions with uncommon telecom clock hardware, so the realistic install base is far smaller than mainstream kernel drivers and no public scan data exists…

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: char: tlclk: fix use-after-free in tlclk_cleanup() This patch improves the module cleanup process in the tlclk driver to prevent potential use-after-free and race conditions. Currently, the file_operations structure does not specify the .owner field, which could allow the module to be unloaded while user-space processes are still interacting with the device. Additionally, the tlclk_cleanup() function frees the alarm_events memory before ensuring that blocked processes in the waitqueue are fully awakened and that the switchover_timer has completed. To address these cases, this patch: - Sets '.owner = THIS_MODULE' in tlclk_fops to safely defer module unloading while the device is in use. - Updates tlclk_cleanup() to explicitly wake up all blocked readers (wake_up_all), properly release hardware I/O regions, and safely delete the timer (timer_delete_sync) prior to freeing memory.

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.