CVE-2025-39701

7.8 HIGH

📋 TL;DR

This CVE describes a vulnerability in the Linux kernel's ACPI Platform Firmware Runtime Update (pfr_update) driver where the wrong version check is used during driver updates. This could allow malicious firmware updates to bypass security checks, potentially leading to system compromise. It affects Linux systems with ACPI firmware update capabilities.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific affected versions not specified in CVE description; check kernel commit references for exact ranges
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires ACPI firmware update functionality to be present and accessible. Systems without ACPI or with restricted firmware update permissions may not be vulnerable.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker with local access could install malicious firmware updates that bypass security checks, potentially leading to persistent rootkit installation, system takeover, or hardware-level compromise.

🟠

Likely Case

Malicious firmware updates could be installed by local attackers, leading to privilege escalation, persistence mechanisms, or system instability.

🟢

If Mitigated

With proper access controls and firmware validation, the impact is limited to denial of service from failed updates or system instability.

🌐 Internet-Facing: LOW - This requires local access to the system to exploit.
🏢 Internal Only: MEDIUM - Internal attackers with local access could exploit this for privilege escalation or persistence.

🎯 Exploit Status

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

Exploitation requires local access and ability to trigger firmware updates. The vulnerability is in version checking logic, not a direct code execution flaw.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Check kernel commits: 79300ff532bccbbf654992c7c0863b49a6c3973c, 8151320c747efb22d30b035af989fed0d502176e, 908094681f645d3a78e18ef90561a97029e2df7b, b00219888c11519ef75d988fa8a780da68ff568e, cf0a88124e357bffda487cbf3cb612bb97eb97e4

Vendor Advisory: https://git.kernel.org/stable/c/79300ff532bccbbf654992c7c0863b49a6c3973c

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Check with your distribution vendor for patched kernel packages. 3. Reboot system after kernel update.

🔧 Temporary Workarounds

Restrict firmware update permissions

linux

Limit access to firmware update functionality to privileged users only

chmod 600 /sys/firmware/acpi/pfr_update
setfacl -m u:root:rw /sys/firmware/acpi/pfr_update

Disable ACPI firmware updates if not needed

linux

Prevent firmware updates through kernel module blacklisting or boot parameters

echo 'blacklist pfr_update' >> /etc/modprobe.d/blacklist.conf
Add 'acpi.pfr_update=0' to kernel boot parameters

🧯 If You Can't Patch

  • Implement strict access controls on firmware update interfaces
  • Monitor for unauthorized firmware update attempts and system changes

🔍 How to Verify

Check if Vulnerable:

Check if pfr_update driver is loaded and accessible: lsmod | grep pfr_update and check /sys/firmware/acpi/pfr_update permissions

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes fix commits: uname -r and check kernel changelog for commit hashes

📡 Detection & Monitoring

Log Indicators:

  • Unexpected firmware update attempts in kernel logs
  • ACPI firmware update errors or warnings
  • Unauthorized access to /sys/firmware/acpi/pfr_update

Network Indicators:

  • None - this is a local vulnerability

SIEM Query:

source="kernel" AND ("pfr_update" OR "firmware update" OR "ACPI update")

🔗 References

📤 Share & Export