Cloudanix VulnDB

CVE-2026-31709

High · 8.8

CVSS

8.8

EPSS

0.3%

Published

May 1, 2026

CISA due date

—

Cloudanix analysis

Next patch cycle SSVC: Track

A malicious file server could cause a Linux computer that connects to it to crash or potentially be taken over when handling file permissions.

Exploitation
Requires User Interaction
Attacker needs
User Interaction
Complexity
Moderate
Impact
Full Compromise
Component
OS kernel
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

CVE-2026-31709 is a Linux kernel SMB/CIFS client memory-safety flaw in ACL handling. When the kernel SMB client receives a discretionary access control list (DACL) from an SMB server, the affected code validates only the DACL header before later walking access control entries (ACEs) during chmod/chown-related security descriptor rebuilding. A malicious or compromised SMB server can return a truncated DACL that advertises ACEs extending beyond the actual buffer, causing kernel code paths such as cifsacl security descriptor rebuilding to read or copy past validated bounds. The likely outcomes include kernel memory corruption, kernel crash, information exposure, or potentially arbitrary code execution in kernel context, depending on kernel configuration, allocator state, and exploit reliability.

Why it matters to the business

Systems that mount SMB/CIFS shares can be destabilized or potentially compromised if they connect to a malicious, spoofed, or compromised SMB server and perform file ownership or permission operations. Business consequences include workstation or server outages from kernel crashes, possible privilege escalation to full host compromise, exposure of sensitive data processed on the affected host, and loss of trust in file-sharing infrastructure. Although EPSS is currently low at 0.00259, unchanged over 30 days, and the issue is not listed in CISA KEV or known ransomware use, the CVSS score is high because successful exploitation can affect confidentiality, integrity, and availability at the kernel level.

How an attack unfolds

An attacker first positions an SMB server that a Linux host will access, or compromises an existing SMB server already trusted by users or automation. The victim host mounts or browses the SMB share using the Linux kernel CIFS/SMB client. The attacker responds to ACL or security descriptor requests with a malformed DACL: the structure includes a valid-looking header and claims one or more ACEs, but the ACE body is truncated or inconsistent with the actual DACL bounds. When a user, application, or system process performs chmod, chown, or another operation that causes the SMB client to rebuild or parse the security descriptor, the vulnerable kernel code trusts the advertised ACE count and walks beyond the validated DACL extent. This can trigger an out-of-bounds read/copy in kernel space, leading to denial of service through a kernel oops/panic and, in more advanced exploitation scenarios, potential kernel memory corruption or execution control.

How to fix it

Apply a Linux kernel update from the operating system or appliance vendor that includes the upstream SMB client cifsacl fix adding full DACL structural validation before ACL parsing and chmod/chown rewrite paths. No exact fixed package versions were provided in the input, so use vendor advisories for the deployed distribution and kernel stream. Prioritize systems that mount SMB/CIFS shares from user-controlled, external, partner, or otherwise less-trusted servers. If immediate patching is not possible, reduce exposure by disabling unnecessary CIFS/SMB mounts, preventing outbound SMB connections to untrusted networks, avoiding chmod/chown workflows on untrusted SMB shares, mounting only trusted SMB servers, and applying network egress controls for TCP 445/139 where operationally feasible. Consider using automount restrictions and least-privilege access to file shares to reduce the chance of user-triggered exploitation.

How to confirm the fix worked

Confirm remediation by verifying the running kernel package/version against the relevant vendor advisory or by confirming the kernel source includes the corrected CIFS ACL validation logic that validates the whole DACL and each ACE before rewrite paths. Reboot into the patched kernel where required; installing a kernel package alone is insufficient if the system is still running the old kernel. Inventory active SMB/CIFS mounts using standard system tools and confirm whether any hosts still mount shares from untrusted or unmanaged SMB servers. Validate controls by checking that outbound SMB access is restricted to approved file servers and that untrusted SMB destinations are blocked. For exposure testing, avoid using destructive proof-of-concept payloads in production; instead, review kernel patch status, mount configuration, and network egress policy.

Typical attack path

  1. Attacker operates, spoofs, or compromises an SMB server reachable by Linux clients.
  2. A victim Linux system connects to or mounts the SMB share using the kernel CIFS/SMB client.
  3. The attacker supplies a crafted security descriptor containing a truncated DACL with a valid header but invalid ACE layout or length.
  4. A chmod, chown, ACL read, or permission/ownership synchronization operation causes the SMB client to parse or rewrite the DACL.
  5. The vulnerable kernel code walks ACEs based on untrusted DACL metadata without fully validating each ACE against the DACL bounds.
  6. The host experiences kernel out-of-bounds memory access, potentially resulting in a crash, information exposure, memory corruption, or further compromise.

How to detect it

To determine whether this may have been exploited, review kernel logs, system journals, crash dumps, endpoint telemetry, and network logs for Linux hosts that mounted SMB/CIFS shares. Focus on kernel oops, panic, KASAN, slab corruption, page fault, or general protection fault events involving CIFS/SMB ACL handling functions, especially around the time of chmod, chown, ownership synchronization, or permission changes on SMB-mounted paths. Correlate crash times with outbound SMB connections to unfamiliar or newly observed servers over TCP 445 or 139. Review auditd or EDR file-operation telemetry for chmod/chown operations on CIFS mounts shortly before kernel faults. Inspect mount history, shell history, systemd mount units, autofs maps, fstab entries, and desktop file-manager activity for access to unexpected SMB shares. If crash dumps are available, look for stack traces referencing cifsacl, build_sec_desc, id_mode_to_cifs_acl, replace_sids_and_copy_aces, set_chmod_dacl, or parse_dacl. Because exploitation depends on a malicious server response and the malformed DACL may not be preserved in ordinary logs, absence of a clear IOC does not rule out exploitation.

  • CIFS VFS
  • cifsacl
  • build_sec_desc
  • id_mode_to_cifs_acl
  • replace_sids_and_copy_aces
  • set_chmod_dacl
  • parse_dacl
  • kernel BUG at fs/smb/client
  • kernel BUG at fs/cifs
  • general protection fault
  • BUG: KASAN
  • slab-out-of-bounds
  • use-after-free
  • kernel NULL pointer dereference
  • Unable to handle kernel paging request
  • Oops:
  • Kernel panic - not syncing
  • mount.cifs
  • /sbin/mount.cifs
  • type=cifs
  • -t cifs
  • TCP/445
  • TCP/139

What your security team should do

  • Patch affected Linux kernels on systems that use SMB/CIFS mounts, prioritizing servers, workstations, and appliances that connect to non-local or less-trusted SMB shares.
  • Identify all Linux systems with active or configured CIFS mounts and determine which SMB servers they access.
  • Restrict outbound SMB traffic, especially TCP 445 and TCP 139, to approved file servers only.
  • Review automount, fstab, systemd mount units, and user-driven SMB workflows for connections to untrusted SMB servers.
  • Monitor kernel logs for CIFS/SMB-related oops, panic, slab, KASAN, or general protection fault messages involving ACL parsing or chmod/chown operations.
  • Treat unexplained kernel crashes on systems using SMB mounts as potentially security-relevant until logs and network history are reviewed.
  • Because the issue is not currently KEV-listed and EPSS remains low, schedule based on exposure: urgent for SMB-heavy or untrusted-share environments, normal accelerated patching for low-exposure systems.

The record

In the Linux kernel, the following vulnerability has been resolved: smb: client: validate the whole DACL before rewriting it in cifsacl build_sec_desc() and id_mode_to_cifs_acl() derive a DACL pointer from a server-supplied dacloffset and then use the incoming ACL to rebuild the chmod/chown security descriptor. The original fix only checked that the struct smb_acl header fits before reading dacl_ptr->size or dacl_ptr->num_aces. That avoids the immediate header-field OOB read, but the rewrite helpers still walk ACEs based on pdacl->num_aces with no structural validation of the incoming DACL body. A malicious server can return a truncated DACL that still contains a header, claims one or more ACEs, and then drive replace_sids_and_copy_aces() or set_chmod_dacl() past the validated extent while they compare or copy attacker-controlled ACEs. Factor the DACL structural checks into validate_dacl(), extend them to validate each ACE against the DACL bounds, and use the shared validator before the chmod/chown rebuild paths. parse_dacl() reuses the same validator so the read-side parser and write-side rewrite paths agree on what constitutes a well-formed incoming DACL.

Affected packages

Ecosystem Package Introduced Fixed
openSUSE:Tumbleweed kernel-source 0 7.0.7-1.1

Related vulnerabilities