Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain low-privileged local shell account
-
DeliveryOpen target tty device via file descriptor
-
ExploitSpawn concurrent thread to destroy same tty device
-
InstallTrigger TIOCSCTTY ioctl while lock is transiently dropped
-
C2Win race to link destroyed tty to attacker session
-
ExecuteExploit corrupted kernel session state
-
ImpactEscalate to root
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V15 - Secure Coding and Architecture Concurrency control, locking
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires a local, low-privileged user account on the target FreeBSD system (confirmed by CVSS PR:L). No network-level access, no specific service, and no administrator interaction are required. The race window is narrow and timing-dependent (CVSS AC:H), meaning the attacker must win a concurrent kernel scheduling race between the TIOCSCTTY ioctl path and a tty destruction path - exploitation may require repeated attempts. Exploitation is limited to FreeBSD systems running affected kernel versions (15.0-RELEASE before p13, 15.1-RELEASE before p3, 14.4-RELEASE before p9); it does not apply to Linux, macOS, or other BSDs unless they share an identical ioctl locking pattern. Multi-tenant or shared-hosting deployments where untrusted users hold shell accounts represent the primary risk population. |
| Impact | CVSS 3.1 scores this at 7.0 (High) with AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H, and that assessment is internally consistent: local access with a low-privileged account is required, but the high attack complexity (AC:H) honestly reflects the race condition's timing dependency. EPSS stands at 0.13% (3rd percentile), indicating the research and threat-actor community has not yet operationalised this vulnerability at scale - this is not in CISA KEV. The combination of AC:H and low EPSS suggests exploitation is technically possible but unreliable in practice, requiring either a timing-favorable environment or repeated attempts. Despite the C:H/I:H/A:H impact triad, real-world priority should be tempered: an attacker must already have a local shell account on the target FreeBSD system, which significantly limits the exposed attack surface to multi-tenant or shared-hosting deployments. The discrepancy between the cveorg and EUVD reference advisories (SA-26:60 vs. SA-26:62, both claiming to address tty) is a minor data inconsistency worth verifying against the vendor's published advisory index. |
| Exploit ScenarioDerived | An attacker with a low-privileged local shell account on a multi-user FreeBSD system spawns two concurrent threads: one repeatedly invokes TIOCSCTTY on a target tty device while the second concurrently closes and destroys that device. When the kernel's tty lock is transiently dropped for process-tree lock acquisition, the attacker wins the race, causing the kernel to attach a partially-destroyed tty object to their session, which corrupts kernel session state in a way that can be leveraged to escalate to root. No public proof-of-concept code has been identified at time of analysis, so reliable exploitation requires knowledge of FreeBSD kernel internals and race-window tuning. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 26, 2026
Privilege escalation in FreeBSD's tty subsystem allows a local unprivileged user to gain elevated privileges by exploiting a race condition in the TIOCSCTTY ioctl handler. The handler fails to revalidate terminal state after a lock-drop sequence, enabling a concurrently destroyed terminal to be incorrectly linked to the attacker's session. No public exploit code has been identified at time of analysis, but vendor-confirmed patches exist for all affected release lines (15.0-RELEASE, 15.1-RELEASE, and 14.4-RELEASE).
RemediationAI
Apply the vendor-released kernel patches: upgrade to FreeBSD 15.0-RELEASE-p13, FreeBSD 15.1-RELEASE-p3, or FreeBSD 14.4-RELEASE-p9 as appropriate for the installed release. Patches are available via freebsd-update(8) or by applying the kernel patch from the advisory at https://security.freebsd.org/advisories/FreeBSD-SA-26:60.tty.asc. Where immediate patching is operationally infeasible, restrict local shell access to trusted accounts only, as the vulnerability is unexploitable without an existing low-privileged session; removing untrusted local user accounts or confining them via mandatory access control frameworks (such as FreeBSD Jails or Capsicum) reduces exposure. Note that Jail confinement limits but may not fully eliminate tty ioctl access depending on jail configuration; verify tty device visibility within the jail. No workaround eliminates the kernel race without the patch.
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 TIOCSCTTY ioctl is the POSIX mechanism by which a process sets a controlling terminal for its session. The vulnerable handler in FreeBSD's kernel must coordinate two distinct lock domains - the per-tty lock (protecting terminal state) and the process tree lock (protecting session/process group relationships). To acquire the process tree lock without inverting lock order, the handler transiently releases the tty lock. This creates a window in which another kernel thread can begin destroying the same terminal. After reacquiring the tty lock, the handler proceeds without revalidating that the terminal object is still live, constituting a classic TOCTOU (time-of-check/time-of-use) race condition classified under CWE-362 (Concurrent Execution Using Shared Resource with Improper Synchronization). The affected CPE is cpe:2.3:a:freebsd:freebsd:*:*:*:*:*:*:*:*, covering the kernel tty subsystem across multiple release branches.
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:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Local access with low privileges required to trigger race; AC:H reflects timing-dependent window; full impact triad warranted for kernel privilege escalation to root.
Primary rating from Vendor (freebsd).
CVSS VectorVendor: freebsd
Lifecycle Timeline
3DescriptionCVE.org
The TIOCSCTTY ioctl handler drops the tty lock in order to acquire the process tree lock. After reacquiring the tty lock, the handler did not revalidate the state of the terminal, and could proceed to link a terminal that was concurrently being destroyed to the calling process' session.
An unprivileged local user can exploit this race condition to escalate privileges.
Zero Day Initiative Advisories
Executive ViewAI
FreeBSD's tty subsystem contains a privilege escalation vulnerability (CVE-2026-58093, CVSS 7.0) affecting versions 15.0, 15.1, and 14.4 that allows local unprivileged users to gain elevated privileges through a race condition. This exposes systems to unauthorized privilege escalation by any user with local shell access, compromising system integrity and access controls.
Apply vendor patch. Interim: restrict local shell access to trusted users and enable process-level privilege escalation monitoring via auditd or equivalent.
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
Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.
Race conditions occur when multiple concurrent requests exploit the brief time gap between checking a condition and acting upon it (TOCTOU - Time of Check, Time of Use).
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-66250
NVD
CVE.org
EPSS
Vulnrichment
VulDB
GitHub PoC
Exploit-DB