Skip to main content

libsmb2 CVE-2026-115505

| EUVDEUVD-2026-108337 HIGH
Integer Overflow or Wraparound (CWE-190)
2026-10-22 VulnCheck GHSA-jfx5-c9g5-vf27
7.2
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Lure client to malicious/MITM SMB server
  2. Delivery
    Client calls smb2_share_enum_async
  3. Exploit
    Return crafted NetrShareEnum reply
  4. Execution
    Wrapping count overflows allocation size
  5. Impact
    Heap out-of-bounds write corrupts memory

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Integer overflow checks
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

Exploitation requires that the client application uses libsmb2 before 6.3 and calls smb2_share_enum_async() (the NetrShareEnum DCE/RPC operation), AND that the SMB connection is unsigned, which lets a malicious server or a machine-in-the-middle inject a crafted reply. The attacker does not hold credentials but must control the server side or the network path, and the client must initiate the connection/enumeration (passive user interaction, UI:P). Limiting factors that reduce real-world risk: enabling/requiring SMB signing defeats the machine-in-the-middle variant; the bug is only reachable when the client performs share enumeration rather than through any default always-on exposure; and the confirmed technical impact (per the diff) is heap out-of-bounds read/write, with code execution not established in the available sources. The only complete fix stated by the evidence is updating to libsmb2 6.3.

Impact

The CVSS 4.0 base score of 7.2 (High) is driven by a network vector (AV:N), low complexity (AC:L), no attacker privileges (PR:N), and a high availability impact (VA:H) from heap corruption, tempered by passive user interaction (UI:P) and only low confidentiality/integrity impact (VC:L/VI:L). The critical qualifier is the threat model: the attacker is a malicious SMB server or a machine-in-the-middle on an UNSIGNED connection, not a party that can reach a listening service - so the victim client must first initiate a share enumeration against attacker-controlled or intercepted infrastructure. This meaningfully narrows real-world exploitability compared to a classic remote-service flaw. No EPSS score and no SSVC exploitation/automatable/technical-impact decision values were supplied, so those framework signals cannot be weighed; the vuln.today 'this_week' decision label indicates elevated but non-emergency urgency (not act_now/emergency). This is not in CISA KEV, so there is no confirmed active exploitation, and the PoC is a hackmd writeup reference that is not verified as working exploit code. Net assessment: a genuine memory-corruption bug worth patching this week, but its server-side/MITM-plus-user-action prerequisites make it better suited to targeted attacks (e.g., hostile shares, rogue networks) than to widespread automated exploitation; the dominant realistic outcome is a client-side crash (denial of service) rather than reliable code execution, which the available evidence does not establish.

Exploit ScenarioDerived

An attacker operating a malicious SMB server, or positioned as a machine-in-the-middle on an unsigned SMB connection, waits for a libsmb2-based client to enumerate shares; when the client calls smb2_share_enum_async(), the attacker returns a crafted NetrShareEnum reply whose actual_count/max_count values wrap during size computation, corrupting the client's heap. A public PoC reference (a hackmd writeup) exists but is not verified as working exploit code, so demonstrated impact is heap out-of-bounds read/write and likely client crash rather than confirmed code execution.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available

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

Alert me

AnalysisAIv1 – Oct 22, 2026

Heap out-of-bounds reads and writes affect libsmb2 before release 6.3 through integer overflow in the DCE/RPC NDR decoder in lib/dcerpc.c. A malicious SMB server, or a machine-in-the-middle on an unsigned connection, can return crafted NetrShareEnum replies whose wrapping actual_count or max_count values cause undersized heap allocations and subsequent memory corruption when a client application calls smb2_share_enum_async(); the attacker needs no credentials but must control the server side or the network path, and the client must initiate the share enumeration on an unsigned connection. A public write-up describing the count overflow exists and is tagged as an exploit reference, but it is not verified as working exploit code, and no public exploit is otherwise identified; the vendor has released libsmb2 6.3 as the only complete fix, and the issue is prioritized for remediation this week per vuln.today.

RemediationAI

Update to libsmb2 6.3 or later, which the evidence identifies as the only complete fix; the release is published at https://github.com/sahlberg/libsmb2/releases/tag/libsmb2-6.3 and contains the corrected NDR decoder from commit a79f6914cb5ed3f74293d15cdea901261ce179ff, which bounds wire-supplied counts against the reply buffer, performs allocation-size and offset/length arithmetic in size_t/uint64_t, and adds a NULL check on the temporary allocation. Where updating cannot be done immediately, forcing or requiring SMB signing on connections used for share enumeration defeats the machine-in-the-middle variant of the attack, at the cost of incompatibility with servers that do not support signing and of extra per-message overhead; the malicious-server variant remains only if a client application calls smb2_share_enum_async() against an untrusted host, so avoiding share enumeration against untrusted or unverified servers removes exposure, with the trade-off that legitimate enumeration functionality is lost. Vendor and tracking details are at https://github.com/sahlberg/libsmb2/issues/496 and https://www.vulncheck.com/advisories/libsmb2-before-6.3-integer-overflow-in-dce-rpc-ndr-decoder-via-netrshareenum.

Affected VersionsENISA

libsmb2 0 <6.3

Affected Packages

euvd libsmb2 fix: 6.3

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

libsmb2 is a client/server C library implementing SMB2/SMB3, including DCE/RPC over SMB2 named pipes used for operations such as share enumeration on \\srvsvc. The vulnerable code sits in the NDR (Network Data Representation) decoder in lib/dcerpc.c, where array counts and string lengths are taken directly from the wire. The confirmed root cause class is CWE-190, integer overflow or wraparound: in dcerpc_carray_coder the heap allocation is computed as carray->max_count * elem_size, a multiplication that can wrap to a small size when max_count is attacker-chosen, so subsequent decoding writes past the allocation; in dcerpc_decode_utf16 the bounds check *offset + s->actual_count * 2 > iov->len is likewise performed in 32-bit arithmetic and can wrap, permitting out-of-bounds reads. The upstream commit a79f6914cb5ed3f74293d15cdea901261ce179ff fixes this by rejecting counts larger than the reply buffer (p > iov->len), performing the allocation-size and offset/length arithmetic in size_t/uint64_t, and adding a NULL check on the temporary allocation. Reachability is narrow: the flaw is only exercised when the client performs NetrShareEnum share enumeration against a hostile or spoofed server, and only when the SMB session is unsigned, which is what enables the machine-in-the-middle injection path. Signing enforcement defeats the MITM variant. The confirmed impact is heap out-of-bounds read/write; code execution is not established in the available sources.

Know when Libsmb2 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 (VulnCheck) PRIMARY 7.2 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.6 HIGH

Attacker is a remote malicious or MITM server needing no privileges (PR:N) but the victim client must initiate share enumeration (UI:R); heap corruption yields a crash (A:H) with limited read/write disclosure (C:L/I:L).

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

DescriptionCVE.org

libsmb2 before 6.3 contains integer overflow vulnerabilities in the DCE/RPC NDR decoder in lib/dcerpc.c that allow heap out-of-bounds reads and writes. A malicious SMB server or machine-in-the-middle on unsigned connections can send crafted NetrShareEnum replies with wrapping actual_count or max_count values when clients call smb2_share_enum_async(), corrupting heap memory.

Executive ViewAI

Why It Matters

CVE-2026-115505 is a high-severity heap memory corruption flaw in libsmb2 (before 6.3) that a malicious SMB server or network attacker can trigger during share enumeration, potentially compromising client systems. Leadership should prioritize this week's remediation because successful exploitation could lead to data breaches or system downtime, and the library is commonly embedded in storage and backup products.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

Prevalence
Low
niche SMB client library, mostly embedded in media/streaming apps
Exploit
POC
Public exploit code exists
Data Quality
4 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 Yes
EPSS N/A
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
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

56
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +36
PoC: +20
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.

Integer overflow occurs when an arithmetic operation produces a result that exceeds the maximum value a given integer type can store.

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