Cloudanix VulnDB

CVE-2025-38190

None

CVSS

—

EPSS

0.2%

Published

Jul 4, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A bug in the Linux kernel's networking code can cause small amounts of memory to leak over time on systems using certain older network protocols, eventually affecting stability if left unpatched.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
High
Impact
Denial Of Service
Component
OS kernel
Class
Other
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Failure to revert sk_wmem_alloc accounting after atm_account_tx() when copy_from_iter_full() fails in vcc_sendmsg() leaves socket memory accounting permanently incremented, leaking socket resources.

Why it matters to the business

Gradual resource exhaustion on systems using ATM networking can lead to degraded performance or denial of service in long-running kernel environments, increasing operational overhead for affected Linux deployments.

How an attack unfolds

An attacker with local access sends specially crafted messages via vcc_sendmsg that trigger copy_from_iter_full failure after the initial accounting call, preventing the expected revert and accumulating un-reclaimed socket allocations over repeated attempts.

How to fix it

Update to fixed kernel commit 5e0d00992118e234ebf29d5145c1cc920342777e or later; for Chainguard packages upgrade kubernetes-csi-external-snapshotter-fips-8.2 and kubernetes-csi-external-snapshot-controller-fips-8.2 to 8.2.1-r5 or newer. Disable ATM if unused.

How to confirm the fix worked

Verify running kernel contains commit 5e0d00992118e234ebf29d5145c1cc920342777e via git log or uname; confirm Chainguard package versions match 8.2.1-r5 or above; test vcc_sendmsg failure paths do not increment sk_wmem_alloc permanently.

Typical attack path

  1. Obtain local access or container context on a vulnerable Linux kernel with ATM enabled
  2. Invoke vcc_sendmsg with data that causes copy_from_iter_full to fail after atm_account_tx
  3. Repeat to accumulate leaked sk_wmem_alloc entries without triggering atm_pop_raw
  4. Monitor for socket accounting exhaustion or related kernel memory pressure

How to detect it

Review kernel logs for repeated ATM sendmsg failures, monitor sk_wmem_alloc growth via /proc/net/sockstat or slabinfo, and inspect for processes repeatedly triggering vcc_sendmsg error paths without corresponding pops.

What your security team should do

  • Prioritize patching kernel and listed Chainguard packages within standard maintenance windows given low EPSS
  • Audit systems for ATM usage and disable the module if not required
  • Monitor kernel memory and socket accounting metrics for anomalous growth
  • Review container workloads for exposure to the affected kernel versions

The record

In the Linux kernel, the following vulnerability has been resolved: atm: Revert atm_account_tx() if copy_from_iter_full() fails. In vcc_sendmsg(), we account skb->truesize to sk->sk_wmem_alloc by atm_account_tx(). It is expected to be reverted by atm_pop_raw() later called by vcc->dev->ops->send(vcc, skb). However, vcc_sendmsg() misses the same revert when copy_from_iter_full() fails, and then we will leak a socket. Let's factorise the revert part as atm_return_tx() and call it in the failure path. Note that the corresponding sk_wmem_alloc operation can be found in alloc_tx() as of the blamed commit. $ git blame -L:alloc_tx net/atm/common.c c55fa3cccbc2c~

Affected packages

Ecosystem Package Introduced Fixed
Debian:11 linux 0 No fix
Debian:12 linux 0 No fix
Debian:13 linux 0 No fix
Debian:14 linux 0 6.12.35-1
Linux Kernel 2.6.12 5.4.295
Mageia:9 kernel 0 6.6.101-1.mga9
Mageia:9 kernel-linus 0 6.6.101-1.mga9
Mageia:9 kmod-virtualbox 0 7.1.10-7.mga9
Mageia:9 kmod-xtables-addons 0 3.24-83.mga9
Mageia:9 wireless-regdb 0 20250710-1.mga9
SUSE:Linux Enterprise High Availability Extension 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_15 0 1-150600.1.3.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_15 0 1-150600.13.3.2
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-64kb 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default-base 0 6.4.0-150600.23.70.1.150600.12.30.2
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-source 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-zfcpdump 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-docs 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-obs-build 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-source 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-syms 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Legacy 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-source-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-syms-azure 0 6.4.0-150600.8.52.1
SUSE:Linux Enterprise Workstation Extension 15 SP6 kernel-default 0 6.4.0-150600.23.70.1
SUSE:Real Time Module 15 SP6 kernel-rt 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-rt_debug 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-source-rt 0 6.4.0-150600.10.52.1
SUSE:Real Time Module 15 SP6 kernel-syms-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 dtb-aarch64 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-64kb 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-debug 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-default 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-default-base 0 6.4.0-150600.23.70.1.150600.12.30.2
openSUSE:Leap 15.6 kernel-docs 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-kvmsmall 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-obs-build 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-obs-qa 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-rt_debug 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-source 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-source-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-source-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-syms 0 6.4.0-150600.23.70.1
openSUSE:Leap 15.6 kernel-syms-azure 0 6.4.0-150600.8.52.1
openSUSE:Leap 15.6 kernel-syms-rt 0 6.4.0-150600.10.52.1
openSUSE:Leap 15.6 kernel-zfcpdump 0 6.4.0-150600.23.70.1
openSUSE:Leap 16.0 dtb-aarch64 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-64kb 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-default 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-default-base 0 6.12.0-160000.6.1.160000.2.4
openSUSE:Leap 16.0 kernel-docs 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-kvmsmall 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-obs-build 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-obs-qa 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-rt 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-source 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-syms 0 6.12.0-160000.6.1
openSUSE:Leap 16.0 kernel-zfcpdump 0 6.12.0-160000.6.1

Related vulnerabilities