CVE-2025-39986
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 |
|---|---|---|
| linux | linux_kernel | From 5.15.160 (inc) to 5.16 (inc) |
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 sun4i_can driver. The driver does not properly implement the ndo_change_mtu() operation, allowing an attacker to set an invalid MTU value (e.g., 9999) on the CAN interface. By doing so, the attacker can open a PF_PACKET socket with the ETH_P_CANXL protocol and inject malicious CAN XL frames. The driver misinterprets these frames due to insufficient validation, leading to a buffer overflow when processing the frame's length field. This occurs because the driver uses the flags field as a length without proper checks, causing memory corruption.
How can this vulnerability impact me? :
This vulnerability can lead to a buffer overflow in the sun4i_can driver, which may allow an attacker to execute arbitrary code, cause a denial of service (system crash), or compromise the integrity and stability of the affected system. Since the attacker can inject malicious CAN XL frames directly, it could be exploited remotely or locally to disrupt system operations or gain elevated privileges.
What immediate steps should I take to mitigate this vulnerability?
The immediate mitigation step is to ensure that the net_device_ops->ndo_change_mtu() is populated for the sun4i_can driver to prevent setting an invalid MTU larger than CAN_MTU. This prevents attackers from configuring an invalid MTU and injecting malicious CAN XL frames that cause buffer overflow. Until a patch is applied, avoid allowing MTU changes on can interfaces to values larger than CAN_MTU.