Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1336 CNY

100%

CVE-2026-31712— ksmbd: require minimum ACE size in smb_check_perm_dacl()

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于ksmbd的smb_check_perm_dacl()函数中ACE大小验证不足,可能导致越界读取。

CVSS 8.3 · High EPSS 0.32% · P24

Possible ATT&CK Techniques 1 AI

T1211 · Exploitation for Stealth

Affected Version Matrix 16

VendorProduct Version RangeStatus
Linux Linux e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< 282cbbb476b9f35793452bc461934af4c7eca169 affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< f20adc4ef7428bc485ee83fd1a592252fb87718b affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< 325d4ac11f526cb8964cff14548ccf02d8c756d8 affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< 95e5aa3c3261da8c95b27d7aecf8ee39b9f86a4c affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< 90089584b2e25c4510b7b987387b4405f0673ece affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< 151b1799861fde38087c08f613abc2843ef597b0 affected
e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9< d07b26f39246a82399661936dd0c853983cfade7 affected
5.15 affected
… +8 more rows
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-31712

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
ksmbd: require minimum ACE size in smb_check_perm_dacl()
Source: CVE Program / CVE List V5
Vulnerability Description
In the Linux kernel, the following vulnerability has been resolved: ksmbd: require minimum ACE size in smb_check_perm_dacl() Both ACE-walk loops in smb_check_perm_dacl() only guard against an under-sized remaining buffer, not against an ACE whose declared `ace->size` is smaller than the struct it claims to describe: if (offsetof(struct smb_ace, access_req) > aces_size) break; ace_size = le16_to_cpu(ace->size); if (ace_size > aces_size) break; The first check only requires the 4-byte ACE header to be in bounds; it does not require access_req (4 bytes at offset 4) to be readable. An attacker who has set a crafted DACL on a file they own can declare ace->size == 4 with aces_size == 4, pass both checks, and then granted |= le32_to_cpu(ace->access_req); /* upper loop */ compare_sids(&sid, &ace->sid); /* lower loop */ reads access_req at offset 4 (OOB by up to 4 bytes) and ace->sid at offset 8 (OOB by up to CIFS_SID_BASE_SIZE + SID_MAX_SUB_AUTHORITIES * 4 bytes). Tighten both loops to require ace_size >= offsetof(struct smb_ace, sid) + CIFS_SID_BASE_SIZE which is the smallest valid on-wire ACE layout (4-byte header + 4-byte access_req + 8-byte sid base with zero sub-auths). Also reject ACEs whose sid.num_subauth exceeds SID_MAX_SUB_AUTHORITIES before letting compare_sids() dereference sub_auth[] entries. parse_sec_desc() already enforces an equivalent check (lines 441-448); smb_check_perm_dacl() simply grew weaker validation over time. Reachability: authenticated SMB client with permission to set an ACL on a file. On a subsequent CREATE against that file, the kernel walks the stored DACL via smb_check_perm_dacl() and triggers the OOB read. Not pre-auth, and the OOB read is not reflected to the attacker, but KASAN reports and kernel state corruption are possible.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5
Vulnerability Title
Linux kernel 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Linux kernel是美国Linux基金会的开源操作系统Linux所使用的内核。 Linux kernel存在安全漏洞,该漏洞源于ksmbd的smb_check_perm_dacl()函数中ACE大小验证不足,可能导致越界读取。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 ~ 282cbbb476b9f35793452bc461934af4c7eca169 -
Linux Linux 5.15 -

II. Public POCs for CVE-2026-31712

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-31712

登录查看更多情报信息。

Patches & Fixes for CVE-2026-31712 (7)

Same Patch Batch · Linux · 2026-05-01 · 146 CVEs total

CVE-2026-43037 9.8 CRITICAL ip6_tunnel: clear skb2->cb[] in ip4ip6_err()
CVE-2026-43038 9.8 CRITICAL ipv6: icmp: clear skb2->cb[] in ip6_err_gen_icmpv6_unreach()
CVE-2026-43039 9.8 CRITICAL net: ti: icssg-prueth: fix missing data copy and wrong recycle in ZC RX dispatch
CVE-2026-43011 9.8 CRITICAL net/x25: Fix potential double free of skb
CVE-2026-31705 9.8 CRITICAL ksmbd: fix out-of-bounds write in smb2_get_ea() EA alignment
CVE-2026-31718 9.8 CRITICAL ksmbd: fix use-after-free in __ksmbd_close_fd() via durable scavenger
CVE-2026-43048 8.8 HIGH HID: core: Mitigate potential OOB by removing bogus memset()
CVE-2026-31739 8.8 HIGH crypto: tegra - Add missing CRYPTO_ALG_ASYNC
CVE-2026-31735 8.8 HIGH iommupt: Fix short gather if the unmap goes into a large mapping
CVE-2026-31773 8.8 HIGH Bluetooth: SMP: derive legacy responder STK authentication from MITM state
CVE-2026-31717 8.8 HIGH ksmbd: validate owner of durable handle on reconnect
CVE-2026-43018 8.8 HIGH Bluetooth: hci_event: fix potential UAF in hci_le_remote_conn_param_req_evt
CVE-2026-31709 8.8 HIGH smb: client: validate the whole DACL before rewriting it in cifsacl
CVE-2026-31706 8.8 HIGH ksmbd: validate num_aces and harden ACE walk in smb_inherit_dacl()
CVE-2026-31779 8.1 HIGH wifi: iwlwifi: mvm: fix potential out-of-bounds read in iwl_mvm_nd_match_info_handler()
CVE-2026-31771 8.1 HIGH Bluetooth: hci_event: move wake reason storage into validated event handlers
CVE-2026-43051 8.1 HIGH HID: wacom: fix out-of-bounds read in wacom_intuos_bt_irq
CVE-2026-31708 8.1 HIGH smb: client: fix OOB read in smb2_ioctl_query_info QUERY_INFO path
CVE-2026-31772 7.8 HIGH Bluetooth: hci_sync: fix stack buffer overflow in hci_le_big_create_sync
CVE-2026-43019 7.8 HIGH Bluetooth: hci_conn: fix potential UAF in set_cig_params_sync

Showing top 20 of 146 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-31712

No comments yet


Leave a comment