Skip to main content

FreeBSD EUVDEUVD-2026-101855

| CVE-2026-58098 HIGH
Out-of-bounds Write (CWE-787)
2026-10-15 freebsd
8.4
CVSS 3.1 · Vendor: freebsd
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain unprivileged local shell
  2. Delivery
    Block thread in semop(2) on target set
  3. Exploit
    Churn 32768 sem sets to wrap 15-bit seq
  4. Execution
    Trigger out-of-bounds kernel heap access
  5. Persist
    Shape heap corruption
  6. Impact
    Escalate to root

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, write limits
MITRE ATT&CK

2 techniques across 2 tactics: Execution, Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires local, unprivileged access to a FreeBSD host (14.4/14.5/15.0/15.1 release lines before the listed patch levels) with SysV semaphore IPC available, which is standard/default - no special sysctl or configuration toggle is named in the advisory. The real limiting factor is the mechanism: the attacker must have a thread blocked in semop(2) AND create/destroy roughly 2^15 (32,768) semaphore sets landing in the same table slot to wrap the sequence counter before the blocked call re-validates. This race/timing dependency and the need for local code execution (AV:L, no remote path) materially limit practical exploitation; there is no user-interaction or authentication-beyond-local-login requirement.

Impact

Signals are largely consistent in pointing to a serious-but-not-urgent local privilege escalation. The FreeBSD-assigned CVSS 3.1 vector (AV:L/AC:L/PR:N/UI:N, C:H/I:H/A:H, base 8.4) confirms this is local-only (AV:L) and requires no prior privileges beyond an unprivileged shell (PR:N), with total impact - matching the SSVC 'Technical Impact: total' rating. However, the vendor's AC:L is questionable: the description requires wrapping a 15-bit sequence counter, i.e. creating and destroying on the order of 32,768 semaphore sets in the same table slot while another thread is blocked in semop(2). That is a timing/race-dependent primitive, so I assess attack complexity as HIGH rather than LOW - flagging a conflict between the vendor CVSS and the described mechanics. Exploitation signals are low/benign: EPSS 0.18% (7th percentile), SSVC 'Exploitation: none' and 'Automatable: no', and the vulnerability is NOT in CISA KEV. No public exploit was identified in the provided data. Net: a genuine kernel heap out-of-bounds LPE worth patching on multi-user or shared FreeBSD hosts, but it is not a widespread-exploitation, drop-everything issue - it needs local access and a non-trivial race win, which is why automated/mass exploitation is rated unlikely.

Exploit ScenarioDerived

An unprivileged local user on a shared FreeBSD host (e.g. a jail operator, CI runner user, or low-privileged account) blocks a thread in semop(2) on a target semaphore set, then rapidly creates and destroys semaphore sets to wrap the 15-bit IPC sequence number so the blocked call mistakes a new set for the original. The subsequent out-of-bounds access corrupts kernel heap memory, which the attacker shapes to escalate to root. No public proof-of-concept is identified at time of analysis, and success depends on winning the counter-wrap race.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
No patch listed yet 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 16, 2026

Out-of-bounds access to kernel heap memory in FreeBSD's System V semaphore subsystem allows an unprivileged local user to potentially escalate privileges or crash the kernel. The flaw is a race in semop(2): the invoking thread blocks, releases the per-set lock, and on wake-up re-validates its semaphore set using a 15-bit sequence number embedded in the IPC identifier; if roughly 32,768 sets are created and destroyed in the same table slot during that window, the counter wraps and the kernel falsely treats a freed/reused set as still valid, leading to an out-of-bounds dereference (CWE-787). Exploitation requires local code execution and a timing-dependent counter wrap, so practical risk is limited despite the total technical impact rating - no public exploit code has been identified at time of analysis, EPSS is 0.18% (7th percentile), and CISA SSVC records Exploitation: none, Automatable: no.

RemediationAI

Vendor-released patch: upgrade to FreeBSD 14.4-RELEASE-p10, 14.5-RELEASE-p1, 15.0-RELEASE-p14, or 15.1-RELEASE-p4 (or later) using 'freebsd-update fetch install' followed by a reboot, or by rebuilding from an updated source tree on the matching releng branch; details and revision numbers are in the advisory at https://security.freebsd.org/advisories/FreeBSD-SA-26:64.sysvsem.asc. Priorities should reflect the fact that this is a local-only, timing-dependent privilege escalation with no public exploit identified and a low EPSS score (0.18%), so it is serious but not urgent relative to remotely exploitable issues - still, patch systems that host untrusted or multi-tenant local users promptly. The advisory does not identify a functional workaround, and System V semaphore support is integral to the kernel with no supported sysctl to disable it at runtime, so operators can only apply partial containment: set allow.sysvipc=0 on jails whose workloads do not require SysV semaphores or shared memory (this prevents jailed users from reaching the vulnerable syscall path, at the cost of breaking applications inside those jails that depend on SysV IPC), and reduce or tightly control unprivileged local shell access on multi-user hosts (trade-off: limits legitimate development or hosting use cases and does not help where a low-privilege compromise already exists). Because the attack requires creating and destroying thousands of semaphore sets, monitoring or capping IPC_SET/IPC_RMID churn in the same semaphore table slot can provide detection value, though it is not a hardening control and imposes overhead.

Affected VersionsENISA

FreeBSD 14.5-RELEASE <p1
FreeBSD 15.1-RELEASE <p4
FreeBSD 14.4-RELEASE <p10
FreeBSD 15.0-RELEASE <p14

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

FreeBSD implements System V semaphores in the kernel, where each semaphore set is referenced by an IPC identifier composed of a table slot index plus an internal sequence (generation) counter. The sequence field is only 15 bits wide, so it has 32,768 possible values before wrapping. When semop(2) cannot immediately satisfy a semaphore operation, it drops the per-set lock and sleeps; the sequence number is intended as a cheap staleness check so that if the set is removed while the caller sleeps, the identifier no longer resolves and the call fails cleanly. The root cause (CWE-787, out-of-bounds write) is that this check is insufficient: an attacker who repeatedly creates and destroys semaphore sets that hash into the same table slot can exhaust and wrap the 15-bit generation counter while a thread remains blocked, making the stale identifier appear valid again. The kernel then operates on what is effectively a recycled or freed set and performs an out-of-bounds access on kernel heap memory. CPE data (cpe:2.3:a:freebsd:freebsd:*:*:*:*:*:*:*:*) confirms this is a base FreeBSD kernel issue rather than a third-party component; the CVSS vector (AV:L/AC:L or AC:H per independent assessment/PR:N/UI:N/S:U/C:H/I:H/A:H) reflects a local, unauthenticated attacker with no user interaction, and no code execution over a network path is involved.

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

Vendor (freebsd) PRIMARY 8.4 HIGH
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.4 HIGH

Local-only kernel bug (AV:L) reachable by any unprivileged user (PR:N, no UI); AC:H because triggering requires winning a race to wrap a 15-bit counter (~32768 set create/destroys); full kernel compromise gives C/I/A:H.

3.1 AV:L/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (freebsd).

CVSS VectorVendor: freebsd

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

3
CVSS changed
Oct 16, 2026 - 15:23 NVD
8.4 (HIGH)
CVE Published
Oct 15, 2026 - 06:15 cve.org
HIGH 8.4
CVE Published
Oct 15, 2026 - 06:15 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

When semop(2) blocks waiting for a semaphore condition, it releases the per-set lock and sleeps. Upon waking, it checks the sequence number embedded in the semaphore set's IPC identifier to detect whether the set was removed while the caller was asleep. This sequence number is only 15 bits wide. If enough semaphore sets are created and destroyed in the same table slot while a caller is blocked, the counter wraps around, and semop(2) may falsely conclude that the original set still exists. The subsequent access to a semaphore within the set may then be out of bounds.

An unprivileged local user can trigger an out-of-bounds access on kernel heap memory, potentially leading to privilege escalation.

Executive ViewAI

Why It Matters

A kernel privilege-escalation flaw in FreeBSD's System V semaphore subsystem affects FreeBSD-based servers, appliances, and network devices that permit local user access, potentially allowing a local user to gain root or destabilize the host. Exploitation is constrained by a timing-dependent race that requires substantial local activity, and no public exploit code or active exploitation has been observed, so this is primarily an exposure-management concern rather than an active incident. Leadership should care because no patch is available and the flaw erodes the isolation assumptions that multi-tenant, appliance, and shared-host architectures depend on.

Business Impact: Medium
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict local shell access to trusted administrators, isolate untrusted or multi-tenant workloads in jails or VMs with least privilege, lower SysV semaphore limits (kern.ipc.semmni / kern.ipc.semmns) where feasible, and monitor for kernel panics as a possible exploitation indicator. Apply vendor patch when released.

Threat Intelligence Overview

EPSS Score
0.2%
Top 93% exploitable
Prevalence
Medium
FreeBSD is common in servers, storage and network appliances, not everywhere
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available No
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Defer
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
Medium
Technical Impact
Total

Priority Score

42
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +42
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.

Memory corruption occurs when a program writes data beyond the boundaries of allocated memory regions or accesses memory in unintended ways, violating the integrity of the process's address space.

CVE-2012-0217 HIGH POC
7.2 Jun 12

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

CVE-2025-14558 HIGH POC
7.2 Mar 09

The rtsol(8) and rtsold(8) programs do not validate the domain search list options provided in router advertisement mess

CVE-2020-1967 HIGH POC
7.5 Apr 21

Server or client applications that call the SSL_check_chain() function during or after a TLS 1.3 handshake may crash due

CVE-2013-4854 HIGH POC
7.8 Jul 29

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

CVE-2024-6387 HIGH POC
8.1 Jul 01

Remote code execution in OpenSSH's sshd server (regression of CVE-2006-5051) allows unauthenticated remote attackers to

CVE-2019-6111 MEDIUM POC
5.9 Jan 31

An issue was discovered in OpenSSH 7.9. Rated medium severity (CVSS 5.9), this vulnerability is remotely exploitable, no

CVE-2023-48795 MEDIUM POC
5.9 Dec 18

The SSH transport protocol with certain OpenSSH extensions, found in OpenSSH before 9.6 and other products, allows remot

CVE-2013-2171 MEDIUM POC
6.9 Jul 02

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

CVE-2021-3449 MEDIUM
5.9 Mar 25

An OpenSSL TLS server may crash if sent a maliciously crafted renegotiation ClientHello message from a client. Rated med

CVE-2016-5766 HIGH POC
8.8 Aug 07

Integer overflow in the _gd2GetHeader function in gd_gd2.c in the GD Graphics Library (aka libgd) before 2.2.3, as used

CVE-2016-1879 HIGH POC
7.5 Jan 29

The Stream Control Transmission Protocol (SCTP) module in FreeBSD 9.3 before p33, 10.1 before p26, and 10.2 before p9, w

CVE-2020-7457 HIGH POC
8.1 Jul 09

In FreeBSD 12.1-STABLE before r359565, 12.1-RELEASE before p7, 11.4-STABLE before r362975, 11.4-RELEASE before p1, and 1

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy