CVE-2026-86847 in Red Hatinfo

Summary

by MITRE • 10/14/2026

A flaw was found in DPDK lib/vhost vhost-crypto. Write-back chain cleanup can follow an uninitialized next pointer when mapping a guest descriptor fails, causing the host vhost-crypto process to hang or crash.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Analysis

by VulDB Data Team • 10/14/2026

The vulnerability identified within the Data Plane Development Kit (DPDK) specifically affects the libvhost component's crypto subsystem, known as vhost-crypto. This flaw centers on improper memory management during the processing of guest virtual machine descriptors. In a typical virtio-based architecture, the host and guest communicate through descriptor rings where data buffers are mapped for direct access by hardware or software accelerators. When the mapping process fails due to issues such as invalid physical addresses, insufficient permissions, or resource exhaustion, the system must handle this error gracefully without compromising stability. However, in the affected implementation of vhost-crypto, the cleanup logic responsible for unwinding write-back chains does not adequately verify pointer validity before dereferencing them.

The core technical flaw lies in the handling of uninitialized pointers during error recovery paths. When a guest descriptor fails to map correctly, the code attempts to clean up any partially constructed state associated with that operation. This involves traversing a chain of descriptors using next-pointers stored within each entry. If an earlier step in this process failed or was skipped due to the initial mapping error, certain entries in the write-back chain may retain garbage values from previous operations rather than being explicitly initialized to null or safe defaults. Consequently, when the cleanup routine attempts to follow these uninitialized next pointers, it accesses invalid memory locations. This leads directly to undefined behavior, manifesting as a segmentation fault that crashes the host vhost-crypto process or causes the application to hang indefinitely while waiting for resources that will never be released due to the corrupted state.

From an operational perspective, this vulnerability poses a significant risk to system availability and integrity. Since DPDK is often deployed in high-performance networking environments involving virtualization, such as NFV (Network Function Virtualization) or cloud infrastructure, stability is paramount. A crash in the vhost-crypto process can disrupt all associated virtual machines relying on that specific crypto offload path. This results in a denial of service for those workloads, potentially causing data loss if ongoing cryptographic operations are interrupted without proper state persistence. Furthermore, because this occurs during descriptor processing triggered by guest actions, it represents an attack surface where a malicious or misconfigured guest could intentionally trigger mapping failures to destabilize the host hypervisor environment.

This issue aligns with CWE-94, Improper Control of Generation of Code (Code Injection), specifically in the context of using uninitialized variables leading to arbitrary code execution potential through control flow hijacking via corrupted pointers. It also relates closely to CWE-824: Access of Uninitialized Pointer and CWE-362: Concurrent Execution Using Shared Resource with Improper Synchronization if race conditions contribute to the state corruption, though the primary classification remains improper pointer handling during error recovery. In terms of MITRE ATT&CK mapping, this vulnerability facilitates techniques associated with T1059 Command and Scripting Interpreter or more broadly impacts Availability (TA004) by causing service disruption through process termination.

Mitigation strategies should focus on both immediate patching and architectural hardening. The primary remedy is to apply the upstream DPDK patches that address this specific logic error in libvhost, ensuring that all pointer fields involved in write-back chains are explicitly initialized before use and validated during traversal. Developers implementing custom virtio drivers or crypto offload solutions should adopt defensive programming practices by validating every pointer dereference against null values and checking return codes from memory mapping functions rigorously. Additionally, enabling core dumps and utilizing tools like Valgrind or AddressSanitizer in development environments can help detect similar uninitialized access patterns before deployment. For production systems, isolating vhost-crypto processes using containerization or strict resource limits can contain the blast radius of a potential crash, preventing cascading failures across other critical network functions hosted on the same physical node.

Responsible

Redhat

Reservation

09/08/2026

Disclosure

10/14/2026

Moderation

accepted

EPSS

0.00000

KEV

no

Activities

low

Sources

Interested in the pricing of exploits?

See the underground prices here!