CVE-2026-99059
HighCVSS 7.7Exploitation Probability (EPSS)
Low risk39th percentile - higher than 39% of all known CVEs
Summary
In the Linux kernel, the WireGuard noise subsystem has a race condition when two threads process the same response message, potentially reusing handshake state and creating a new session from stale state. The issue is considered very difficult to trigger in practice and was fixed by comparing the ephemeral private key with the peer's latest handshake state.
Risk Assessment
Exploitation is unlikely in practice, but it could theoretically cause incorrect WireGuard session state and affect tunnel confidentiality or integrity. Organizations using WireGuard should treat this as a kernel bug requiring patching.
Recommendation
Update the Linux kernel to a version containing the fix for CVE-2026-99059. If immediate patching is not possible, limit WireGuard exposure and monitor for unusual session behavior.
Related vulnerabilities
- CVE-2026-65555Critical
The Uncanny Toolkit for LearnDash plugin (through version 3.8.2) contains an incorrect privilege assignment vulnerability that allows privilege escalation. A low-privileged user can gain access to functionality reserved for higher roles.
- CVE-2026-119481Critical
The JetFormBuilder plugin (through version 3.6.7.1) contains an incorrect privilege assignment vulnerability enabling privilege escalation. A low-privileged user can perform actions reserved for higher roles.
- CVE-2026-114425Critical
SEPPmail Secure Email Gateway before 15.1.1 trusts a file path supplied in externally provided Large File Transfer attachment metadata. An unauthenticated remote sender can cause the mail-processing worker to disclose, move, or delete an accessible regular file when LFT is enabled and the message reaches an affected secure-mail processing path. The validated workers ran as root.
- CVE-2026-114424Critical
SEPPmail Secure Email Gateway before 15.1.1 can evaluate attacker-influenced replacement text as Perl code in sender or recipient replacement rules. An unauthenticated remote sender can execute operating-system commands in the mail-processing worker context when an active rule uses message-derived replacement data and its search condition matches. The validated worker context was root.
- CVE-2026-77690High
ZohoCorp ManageEngine Key Manager Plus versions before 7151 were vulnerable to a Command Injection vulnerability that allowed authenticated users with certificate deployment privileges to execute arbitrary commands through specially crafted input when configuring a deployment target.
- CVE-2026-121802Critical
@better-auth/expo before 1.7.16 signs a caller-supplied state value without verifying that it was issued by the server. This allows account-takeover outcomes, such as unauthenticated changes of any account's email address.
- CVE-2026-121615Critical
Linksys E5600 1.1.0.26 contains an improper authentication vulnerability in /cgi-bin/mesh_login.cgi (Login Handler). The attack can be launched remotely and the exploit has been publicly disclosed. The vendor did not respond and the product is no longer supported.
- CVE-2026-121609Critical
A vulnerability was identified in the Qihoo 360 Whole Home Router M5 version 4.0.17.1566 within the boot script /etc/init.d/mpt (Home function). The issue involves hard-coded credentials. The exploit is publicly available and remote exploitation is possible.
- CVE-2026-121607Critical
A vulnerability was found in Qihoo 360 D603-2, D600-2, D606-6 and D706 up to version 6.4.9 in the testspeed_command function of /fs2/bin/iscm. Manipulating the host argument results in OS command injection. The attack can be initiated remotely and the exploit has been made public.
- CVE-2026-121606Critical
A vulnerability was found in Qihoo 360 devices (models D621-2, D603-2, D600-2, D619, D606-6 and D706 up to 6.4.9) in the verify_sign function of fs2/bin/iscm responsible for firmware signature verification. Manipulating the sign argument leads to improper verification of cryptographic signatures. The attack can be launched remotely and the exploit has been publicly disclosed.
Original NVD description (English source)
In the Linux kernel, the following vulnerability has been resolved: wireguard: noise: reject response consumption after intermediate initiation Two threads begin processing the identical response message, received twice. The first thread, A, runs. While it's running, the second one, B, gets partway through, and during that slow calculation, or even while blocking on down_write(), A completes and then also a handshake initiation that's already been queued up runs in thread C, which itself takes that same down_write(). The handshake initiation creation succeeds, and sets the state back to waiting-for-response, and calls up_write(), at which point thread B resumes, because either its finished its calculations or was finally allowed to acquire down_write(). Thread B then copies the state back to the peer, and begins a new session, using that state, which is the same session as the one made in thread A. Thread A Thread B Thread C down_read() sA = handshake->state memcpy(cA, handshake->crypto) up_read() if (sA != 1) goto fail slow_crypto(cA) down_read() sB = handshake->state memcpy(cB, handshake->crypto) up_read() if (sB != 1) goto fail slow_crypto(cB) down_write() if (sA != handshake->state) goto fail memcpy(handshake->crypto, cA) handshake->state = 2 up_write() down_write() if (handshake->state != 2) goto fail derive_session(handshake->crypto) up_write() down_write() slow_crypto(handshake->crypto) handshake->state = 1 up_write() down_write() if (sB != handshake->state) goto fail memcpy(handshake->crypto, cB) handshake->state = 2 up_write() down_write() if (handshake->state != 2) goto fail derive_session(handshake->crypto) up_write() This seems basically impossible to hit in a meaningful way in practice, but ensure that it absolutely cannot happen by comparing the ephemeral private key that's on the stack with the latest one that the peer's handshake state has.
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

