CVE-2022-49659 can: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits
The Linux kernel CAN driver mishandles 16-bit timestamps, causing potential logic errors in RX-offload processing.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-49659?
CVE-2022-49659 is a medium-severity vulnerability in Linux kernel, published on 26 Feb 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
can: m_can: m_can_{read_fifo,echo_tx_event}(): shift timestamp to full 32 bits
In commit 1be37d3b0414 ("can: m_can: fix periph RX path: use rx-offload to ensure skbs are sent from softirq context") the RX path for peripheral devices was switched to RX-offload.
Received CAN frames are pushed to RX-offload together with a timestamp. RX-offload is designed to handle overflows of the timestamp correctly, if 32 bit timestamps are provided.
The timestamps of m_can core are only 16 bits wide. So this patch shifts them to full 32 bit before passing them to RX-offload.
Which versions are affected by CVE-2022-49659?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2022-49659?
Apply the vendor's patch.
Is CVE-2022-49659 being exploited?
There is no known exploitation of CVE-2022-49659 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as DEBIAN-CVE-2022-49659, GHSA-2cw3-cw9w-9ww5, UBUNTU-CVE-2022-49659.