CVE-2026-53181
Analyzed Analyzed - Analysis Complete

Buffer Overflow in Linux Kernel vsock/vmci

Vulnerability report for CVE-2026-53181, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-06-25

Last updated on: 2026-07-06

Assigner: kernel.org

Description

In the Linux kernel, the following vulnerability has been resolved: vsock/vmci: fix sk_ack_backlog leak on failed handshake When vmci_transport_recv_connecting_server() returns an error, vmci_transport_recv_listen() calls vsock_remove_pending() but never calls sk_acceptq_removed(). This leaves sk_ack_backlog incremented permanently. Repeated handshake failures (malformed packets, queue pair alloc failure, event subscribe failure) cause sk_ack_backlog to climb toward sk_max_ack_backlog. Once it reaches the limit the listener permanently refuses all new connections with -ECONNREFUSED, a silent denial of service requiring a process restart to recover. The two existing sk_acceptq_removed() calls in af_vsock.c do not cover this path: line 764 checks vsock_is_pending() which returns false after vsock_remove_pending(), and line 1889 is only reached on successful accept(). Fix by balancing sk_acceptq_added() with sk_acceptq_removed() on the error path.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-06-25
Last Modified
2026-07-06
Generated
2026-07-15
AI Q&A
2026-06-25
EPSS Evaluated
2026-07-14
NVD
EUVD

Affected Vendors & Products

Showing 13 associated CPEs
Vendor Product Version / Range
linux linux_kernel 7.1
linux linux_kernel 7.1
linux linux_kernel 7.1
linux linux_kernel 7.1
linux linux_kernel From 5.16 (inc) to 6.1.176 (exc)
linux linux_kernel From 6.2 (inc) to 6.6.143 (exc)
linux linux_kernel From 5.11 (inc) to 5.15.210 (exc)
linux linux_kernel From 6.13 (inc) to 6.18.36 (exc)
linux linux_kernel From 6.7 (inc) to 6.12.94 (exc)
linux linux_kernel From 6.19 (inc) to 7.0.13 (exc)
linux linux_kernel 7.1
linux linux_kernel 7.1
linux linux_kernel From 3.9 (inc) to 5.10.259 (exc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-401 The product does not sufficiently track and release allocated memory after it has been used, making the memory unavailable for reallocation and reuse.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability exists in the Linux kernel's vsock/vmci component. It occurs because when the function vmci_transport_recv_connecting_server() returns an error, the subsequent call to vsock_remove_pending() does not properly balance the socket backlog counters by calling sk_acceptq_removed(). This causes the sk_ack_backlog counter to increase permanently.

Repeated handshake failures, such as those caused by malformed packets or allocation failures, cause the sk_ack_backlog to grow until it reaches its maximum limit (sk_max_ack_backlog). Once this limit is reached, the listener refuses all new connections silently by returning an ECONNREFUSED error, effectively causing a denial of service that requires restarting the process to recover.

The fix involves ensuring that sk_acceptq_added() and sk_acceptq_removed() calls are balanced even on error paths to prevent the backlog from permanently increasing.

Impact Analysis

This vulnerability can cause a denial of service condition on systems using the affected Linux kernel vsock/vmci component. Specifically, repeated handshake failures can cause the socket backlog to fill up and permanently refuse new incoming connections.

As a result, services relying on these connections will become unavailable until the affected process is restarted, potentially causing downtime and disruption.

Mitigation Strategies

The vulnerability causes a permanent increment of sk_ack_backlog on repeated handshake failures, leading to a silent denial of service where the listener refuses new connections until the process is restarted.

An immediate mitigation step is to restart the affected process to recover from the denial of service condition.

For a permanent fix, update the Linux kernel to a version where the issue is resolved by balancing sk_acceptq_added() with sk_acceptq_removed() on the error path in the vsock/vmci code.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-53181. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart