Skip to main content

Linux Kernel EUVDEUVD-2026-82203

| CVE-2026-93095 HIGH
2026-09-17 Linux GHSA-g2xv-9xm6-cmw4
7.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

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

  1. Access
    Craft malicious HFS+ image with oversized thread name
  2. Delivery
    Victim mounts crafted filesystem
  3. Exploit
    Close last ref to unlinked hardlink inode
  4. Execution
    hfsplus_delete_cat rebuilds key from bad length
  5. Persist
    OOB write past search-key allocation
  6. Impact
    Kernel memory corruption / crash (DoS)

Vulnerability Assessment

Exploitation Conditions

Requires mounting an attacker-crafted/corrupted HFS+ filesystem image containing a catalog thread record with an oversized nodeName.length. The vulnerable reconstruction path is reached only via hfsplus_delete_cat() called with str==NULL - i.e. when the last open reference to an unlinked HFS+ hardlink backing inode is closed - so the attacker must both mount the image and trigger the unlinked-hardlink cleanup path. Exploitation is LIMITED by the need for local access to introduce and mount the image (normally CAP_SYS_ADMIN, or an unprivileged automount/udisks configuration), the CONFIG_HFSPLUS_FS module being loaded, and no network vector (AV:L). It is not exploitable against default configurations without an untrusted image being mounted.

Impact

The vendor-assigned CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H, score 7.8) overstates real-world risk for this bug. The described flaw is an out-of-bounds write triggered only when a maliciously CRAFTED HFS+ image is mounted and a specific code path runs - hfsplus_delete_cat() is invoked with str==NULL when the last open reference to an unlinked HFS+ hardlink backing inode is closed, at which point an oversized thread.nodeName.length lets hfs_bnode_read() write past the catalog search-key allocation. This is a memory-corruption/DoS primitive (CWE-787 class, heap OOB write), not a confidentiality leak, so the C:H/I:H rating and the input 'Information Disclosure' tag are both inaccurate. There is no EPSS score, no CISA KEV listing, and no public exploit in the provided data - no public exploit identified at time of analysis. Realistic access is gated by the ability to get a crafted filesystem image mounted (crafted-image attack surface, typically CAP_SYS_ADMIN or an automount/udisks path), which is materially harder than AC:L implies. Net: a real but low-to-moderate priority hardening fix for a niche filesystem, not an urgent widely-exploitable flaw. Note: CWE is listed as N/A in the input despite the description clearly describing an OOB write - verify classification with vendor.

Exploit ScenarioDerived

An attacker crafts a malicious HFS+ filesystem image whose catalog B-tree contains a thread-type record with an oversized nodeName.length, then gets a victim to mount it (e.g. USB insertion with automount, or an admin mounting an untrusted image). When the last open reference to an unlinked hardlink backing inode is closed, hfsplus_delete_cat() rebuilds the delete key from the unvalidated thread name and hfs_bnode_read() writes past the search-key allocation, corrupting kernel memory and typically crashing the system. No public exploit code is available.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 18, 2026

A corrupted HFS+ filesystem image can cause a heap out-of-bounds write in the Linux kernel's hfsplus driver when the catalog thread record located by CNID in hfsplus_delete_cat() is not validated before its nodeName.length is used to rebuild a catalog delete key. The vulnerable path is reached with str == NULL, which happens when the last open reference to an unlinked HFS+ hardlink backing inode is closed, and is limited to Linux systems that have the hfsplus module (CONFIG_HFSPLUS_FS) loaded and are willing to mount an attacker-supplied or corrupted HFS+ volume; mounting untrusted images normally requires CAP_SYS_ADMIN or an unprivileged automount/udisks configuration. Local access and a crafted image are both prerequisites, and no public exploit code was identified at time of analysis; note that HFS+ (HFS Plus) is distinct from the newer Apple File System (APFS). The vendor-assigned CVSS 3.1 score of 7.8 (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) is judged to overstate real-world risk; exploitation requires mounting a malicious image and then triggering unlinked-hardlink cleanup, so no public exploit code was identified at time of analysis and the flaw is not exploitable against default configurations that never mount untrusted HFS+ media.

RemediationAI

Vendor-released patch available. Apply the kernel updates that carry the fix: mainline 7.3-rc1 or later, or the stable backports 7.2.6, 6.18.52, 6.12.110, 6.6.157, 6.1.188, 5.15.221 and 5.10.270 (fix commits listed in the advisory references at git.kernel.org, mirrored at https://nvd.nist.gov/vuln/detail/CVE-2026-93095). If immediate patching is not possible, the most effective compensating control is to avoid mounting untrusted or unverified HFS+ images on the host: blacklist or unload the module (for example a modprobe.d line 'blacklist hfsplus' plus rmmod hfsplus), accepting the trade-off that all HFS+ media, including legitimate removable drives and Time Machine-style volumes, becomes unusable until the module is reloaded. On multi-tenant or desktop systems, also tighten who can mount filesystems by restricting CAP_SYS_ADMIN, disabling or reconfiguring udisks/automount polices so unprivileged users cannot mount arbitrary block devices or image files, and performing image inspection in an isolated VM or user namespace rather than on a production host. Note that these are workarounds only around the parsing path and do not remove the underlying missing-validation defect, so patching remains the required fix.

Affected VersionsENISA

Linux patch: 6.12.110
Linux patch: 7.2.6
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <b9729c51a8b67f8b20b8a8cf395da4be63a0c15b
Linux patch: 5.10.270
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <e2ea5cac61acfc11dad22f1d2d4bc71d56c52a20
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <af48abc1b00d865c3f4c4d76b901c44115cb7162
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <e31985c67ba00a59d9b1340af473c1dbe6c87856
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <33cda0036bc683fc888c20b04a5fc030e3e8413b
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <e20f3b749ad241df77ec1c3e13a9c22209aa1eb3
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <473ea7aa35615829f0de7a71e8691d69dc24e328
Linux patch: 6.6.157
Linux patch: 5.15.221
Linux patch: 7.3-rc1
Linux patch: 6.18.52
Linux patch: 0
Linux patch: 6.1.188
Linux 2.6.12
Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 <7898beee166c1145c0bca364d687b8437435bf1a

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

HFS+ stores file and directory metadata in a catalog B-tree whose leaf records can be file records, folder records, or thread records; a thread record pairs a CNID with the parent ID and the node name, and is used to locate a file's catalog entry. In hfsplus_delete_cat(), when the caller passes str == NULL (the unlinked-hardlink backing inode cleanup path), the function looks up the catalog thread by CNID and reconstructs the delete key from thread.nodeName. The vulnerable code read thread.nodeName.length straight out of the B-tree leaf into fd.search_key and then copied length * 2 bytes into fd.search_key->cat.name.unicode without first confirming that the found record actually is a thread record or that its declared name length is consistent with the record size, so a malformed image with an oversized name length causes hfs_bnode_read() to write past the catalog search-key allocation (root-cause class: missing validation of externally supplied on-disk metadata leading to an out-of-bounds write). The fix routes the CNID read through hfsplus_brec_read_cat(), which bounds the read to sizeof(hfsplus_cat_entry) and enforces that a thread record's size exactly matches nodeName.length, guaranteeing any accepted name fits HFSPLUS_MAX_STRLEN; non-thread records are rejected before the delete key is built, and the thread-record-type helper is now shared between hfsplus_find_cat() and hfsplus_delete_cat(). Affected artifacts are the Linux kernel HFS+ driver (CPE cpe:2.3:a:linux:linux, CONFIG_HFSPLUS_FS); the accompanying tag describing this as simple Information Disclosure understates the memory-corruption nature of the bug.

Know when the next one hits your stack

  • 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 (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 5.8 MEDIUM

Local crafted-image mount plus a specific unlinked-hardlink cleanup trigger justifies AV:L/AC:H; mount reachable via automount so PR:L; OOB write is crash-primary (A:H) with marginal corruption impact (C:L/I:L).

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

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

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

Lifecycle Timeline

4
CVSS changed
Sep 18, 2026 - 18:22 NVD
7.8 (HIGH)
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 16:11 cve.org
HIGH 7.8
CVE Published
Sep 17, 2026 - 16:11 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

hfsplus: validate thread record before delete key rebuild

hfsplus_delete_cat() is called with str == NULL when the last open reference to an unlinked HFS+ hardlink backing inode is closed. In that case, the function finds the catalog thread by CNID and rebuilds the catalog key from thread.nodeName.

That reconstruction path reads thread.nodeName.length directly from the catalog B-tree into fd.search_key and then copies length * 2 bytes into fd.search_key->cat.name.unicode. It does not first check that the found record is a thread record or that its size matches the thread name.

A corrupted image can therefore provide an oversized thread name length and make hfs_bnode_read() write past the catalog search-key allocation.

Read the CNID record through hfsplus_brec_read_cat(), which bounds the record read to sizeof(hfsplus_cat_entry) and verifies that a thread record's size exactly matches nodeName.length. Together, these checks ensure an accepted thread name fits HFSPLUS_MAX_STRLEN. Reject non-thread records before building the delete key from the validated thread name.

Share the thread-record-type helper between hfsplus_find_cat() and hfsplus_delete_cat().

Executive ViewAI

Why It Matters

CVE-2026-93095 is a high-severity heap out-of-bounds write in the Linux kernel's hfsplus driver that can be triggered by mounting a crafted or corrupted HFS+ image, potentially causing kernel memory corruption or system crash on affected systems. It requires local access and the ability to mount an untrusted HFS+ volume on systems with CONFIG_HFSPLUS_FS, and no public exploit identified at time of analysis. Patch available per vendor advisory, so affected Linux endpoints should be updated and legacy HFS+ mounting restricted.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Low
hfsplus is a niche Apple-compat filesystem, shipped but rarely mounted in production Linux
Data Quality
3 sources
Confidence: Low

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 Yes
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· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Medium

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

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