Executive brief
A vulnerability in the Linux kernel's networking component could allow a local user to crash the system. The issue occurs when the system handles specific communication packets (vsock/virtio) after a connection attempt is interrupted. This can lead to a system crash (NULL pointer dereference), impacting the availability of the affected machine or virtual environment.
Technical details
A NULL pointer dereference vulnerability exists in net/vmw_vsock/virtio_transport_common.c within the Linux kernel. The issue occurs when a socket is de-assigned or assigned to a different transport while packets are still being received. Specifically, if a connect() call is interrupted by a signal and a subsequent connect() fails, vsk->transport may be set to NULL. When virtio_transport_recv_pkt() later attempts to access this transport pointer without verifying its state relative to the current transport, it triggers a kernel panic. The fix introduces a check to discard packets if the socket state is not TCP_LISTEN and the assigned transport does not match the expected transport.
Affected products
- Linux Linux Kernel 5.5 to 5.15.176, 5.16 to 6.1.126, 6.2 to 6.6.73, 6.7 to 6.12.10
Timeline
- 2025-01-10: patched: Initial patch authored
- 2025-01-31: disclosed: CVE published
References
- https://git.kernel.org/stable/c/18a7fc371d1dbf8deff16c2dd9292bcc73f43040
- https://git.kernel.org/stable/c/2cb7c756f605ec02ffe562fb26828e4bcc5fdfc1
- https://git.kernel.org/stable/c/6486915fa661584d70e8e7e4068c6c075c67dd6d
- https://git.kernel.org/stable/c/677579b641af109613564460a4e3bdcb16850b61
- https://git.kernel.org/stable/c/88244163bc7e7b0ce9dd7bf4c8a563b41525c3ee
- https://git.kernel.org/stable/c/d88b249e14bd0ee1e46bbe4f456e22e01b8c68de
- https://lists.debian.org/debian-lts-announce/2025/03/msg00001.html