CVE-2026-5446 Overview
A cryptographic vulnerability has been identified in wolfSSL affecting ARIA-GCM cipher suites used in TLS 1.2 and DTLS 1.2 connections. The flaw results in the reuse of an identical 12-byte GCM nonce for every application-data record, which fundamentally compromises the security guarantees of authenticated encryption.
The vulnerability stems from the stateless nature of wc_AriaEncrypt, which passes the caller-supplied IV verbatim to the MagicCrypto SDK without maintaining an internal counter. In non-FIPS builds, the explicit IV is zero-initialized at session setup and never incremented, leading to catastrophic nonce reuse.
Critical Impact
GCM nonce reuse enables attackers to recover authentication keys and decrypt ciphertext, potentially compromising confidentiality and integrity of TLS-protected communications in affected deployments.
Affected Products
- wolfSSL builds configured with --enable-aria
- Deployments using the proprietary MagicCrypto SDK (non-default, opt-in configuration)
- Korean regulatory deployments requiring ARIA cipher support
Discovery Timeline
- 2026-04-09 - CVE-2026-5446 published to NVD
- 2026-04-09 - Last updated in NVD database
Technical Details for CVE-2026-5446
Vulnerability Analysis
This vulnerability represents a critical failure in cryptographic nonce management within wolfSSL's ARIA-GCM implementation. In Galois/Counter Mode (GCM) authenticated encryption, the nonce (initialization vector) must be unique for each encryption operation under the same key. Reusing the same nonce with the same key allows an attacker to perform bitwise XOR operations on captured ciphertexts to recover plaintext and, more critically, to forge authentication tags.
The root issue is that wc_AriaEncrypt operates statelessly, meaning it does not track how many times it has been invoked or maintain any counter state between calls. This contrasts sharply with the AES-GCM implementation (wc_AesGcmEncrypt_ex), which properly maintains an internal invocation counter independent of the call-site guard.
The vulnerability is limited to builds with specific configuration flags (--enable-aria) and requires the proprietary MagicCrypto SDK, making it a non-default configuration primarily used in Korean regulatory compliance scenarios. Standard AES-GCM cipher suites are not affected by this vulnerability.
Root Cause
The vulnerability originates from improper initialization vector handling in the ARIA-GCM cipher suite implementation. The explicit IV is zero-initialized during TLS session setup and the wolfSSL code fails to increment this value in non-FIPS builds. Because wc_AriaEncrypt passes the caller-supplied IV directly to the MagicCrypto SDK without modification, every subsequent encryption operation reuses the same 12-byte nonce value.
This design flaw is classified under CWE-323: Reusing a Nonce, Key Pair in Encryption, which represents a fundamental violation of authenticated encryption security requirements.
Attack Vector
The vulnerability is exploitable over the network (AV:N) with low attack complexity. An attacker capable of intercepting TLS/DTLS traffic can exploit the nonce reuse to:
- Recover XOR of plaintexts: By XORing two ciphertexts encrypted with the same nonce, the attacker obtains the XOR of the corresponding plaintexts
- Compromise authentication: With sufficient captured ciphertexts, the attacker can recover the authentication subkey (H value) used in GCM's GHASH function
- Forge valid ciphertexts: Once the authentication key is recovered, the attacker can forge authenticated ciphertexts that will be accepted by the victim
The attack requires low privileges and no user interaction, though exploitation does require the attacker to be positioned to capture encrypted traffic (reflected in the Present attack prerequisites).
The vulnerability manifests during the TLS record layer encryption process where application data is encrypted. Because the IV initialization and increment logic is absent in non-FIPS builds, every TLS record encrypted with ARIA-GCM uses the identical nonce value. For detailed technical analysis, see the wolfSSL Pull Request #10111.
Detection Methods for CVE-2026-5446
Indicators of Compromise
- Network traffic analysis showing identical GCM nonce values across multiple TLS records
- TLS handshakes negotiating ARIA-GCM cipher suites (cipher suite identifiers in the 0xC0 range specific to ARIA)
- Presence of MagicCrypto SDK components in the deployment environment
Detection Strategies
- Audit wolfSSL compilation flags for --enable-aria configuration
- Inspect build configurations for MagicCrypto SDK integration
- Monitor TLS cipher suite negotiations for ARIA-GCM usage patterns
- Review wolfSSL version and applied security patches
Monitoring Recommendations
- Implement network monitoring to detect ARIA cipher suite usage in TLS connections
- Configure alerts for deployments using non-default wolfSSL configurations
- Establish baseline of cryptographic configurations across the environment
- Deploy TLS inspection capabilities to identify vulnerable cipher suite negotiations
How to Mitigate CVE-2026-5446
Immediate Actions Required
- Disable ARIA-GCM cipher suites in wolfSSL configurations until patch is applied
- Switch to AES-GCM cipher suites which maintain proper nonce counters
- Review all deployments for --enable-aria build configurations
- Assess Korean regulatory compliance alternatives that do not require vulnerable configuration
Patch Information
wolfSSL has addressed this vulnerability through code changes that properly manage nonce incrementation for ARIA-GCM operations. The fix ensures that the IV is incremented after each encryption operation, preventing nonce reuse. Organizations should apply the patch available in the wolfSSL GitHub Pull Request #10111.
Workarounds
- Disable ARIA cipher suites entirely by removing --enable-aria from build configuration
- Configure TLS server and client to prefer AES-GCM cipher suites over ARIA-GCM
- Implement cipher suite allow-listing to exclude ARIA-GCM variants
- Consider enabling FIPS mode if applicable, as the vulnerability specifically affects non-FIPS builds
# Disable ARIA cipher suites in wolfSSL configuration
./configure --disable-aria
# Alternatively, configure TLS to exclude ARIA cipher suites at runtime
# by specifying cipher suite list without ARIA variants
export WOLFSSL_CIPHER_LIST="TLS_AES_256_GCM_SHA384:TLS_AES_128_GCM_SHA256"
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


