Cloudanix VulnDB

CVE-2025-38110

None

CVSS

—

EPSS

0.2%

Published

Jul 3, 2025

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in the Linux kernel's network device handling lets an attacker with local access read or corrupt memory they should not reach, which could allow them to take over the system.

Exploitation
Local Privilege
Attacker needs
Local User
Complexity
Low
Impact
Data Tampering
Component
OS kernel
Class
Improper Input Validation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Missing validation of mdio address parameter in C45 mdiobus ioctl allows values exceeding PHY_MAX_ADDR, resulting in out-of-bounds read/write against the stats array.

Why it matters to the business

Attackers with local access can trigger memory corruption or information disclosure on Linux systems managing network PHY devices, increasing risk of kernel-level compromise especially in environments with high downstream kernel dependents.

How an attack unfolds

An attacker invokes publicly available tools such as mdio-tools to issue a C45 read or write ioctl supplying an mdio address greater than 31; the kernel accepts the value without bounds checking and performs an out-of-bounds access into the internal stats array, enabling memory corruption or leakage. Similar privilege-escalation patterns observed in related Linux kernel flaws have been leveraged by advanced spyware campaigns.

How to fix it

Update the Linux kernel to commit abb0605ca00979a49572a6516f6db22c3dc57223 or later; for affected nri-postgresql packages upgrade to version 2.18.0-r1 on both Chainguard and Wolfi distributions. Rebuild and reboot systems after applying the fixed kernel image.

How to confirm the fix worked

Confirm the running kernel contains commit abb0605ca00979a49572a6516f6db22c3dc57223 via uname or kernel build logs; test that ioctl calls with mdio addresses >= 32 are rejected before statistics collection occurs.

Typical attack path

  1. Obtain local execution on a target Linux system exposing mdiobus ioctls
  2. Invoke mdio-tools or equivalent to craft a C45 read/write request with mdio address >= 32
  3. Trigger the unvalidated access path that indexes the stats array out of bounds
  4. Use resulting memory corruption or disclosure to escalate privileges or exfiltrate data

How to detect it

Review system call audit logs for unusual ioctl invocations against mdiobus devices; correlate with process execution of mdio-tools or similar utilities. Threat actor references indicate monitoring for follow-on privilege escalation activity after initial access.

What your security team should do

  • Immediately schedule kernel upgrades to the listed fixed commits or package versions 2.18.0-r1
  • Restrict local access to users who must perform mdio operations until patches are deployed
  • Monitor EPSS trend (currently rising) and reassess exploitation likelihood weekly

The record

In the Linux kernel, the following vulnerability has been resolved: net/mdiobus: Fix potential out-of-bounds clause 45 read/write access When using publicly available tools like 'mdio-tools' to read/write data from/to network interface and its PHY via C45 (clause 45) mdiobus, there is no verification of parameters passed to the ioctl and it accepts any mdio address. Currently there is support for 32 addresses in kernel via PHY_MAX_ADDR define, but it is possible to pass higher value than that via ioctl. While read/write operation should generally fail in this case, mdiobus provides stats array, where wrong address may allow out-of-bounds read/write. Fix that by adding address verification before C45 read/write operation. While this excludes this access from any statistics, it improves security of read/write operation.

Affected packages

Ecosystem Package Introduced Fixed
AlmaLinux:10 kernel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-devel-matched 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-debug-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-devel-matched 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-64k-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-abi-stablelists 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-cross-headers 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-devel-matched 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-debug-uki-virt 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-devel-matched 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-doc 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-headers 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-debug-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-64k-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-kvm 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-debug-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-kvm 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-rt-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-tools 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-tools-libs 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-tools-libs-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-uki-virt 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-uki-virt-addons 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-devel 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-devel-matched 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules-core 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 kernel-zfcpdump-modules-extra 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 libperf 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 perf 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 python3-perf 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 rtla 0 6.12.0-55.24.1.el10_0
AlmaLinux:10 rv 0 6.12.0-55.24.1.el10_0
AlmaLinux:9 kernel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-64k-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-abi-stablelists 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-cross-headers 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-debug-uki-virt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-doc 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-headers 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-64k-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-kvm 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-debug-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-kvm 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-rt-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools-libs 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-tools-libs-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-uki-virt 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-uki-virt-addons 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-devel 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-devel-matched 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules-core 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 kernel-zfcpdump-modules-extra 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 libperf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 perf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 python3-perf 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 rtla 0 5.14.0-570.30.1.el9_6
AlmaLinux:9 rv 0 5.14.0-570.30.1.el9_6
Debian:13 linux 0 No fix
Linux Kernel 6.3.0 6.6.94
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.65.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-default 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6-RT_Update_14 0 1-150600.1.5.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_11 0 7-150600.2.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_14 0 1-150600.13.3.4
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_4 0 19-150600.2.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_6 0 14-150600.2.1
SUSE:Linux Enterprise Live Patching 15 SP6 kernel-livepatch-SLE15-SP6_Update_9 0 9-150600.2.1
SUSE:Linux Enterprise Live Patching 15 SP7 kernel-livepatch-SLE15-SP7-RT_Update_3 0 1-150700.1.5.1
SUSE:Linux Enterprise Live Patching 15 SP7 kernel-livepatch-SLE15-SP7_Update_1 0 6-150700.2.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-64kb 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-default-base 0 6.4.0-150600.23.65.1.150600.12.28.4
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-source 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Basesystem 15 SP6 kernel-zfcpdump 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-coco_debug 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-source-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Confidential Computing Technical Preview 15 SP6 kernel-syms-coco 0 6.4.0-15061.28.coco15sp6.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-docs 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-obs-build 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-source 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Development Tools 15 SP6 kernel-syms 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Legacy 15 SP6 kernel-default 0 6.4.0-150600.23.65.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-azure 0 6.4.0-150600.8.48.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-source-azure 0 6.4.0-150600.8.48.1
SUSE:Linux Enterprise Module for Public Cloud 15 SP6 kernel-syms-azure 0 6.4.0-150600.8.48.1
SUSE:Linux Enterprise Workstation Extension 15 SP6 kernel-default 0 6.4.0-150600.23.65.1
SUSE:Real Time Module 15 SP6 kernel-rt 0 6.4.0-150600.10.49.1
SUSE:Real Time Module 15 SP6 kernel-rt_debug 0 6.4.0-150600.10.49.1
SUSE:Real Time Module 15 SP6 kernel-source-rt 0 6.4.0-150600.10.49.1
SUSE:Real Time Module 15 SP6 kernel-syms-rt 0 6.4.0-150600.10.49.1
SUSE:Real Time Module 15 SP7 kernel-rt 0 6.4.0-150700.7.13.1
SUSE:Real Time Module 15 SP7 kernel-source-rt 0 6.4.0-150700.7.13.1
SUSE:Real Time Module 15 SP7 kernel-syms-rt 0 6.4.0-150700.7.13.1
openSUSE:Leap 15.6 dtb-aarch64 0 6.4.0-150600.23.65.1
openSUSE:Leap 15.6 kernel-64kb 0 6.4.0-150600.23.65.1
openSUSE:Leap 15.6 kernel-azure 0 6.4.0-150600.8.48.1
openSUSE:Leap 15.6 kernel-debug 0 6.4.0-150600.23.65.1
openSUSE:Leap 15.6 kernel-default 0 6.4.0-150600.23.65.1
openSUSE:Leap 15.6 kernel-default-base 0 6.4.0-150600.23.65.1.150600.12.28.4

Related vulnerabilities