Vulnerability · CVE-2026-99059
wireguard: noise: reject response consumption after intermediate initiation
Published Oct 23, 2026 · catalog updated Oct 25, 2026 · Linux Linux
Last checked Nov 6, 2026. A connected source was read within the last 7 days.
Check if you run it
No confirmed exploitation is on record for CVE-2026-99059. EPSS is 0.51%. Act only if a listed version of Linux Linux is installed.
Gaps on this record
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
Same product and reporting
- CVE-2026-100082 · Unknown
- CVE-2026-100080 · Unknown
- CVE-2026-100081 · Unknown
- CVE-2026-99260 · Medium
- CVE-2026-99259 · Medium
- Severity
- High7.7
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- 0.51%
- Remediation
- Advisory link
- Affected products
- Debian:12 linux · Debian:13 linux · Debian:14 linux · vendor Linux Linux
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.
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- Debian:12 linux6.1.106-1, 6.1.106-2, 6.1.106-3
- Debian:13 linux0 → 6.12.113-1
- Debian:14 linux0 → 7.2.11-1
- vendor Linux Linuxversion unspecified
How to fix CVE-2026-99059
Upgrade
CVE-2026-99059 lists a fix boundary at 6.12.113-1. Compare the installed build with that boundary before you change production.
Version check
Fixed in 6.12.113-1 · 4 other ranges on the advisory
Advisory
Open the cve_org record and follow its fix.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
No confirmed exploitation is on record for CVE-2026-99059. EPSS is 0.51%. Act only if a listed version of Linux Linux is installed.
Which versions are affected?
Compare what you have installed with 6.1.106-1, 6.1.106-2, 6.1.106-3, 0 → 6.12.113-1, 0 → 7.2.11-1. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
No weakness class is stored. EPSS 0.51%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Technology hubs
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Oct 23, 2026 · Tenable CVE Database
Detected
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 t
Oct 24, 2026 · CVE.org
Updated
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 t
Oct 25, 2026 · OpenSSF OSV / OSV Scanner
Fix available
linux fixed in 6.12.113-1; linux fixed in 7.2.11-1
Oct 25, 2026 · OpenSSF OSV / OSV Scanner
Fix available
linux fixed in 6.12.113-1
Oct 25, 2026 · OpenSSF OSV / OSV Scanner
Fix available
linux fixed in 7.2.11-1
Oct 25, 2026 · OpenSSF OSV / OSV Scanner
Updated
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 t
Sources
- CVE.orgVulnerability recordCVE-2026-99059
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 o
cve.org - FIRST EPSSExploitation probabilityCVE-2026-99059
30-day exploitation probability 0.51%
first.org - OpenSSF OSV / OSV ScannerPackage advisoryDEBIAN-CVE-2026-99059osv.dev
- Tenable CVE DatabaseVulnerability recordCVE-2026-99059
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 t
tenable.com - Trivy Vulnerability DBPackage advisoryDEBIAN-CVE-2026-99059
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 o
osv.dev
References
Freshness
Last verified in this catalog Nov 6, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- FIRST EPSSOct 31, 2026
- Trivy Vulnerability DBOct 25, 2026
- OpenSSF OSV / OSV ScannerOct 25, 2026
- CVE.orgOct 25, 2026
- Tenable CVE DatabaseOct 25, 2026