CVE-2025-39988
BaseFortify
Publication date: 2025-10-15
Last updated on: 2025-10-16
Assigner: kernel.org
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| etas | es58x | * |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-UNKNOWN |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in the Linux kernel's etas_es58x CAN driver. Because the driver does not implement the ndo_change_mtu() function, an attacker can set an invalid MTU value (e.g., 9999) on a CAN network interface. This allows the attacker to send malicious CAN XL frames via a PF_PACKET socket that bypass normal CAN framework checks. The driver misinterprets these frames as CAN FD frames, leading to a buffer overflow when copying data, potentially causing memory corruption.
How can this vulnerability impact me? :
The vulnerability can lead to a buffer overflow in the CAN driver, which may cause memory corruption, crashes, or potentially allow an attacker to execute arbitrary code or disrupt the normal operation of the affected system. This can compromise system stability and security, especially in environments relying on CAN communication.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
You can detect this vulnerability by checking if any CAN network interface has an invalid MTU set that exceeds the allowed CAN_MTU or CANFD_MTU values. For example, use the command: ip link show can0 to check the MTU of the CAN interface. If the MTU is set to an unusually high value like 9999, it indicates a potential exploitation attempt. Additionally, monitoring for PF_PACKET sockets opened with the ETH_P_CANXL protocol could indicate malicious activity, but no specific commands for this are provided.
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation involves ensuring that the CAN driver populates the ndo_change_mtu() operation in net_device_ops to prevent setting an invalid MTU larger than CAN_MTU or CANFD_MTU. Until a patch is applied, avoid allowing MTU changes on CAN interfaces to values larger than the maximum allowed. Restrict or monitor the use of PF_PACKET sockets with ETH_P_CANXL protocol to prevent injection of malicious CAN XL frames.