CVE-2025-39680

7.1 HIGH

📋 TL;DR

This CVE describes an out-of-bounds write vulnerability in the Linux kernel's RTL9300 I2C driver. An attacker with local access can trigger memory corruption by providing specially crafted data to the i2c-dev interface. This affects systems using the RTL9300 I2C controller driver.

💻 Affected Systems

Products:
  • Linux kernel with RTL9300 I2C driver
Versions: Kernel versions before the fix commits (specific versions depend on distribution backports)
Operating Systems: Linux distributions using vulnerable kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only vulnerable if the rtl9300_i2c driver is loaded and i2c-dev interface is accessible.

📦 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 →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Local privilege escalation to kernel-level code execution, potentially leading to full system compromise.

🟠

Likely Case

Kernel panic causing system crash/denial of service, or limited memory corruption.

🟢

If Mitigated

No impact if proper kernel hardening (like SMEP/SMAP) prevents escalation, or if driver not loaded.

🌐 Internet-Facing: LOW - Requires local access to the i2c-dev interface.
🏢 Internal Only: MEDIUM - Local attackers or compromised low-privilege accounts could exploit this.

🎯 Exploit Status

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

Requires local access and knowledge of i2c-dev interface. Similar to referenced CVEs.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing commits 071e43fcba5ddd9a7813e6cc0aa10299eae41b21 or 57f312b955938fc4663f430cb57a71f2414f601b

Vendor Advisory: https://git.kernel.org/stable/c/071e43fcba5ddd9a7813e6cc0aa10299eae41b21

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution. 2. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable RTL9300 I2C driver

linux

Prevent loading of vulnerable driver module

echo 'blacklist rtl9300_i2c' >> /etc/modprobe.d/blacklist-rtl9300.conf
rmmod rtl9300_i2c

Restrict i2c-dev access

linux

Limit access to i2c-dev interface to trusted users only

chmod 600 /dev/i2c-*
chown root:root /dev/i2c-*

🧯 If You Can't Patch

  • Implement strict access controls on /dev/i2c-* devices
  • Enable kernel hardening features like SMEP/SMAP/KASLR

🔍 How to Verify

Check if Vulnerable:

Check if rtl9300_i2c module is loaded: lsmod | grep rtl9300_i2c

Check Version:

uname -r

Verify Fix Applied:

Check kernel version includes fix commits or is newer than vulnerable versions

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops/panic messages
  • Unexpected i2c-dev access in audit logs

Network Indicators:

  • None - local vulnerability

SIEM Query:

Process accessing /dev/i2c-* from untrusted users

🔗 References

📤 Share & Export