Skip to main content

illumos reparsed CVE-2026-104115

| EUVDEUVD-2026-95804 MEDIUM
Stack-based Buffer Overflow (CWE-121)
2026-10-09 illumos GHSA-gwf6-7hwv-r7vq
5.4
CVSS 4.0 · Vendor: illumos
View

Attack ChainAIDerived

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

  1. Access
    Obtain any local user account
  2. Delivery
    Open world-readable /var/run/reparsed_door
  3. Exploit
    Send nfs-basic request with overlong host/path
  4. Execution
    Overflow 1024-byte stack buffer in get_fs_locations()
  5. Persist
    Stack protection aborts reparsed
  6. Impact
    Repeat to force service into maintenance (DoS)

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Stack buffer bounds checking
MITRE ATT&CK

1 technique across 1 tactic: Execution

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

Exploitation Conditions

Requires: (1) a local account on the target host - the reparsed door at /var/run/reparsed_door is readable by all users and the door server performs no caller credential check, so any unprivileged local user qualifies; (2) the svc:/system/filesystem/reparse service must be enabled, which it is NOT by default - this is the primary limiting factor; (3) a crafted nfs-basic reparse request with a host or path component exceeding the 1024-byte stack buffer. Exploitation is further limited to a denial-of-service outcome because default stack protection aborts the process rather than permitting code execution; on a hypothetical system built without stack protection the overflow behavior could differ. No remote vector exists (local door IPC only).

Impact

This is a genuinely low-priority, availability-only issue despite the stack-based overflow classification. All signals align toward limited real-world risk: the CVSS 4.0 vector (AV:L/AC:L/PR:L/UI:N) requires a local, logged-in account, and impact is confined to availability (VA:H) with no confidentiality or integrity effect (VC:N/VI:N) - because default stack protection converts the overflow into a controlled abort rather than code execution. The CVSS 4.0 threat metric carries E:P (Proof-of-Concept), indicating POC-level maturity rather than mature/weaponized exploitation; there is no CISA KEV listing and no EPSS value supplied, so there is no evidence of active or widespread exploitation. Two further mitigations sharply reduce priority: the svc:/system/filesystem/reparse service is disabled by default, and the affected operating systems (illumos/OmniOS) have a small deployment footprint. Note a limitation: no EPSS score is provided, so probabilistic exploitation likelihood cannot be quantified, and the discoverer-reported E:P maturity is not independently corroborated by a referenced public exploit.

Exploit ScenarioDerived

On an illumos/OmniOS host where an administrator has enabled the reparse service, an unprivileged local user opens the world-readable door at /var/run/reparsed_door and sends an nfs-basic request containing an overlong host or path component. The overflow of the fixed 1024-byte stack buffer in get_fs_locations() trips stack protection, aborting reparsed; repeating the request drives the service into maintenance state, denying reparse functionality. The CVSS threat metric E:P indicates proof-of-concept exploit maturity, and the low attack complexity (AC:L) with no required user interaction makes the crash trivially reproducible for any local user.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 09, 2026

Local denial of service in the illumos reparsed daemon (reparsed) lets a low-privileged authenticated local user crash the daemon and, through repeated requests, drive the svc:/system/filesystem/reparse service into maintenance. The bug is a stack buffer overflow (CWE-121) in the nfs-basic reparse plugin's get_fs_locations(), which copies attacker-supplied host and path components of a reparse string into a fixed 1024-byte stack buffer with no length validation, reachable because the door at /var/run/reparsed_door is world-readable and the door server does not verify caller credentials. Exploitation is availability-only on default builds (stack protection aborts the process rather than yielding code execution), no public exploit code has been identified at time of analysis, and the affected service is disabled by default, which substantially limits real-world exposure; this is a genuinely low-priority, availability-only issue despite the stack-based overflow classification.

RemediationAI

Apply the upstream fix in illumos-gate commit 6a2df4aa5381599179ab6afb3165db81960dee35 (patch availability reported by the vendor and by illumos issue 18496), or install the corresponding patched OmniOS/illumos distribution release once it ships that commit; the fix bounds-checks the reparse string in get_fs_locations(), bounds the door argument with strndup(), rejects non-kernel callers via door_ucred()/pid check, and sets the /var/run/reparsed_door mode to 0600. If immediate patching is not possible, the primary compensating control is to keep the svc:/system/filesystem/reparse service disabled (svcadm disable system/filesystem/reparse), which it already is by default - this removes the attack surface entirely at the cost of disabling reparse-point resolution for NFS autofs paths that depend on the nfs-basic plugin. If the service must run, restrict /var/run/reparsed_door to owner-only access (chmod 600 /var/run/reparsed_door) after service start to block unprivileged callers; note that reparsed recreates its door on restart and this does not prevent a determined local user with access to the service's own account, and that it may break legitimate non-kernel consumers of the door. Monitor for repeated aborts of reparsed via syslog and the svc:/system/filesystem/reparse service entering maintenance state, which is the observable signature of exploitation; an aborting crash loop should be treated as a potential local attack attempt and the caller identified from door/audit records.

Affected VersionsENISA

OmniOS r151054 <r151054bw
OmniOS any <r151054
OmniOS r151056 <r151056aw
illumos-gate 2f172c55ef76964744bc62b4500ece87f3089b4d <6a2df4aa5381599179ab6afb3165db81960dee35
OmniOS r151058 <r151058w

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 resides in usr/src/cmd/fs.d/nfs/rp_basic/libnfs_basic.c, part of the nfs-basic reparse plugin consumed by the illumos reparse point daemon. illumos reparse points are analogous to Windows reparse points: user-space daemons are consulted through door IPC when the kernel resolves a reparse point. The door server registers /var/run/reparsed_door with permissive mode (S_IRUSR|S_IWUSR|S_IRGRP|S_IROTH) and, in the vulnerable code, reparsed_doorfunc() performed no caller credential check, so any unprivileged local process could invoke it. get_fs_locations() then parsed a reparse string and copied its host and path components into a fixed 1024-byte stack buffer (buf2) without bounds checking, producing a classic CWE-121 stack-based buffer overflow when either component exceeded that size. The defect dates to illumos-gate commit 2f172c55 (2009) and is fixed by commit 6a2df4aa, which adds an early strlen(buf) >= sizeof(buf2) rejection in get_fs_locations(), replaces strdup() with strndup() over the bounded argument size, adds a door_ucred()-based check that only kernel upcalls (pid 0, as issued by reparse_kderef()) are served and returns EPERM otherwise, and tightens the door's mode to S_IRUSR|S_IWUSR (0600). CPE data identifies illumos-gate and OmniOS as affected products.

Know when Illumos 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 (illumos) PRIMARY 5.4 MEDIUM
CVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:P
vuln.today AI 5.5 MEDIUM

Local door IPC gives AV:L; any local account suffices via the unchecked world-readable door so PR:L; trivially reproducible crash is AC:L; impact is availability-only (A:H), no C/I effect.

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

Primary rating from Vendor (illumos).

CVSS VectorVendor: illumos

Attack Vector
Local
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

A stack-based buffer overflow in the illumos reparse point daemon (reparsed) allows a local user to crash the daemon. get_fs_locations() in usr/src/cmd/fs.d/nfs/rp_basic/libnfs_basic.c, part of the nfs-basic reparse plugin, copies the host and path components of a reparse string into a fixed 1024-byte stack buffer without checking their length. The reparsed door at /var/run/reparsed_door is readable by all users and the door server does not check the caller's credentials, so an unprivileged local user can send an nfs-basic request with an overlong host or path component to overflow the buffer. On systems built with stack protection, which is the default, this causes reparsed to abort; repeated requests place the svc:/system/filesystem/reparse service into maintenance. The service is disabled by default. The flaw has existed since 2009 (illumos-gate commit 2f172c55), and affects any illumos distribution prior to illumos-gate commit 6a2df4aa.

Threat Intelligence Overview

EPSS Score
0.1%
Top 97% exploitable
Prevalence
Low
illumos/OmniOS are niche Solaris-derived server OSes with small footprint
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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

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.

A stack-based buffer overflow occurs when a program writes more data to a buffer located on the stack than it was allocated to hold.

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-2016-6561 HIGH POC
7.5 Mar 31

illumos smbsrv NULL pointer dereference allows system crash. Rated high severity (CVSS 7.5), this vulnerability is remot

CVE-2020-27678 CRITICAL
9.8 Oct 26

An issue was discovered in illumos before 2020-10-22, as used in OmniOS before r151030by, r151032ay, and r151034y and Sm

CVE-2026-15422 CRITICAL
9.1 Jul 16

Remote kernel heap corruption in the illumos SCTP stack lets an unauthenticated attacker send a crafted INIT ACK packet

CVE-2016-6560 HIGH
8.6 Mar 31

illumos osnet-incorporation bcopy() and bzero() implementations make signed instead of unsigned comparisons allowing a s

CVE-2023-31284 HIGH
7.8 May 04

illumos illumos-gate before 676abcb has a stack buffer overflow in /dev/net, leading to privilege escalation via a stat

CVE-2026-104112 MEDIUM
6.8 Oct 09

Kernel memory exhaustion in the illumos name service cache daemon (nscd) lets any local, unprivileged user - including o

CVE-2026-102916 MEDIUM
6.8 Oct 09

Host denial-of-service in illumos bhyve allows a privileged guest user to panic the host by executing a REP-prefixed MOV

CVE-2026-15449 MEDIUM
5.8 Jul 16

Kernel heap corruption in the illumos data-link pseudo-driver (dld) allows an unprivileged local user - including one co

CVE-2026-104114 MEDIUM
5.4 Oct 09

NULL pointer dereference in the illumos Network Auto-Magic daemon (nwamd) allows any local user to crash the daemon - an

CVE-2014-9491 MEDIUM
5.0 Jan 20

The devzvol_readdir function in illumos does not check the return value of a strchr call, which allows remote attackers

CVE-2026-104116 LOW
1.9 Oct 09

Local users holding an unprivileged account in any zone on an illumos-based host can send an unauthorized ZSD_CMD_NEW_ZO

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