CVE-2026-81020
nicheAES-GCM nonce reuse in wolfEngine breaks TLS 1.2/DTLS 1.2 record security
wolfEngine before 1.4.1 generates its 8-byte explicit AES-GCM nonce once when the TLS write key is set and never increments it per record, so every TLS 1.2 and DTLS 1.2 AES-GCM record within a connection is encrypted under an identical key and nonce pair. Any application that uses the engine to run TLS 1.2 or DTLS 1.2 with AES-GCM cipher suites triggers the flaw automatically on every record sent, with no attacker interaction beyond observing the traffic. An attacker who captures records can XOR two ciphertexts to obtain the XOR of their plaintexts, so knowledge of any one record exposes others, and the leaked GHASH authentication key enables forgery of authentication tags on records under the same key. Users of wolfEngine with TLS 1.2 or DTLS 1.2 AES-GCM sessions are affected, while TLS 1.3, AES-CCM, and non-TLS uses of the cipher are not. There is no public proof of concept, no KEV entry, and no reported exploitation, with EPSS estimating a 0.2% probability of exploitation in the next 30 days.
What to do: Upgrade to wolfEngine 1.4.1 or later and restart affected applications so the patched engine is actually loaded, then re-establish long-lived TLS 1.2/DTLS 1.2 connections, since records already sent under the reused nonce remain exposed to anyone who captured them. As a mitigation until patched, prefer TLS 1.3 or AES-CCM cipher suites and disable TLS 1.2/DTLS 1.2 AES-GCM suites. Audit which services link against wolfEngine and confirm which TLS versions and cipher suites they negotiate.
| wolfSSL wolfEngine | before 1.4.1 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
wolfEngine before 1.4.1 generates the 8-byte explicit AES-GCM nonce once when the TLS write key is set and never increments it per record. As a result every TLS 1.2 and DTLS 1.2 AES-GCM record within a connection is encrypted under an identical key and nonce pair. Reusing a GCM key and nonce discloses the keystream (the XOR of two ciphertexts equals the XOR of their plaintexts, so one known record recovers the others) and leaks the GHASH authentication key, enabling authentication tag forgery. AES-CCM, TLS 1.3, and non-TLS use of the cipher are not affected.
- Weakness
- CWE-323
- Vector
- CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
In the news0 stories
No ingested article mentions this CVE yet.