CVE-2021-47101

7.1 HIGH

📋 TL;DR

This vulnerability in the Linux kernel's ASIX USB Ethernet driver allows reading uninitialized memory when the asix_mdio_read() function receives less data than expected. This affects systems using ASIX USB Ethernet adapters with vulnerable kernel versions, potentially exposing sensitive kernel memory contents.

💻 Affected Systems

Products:
  • Linux kernel with ASIX USB Ethernet driver
Versions: Linux kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions using vulnerable kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems using ASIX USB Ethernet adapters (AX88172, AX88178, etc.) with the asix driver loaded.

📦 What is this software?

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

Linux Kernel by Linux

The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...

Learn more about Linux Kernel →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Information disclosure of kernel memory contents, potentially exposing sensitive data like cryptographic keys, process memory, or other system information to local attackers.

🟠

Likely Case

Kernel panic or system instability due to reading invalid memory addresses, leading to denial of service.

🟢

If Mitigated

Minimal impact with proper kernel hardening and memory protection features enabled.

🌐 Internet-Facing: LOW - This requires local access or USB device connection to exploit.
🏢 Internal Only: MEDIUM - Local attackers or malicious USB devices could exploit this on affected systems.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires local access and ability to interact with USB Ethernet device. No known public exploits at this time.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits 8035b1a2a37a29d8c717ef84fca8fe7278bc9f03 and d259f621c85949f30cc578cac813b82bb5169f56

Vendor Advisory: https://git.kernel.org/stable/c/8035b1a2a37a29d8c717ef84fca8fe7278bc9f03

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. For distributions: Use package manager (apt/yum/dnf) to update kernel package. 3. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable ASIX driver

linux

Prevent loading of vulnerable asix driver module

echo 'blacklist asix' >> /etc/modprobe.d/blacklist.conf
rmmod asix

Restrict USB device access

linux

Prevent unauthorized USB Ethernet device connections

usbguard generate-policy > /etc/usbguard/rules.conf
systemctl enable --now usbguard

🧯 If You Can't Patch

  • Disable or blacklist the asix kernel module to prevent driver loading
  • Implement strict USB device control policies to prevent unauthorized ASIX adapter connections

🔍 How to Verify

Check if Vulnerable:

Check if asix module is loaded: lsmod | grep asix AND check kernel version against distribution security advisories

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits: grep -q '8035b1a2a37a29d8c717ef84fca8fe7278bc9f03\|d259f621c85949f30cc578cac813b82bb5169f56' /proc/version_signature

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • KMSAN (Kernel Memory Sanitizer) error reports in dmesg
  • USB device connection logs for ASIX adapters

Network Indicators:

  • Unexpected USB Ethernet device connections

SIEM Query:

source="dmesg" AND "KMSAN" AND "asix" OR source="kernel" AND "panic" AND "asix"

🔗 References

📤 Share & Export