Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain low-privileged local shell account
-
DeliveryCreate POSIX timer with CLOCK_TAI via timer_create(2)
-
ExploitCall timer_settime(2) to trigger missing error-check code path
-
ExecutionKernel copies uninitialized stack buffer to caller's userspace buffer
-
PersistExtract kernel memory contents from returned itimerspec
-
ImpactUse leaked pointers for KASLR bypass or credential harvesting
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Variable initialization
|
| Exploitation Conditions | Exploitation requires a valid low-privileged local user account on a FreeBSD 15.0-RELEASE (prior to p12) or 15.1-RELEASE (prior to p2) system where no UTC-TAI offset has been configured in the running kernel - this is the specific triggering condition identified in the description, as it causes realtimer_gettime() to return an error rather than populate the buffer. The attacker must be permitted to call timer_create(2) with CLOCK_TAI and timer_settime(2), which are available to unprivileged users by default on standard FreeBSD configurations. CVSS PR:L confirms authenticated low-privilege access is required; PR:N (unauthenticated) exploitation is not possible. Key limiting factors: requires local shell access (network-remote exploitation is ruled out by AV:L), affects only FreeBSD 15.x series (not earlier branches per available data), and the TAI offset absence is a common but not universal system state. |
| Impact | The NVD-assigned CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N, score 5.5) is internally consistent with the described exploitation path: a low-privileged local account is sufficient, no user interaction is required, and only confidentiality is impacted. The EPSS score of 0.18% (8th percentile) indicates low near-term exploitation probability by automated threat actors, which aligns with the local-access requirement limiting the pool of viable attackers. No CISA KEV listing exists and no public PoC has been referenced in available intelligence sources, both signals that exploitation remains opportunistic rather than widespread. The real-world risk is bounded by the requirement for an interactive shell account - remote unauthenticated exploitation is not possible. That said, kernel stack leaks carry secondary risk: leaked data can contain KASLR slide values, pointer residuals, or cryptographic material that facilitate privilege escalation chains. The narrow affected version scope (FreeBSD 15.x only) and the triggering precondition (absence of TAI offset configuration) further constrain the realistic exposure population. Organizations running FreeBSD 15.x in multi-tenant or shared-hosting environments should treat this as moderate-priority patching. |
| Exploit ScenarioDerived | A low-privileged user with an interactive shell on an unpatched FreeBSD 15.x system writes a minimal C program that calls timer_create(CLOCK_TAI, ...) followed by timer_settime(2) with a target itimerspec. On a system without a configured TAI offset, the kernel silently fails to populate the old-timer buffer and copies raw stack contents back to the caller's struct itimerspec. The attacker reads the returned bytes, which may contain residual kernel pointer values, enabling KASLR bypass for a subsequent privilege escalation attempt. No public PoC has been identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 26, 2026
Kernel stack memory disclosure in FreeBSD 15.x exposes uninitialized data to unprivileged local users through a missing error-return check in the POSIX timer subsystem. When a CLOCK_TAI timer is created on a system lacking a configured UTC-TAI offset, the kernel function realtimer_gettime() fails silently, and the resulting uninitialized stack buffer is copied verbatim to userspace via timer_settime(2). Affected releases are FreeBSD 15.0-RELEASE prior to p12 and 15.1-RELEASE prior to p2; no public exploit or CISA KEV listing has been identified at time of analysis.
RemediationAI
The primary fix is upgrading to FreeBSD 15.1-RELEASE-p2 or FreeBSD 15.0-RELEASE-p12 as specified in FreeBSD Security Advisory SA-26:51 at https://security.freebsd.org/advisories/FreeBSD-SA-26:51.ktimer.asc. Apply patches using the standard freebsd-update(8) mechanism or rebuild the kernel from patched source. Where immediate patching is not feasible, restricting local shell access to the system reduces the attack surface, since exploitation requires a low-privileged account. Additionally, deploying system-call filtering policies (e.g., Capsicum capability mode or custom pledge-style restrictions) to prevent unprivileged processes from calling timer_create(2) with CLOCK_TAI would block the specific exploitation path, but may break applications legitimately using TAI-based timers. Patch application requires a kernel rebuild or reboot, which constitutes the primary operational trade-off.
Affected VersionsENISA
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is classified as CWE-908 (Use of Uninitialized Resource), rooted in the FreeBSD kernel's POSIX interval timer implementation. The syscall timer_settime(2) internally calls realtimer_gettime() to snapshot the previous timer value before updating it. When the timer's clock source is CLOCK_TAI - International Atomic Time, which requires a UTC-TAI leap-second offset to be present on the running kernel - realtimer_gettime() returns an error if that offset has not been configured. The code path did not check this return value, so the on-stack output buffer, never written by the failed function, was passed directly to copyout() and transferred to the calling userspace process. The affected CPE is cpe:2.3:a:freebsd:freebsd:*:*:*:*:*:*:*:* covering FreeBSD 15.x base system versions per EUVD-2026-62338 and FreeBSD Security Advisory SA-26:51.
Know when Freebsd gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
Local access and a low-privileged account are required; only kernel stack data is disclosed with no integrity or availability impact.
Primary rating from Vendor (freebsd).
CVSS VectorVendor: freebsd
Lifecycle Timeline
2DescriptionCVE.org
To retrieve the previous timer value, the kernel calls realtimer_gettime(), which obtains the current time for the timer's clock. For a timer using CLOCK_TAI this can fail when no TAI offset has been configured, but the error return was not checked, so the uninitialized output buffer was copied to userspace.
An unprivileged local user can obtain uninitialized kernel stack memory by creating a POSIX timer with CLOCK_TAI and calling timer_settime(2), potentially disclosing sensitive kernel data.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
The x86-64 kernel system-call functionality in Xen 4.1.2 and earlier, as used in Citrix XenServer 6.0.2 and earlier and
The rtsol(8) and rtsold(8) programs do not validate the domain search list options provided in router advertisement mess
Server or client applications that call the SSL_check_chain() function during or after a TLS 1.3 handshake may crash due
The RFC 5011 implementation in rdata.c in ISC BIND 9.7.x and 9.8.x before 9.8.5-P2, 9.8.6b1, 9.9.x before 9.9.3-P2, and
Remote code execution in OpenSSH's sshd server (regression of CVE-2006-5051) allows unauthenticated remote attackers to
An issue was discovered in OpenSSH 7.9. Rated medium severity (CVSS 5.9), this vulnerability is remotely exploitable, no
The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot
The vm_map_lookup function in sys/vm/vm_map.c in the mmap implementation in the kernel in FreeBSD 9.0 through 9.1-RELEAS
An OpenSSL TLS server may crash if sent a maliciously crafted renegotiation ClientHello message from a client. Rated med
Integer overflow in the _gd2GetHeader function in gd_gd2.c in the GD Graphics Library (aka libgd) before 2.2.3, as used
The Stream Control Transmission Protocol (SCTP) module in FreeBSD 9.3 before p33, 10.1 before p26, and 10.2 before p9, w
In FreeBSD 12.1-STABLE before r359565, 12.1-RELEASE before p7, 11.4-STABLE before r362975, 11.4-RELEASE before p1, and 1
EUVD-2026-62338
GHSA-p4v3-cw55-5mrc
NVD
CVE.org
EPSS
VulDB
Exploit-DB