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

net/atm: fix slab-out-of-bounds read in vcc_setsockopt()

vcc_setsockopt() contained an ineffective optlen check:
if (__SO_LEVEL_MATCH(optname, level) && optlen != __SO_SIZE(optname))
return -EINVAL;

If __SO_LEVEL_MATCH(optname, level) evaluated to false (e.g. if the caller
passed a mismatched level), the length check optlen != __SO_SIZE(optname)
was short-circuited and bypassed. Execution then fell through to switch(optname),
calling copy_from_sockptr() assuming optval contained sufficient space.

Furthermore, even if level matched, a cgroup BPF setsockopt filter could shrink
optlen after entry. Because copy_from_sockptr() on kernel pointers uses memcpy(),
this leads to a KASAN slab-out-of-bounds read when optlen is smaller than the
expected structure size.

Fix this by using copy_safe_from_sockptr(), which unconditionally validates
that optlen is at least the expected size before copying. Also change the local
'value' variable type from 'unsigned long' to 'int' so that SO_SETCLP matches
its sizeof(int) ABI encoding on 64-bit systems.
Published: 2026-08-22
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: Information Disclosure
Action: Upgrade Kernel
AI Analysis

Impact

In the Linux kernel, a flaw in vcc_setsockopt() caused an ineffective length check on the socket option value. When the option name or protocol level did not match, the check was bypassed, and the kernel performed a memory copy that assumed a larger buffer than actually supplied. The result was a slab‑out‑of‑bounds read that could expose kernel memory contents. While the vulnerability does not directly grant code execution, read access to the kernel may disclose privileged secrets and create a pivot for further exploitation.

Affected Systems

All Linux kernel builds containing the unpatched atm driver are affected. No specific kernel version range is provided; the fix was merged into the mainline tree and applies to subsequent releases.

Risk and Exploitability

The exploit requires local kernel access; an attacker can influence the ATM socket through setsockopt in a user or BPF context, possibly truncating the buffer. The EPSS score is <1%, and the CVE is not listed in the CISA KEV catalog, indicating a low likelihood of exploitation. The CVSS score of 7.1 indicates a high risk for information disclosure. Still, attackers who manage to trigger the out‑of‑bounds read can obtain kernel memory data, and because the vulnerability occurs in privileged kernel code, it could be a stepping stone for privilege escalation.

Generated by OpenCVE AI on August 25, 2026 at 13:54 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a version that includes the ATM driver fix
  • Disable the ATM protocol stack if it is not required, eliminating the vulnerable code path
  • Review and adjust any BPF or cgroup filters that truncate setsockopt lengths to enforce correct option sizes

Generated by OpenCVE AI on August 25, 2026 at 13:54 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4777-1 linux security update
Debian DSA Debian DSA DSA-6466-1 linux security update
History

Tue, 25 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-805
References
Metrics threat_severity

None

threat_severity

Moderate


Tue, 25 Aug 2026 08:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-120
CWE-200

Tue, 25 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.1, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H'}


Sat, 22 Aug 2026 15:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: net/atm: fix slab-out-of-bounds read in vcc_setsockopt() vcc_setsockopt() contained an ineffective optlen check: if (__SO_LEVEL_MATCH(optname, level) && optlen != __SO_SIZE(optname)) return -EINVAL; If __SO_LEVEL_MATCH(optname, level) evaluated to false (e.g. if the caller passed a mismatched level), the length check optlen != __SO_SIZE(optname) was short-circuited and bypassed. Execution then fell through to switch(optname), calling copy_from_sockptr() assuming optval contained sufficient space. Furthermore, even if level matched, a cgroup BPF setsockopt filter could shrink optlen after entry. Because copy_from_sockptr() on kernel pointers uses memcpy(), this leads to a KASAN slab-out-of-bounds read when optlen is smaller than the expected structure size. Fix this by using copy_safe_from_sockptr(), which unconditionally validates that optlen is at least the expected size before copying. Also change the local 'value' variable type from 'unsigned long' to 'int' so that SO_SETCLP matches its sizeof(int) ABI encoding on 64-bit systems.
Title net/atm: fix slab-out-of-bounds read in vcc_setsockopt()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-25T05:41:33.932Z

Reserved: 2026-08-15T05:44:03.926Z

Link: CVE-2026-74689

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-22T16:16:43.303

Modified: 2026-08-25T06:18:51.960

Link: CVE-2026-74689

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-22T00:00:00Z

Links: CVE-2026-74689 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-25T14:00:17Z

Weaknesses
  • CWE-120

    Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')

  • CWE-200

    Exposure of Sensitive Information to an Unauthorized Actor

  • CWE-805

    Buffer Access with Incorrect Length Value