Aller au contenu
Non notée

CVE-2025-69418 Issue summary: When using the low-level OCB API directly with AES-NI orother hardware-accelerated code paths, inputs…

Description

Issue summary: When using the low-level OCB API directly with AES-NI or<br>other hardware-accelerated code paths, inputs whose length is not a multiple<br>of 16 bytes can leave the final partial block unencrypted and unauthenticated.<br><br>Impact summary: The trailing 1-15 bytes of a message may be exposed in<br>cleartext on encryption and are not covered by the authentication tag,<br>allowing an attacker to read or tamper with those bytes without detection.<br><br>The low-level OCB encrypt and decrypt routines in the hardware-accelerated<br>stream path process full 16-byte blocks but do not advance the input/output<br>pointers. The subsequent tail-handling code then operates on the original<br>base pointers, effectively reprocessing the beginning of the buffer while<br>leaving the actual trailing bytes unprocessed. The authentication checksum<br>also excludes the true tail bytes.<br><br>However, typical OpenSSL consumers using EVP are not affected because the<br>higher-level EVP and provider OCB implementations split inputs so that full<br>blocks and trailing partial blocks are processed in separate calls, avoiding<br>the problematic code path. Additionally, TLS does not use OCB ciphersuites.<br>The vulnerability only affects applications that call the low-level<br>CRYPTO_ocb128_encrypt() or CRYPTO_ocb128_decrypt() functions directly with<br>non-block-aligned lengths in a single call on hardware-accelerated builds.<br>For these reasons the issue was assessed as Low severity.<br><br>The FIPS modules in 3.6, 3.5, 3.4, 3.3, 3.2, 3.1 and 3.0 are not affected<br>by this issue, as OCB mode is not a FIPS-approved algorithm.<br><br>OpenSSL 3.6, 3.5, 3.4, 3.3, 3.0 and 1.1.1 are vulnerable to this issue.<br><br>OpenSSL 1.0.2 is not affected by this issue.

Produits et versions touchés

Produit Versions touchées Corrigé en
OpenSSL 3.6 3.6.0 → < 3.6.1 3.6.1
OpenSSL 3.5 3.5.0 → < 3.5.5 3.5.5
OpenSSL 3.4 3.4.0 → < 3.4.4 3.4.4
OpenSSL 3.3 3.3.0 → < 3.3.6 3.3.6
OpenSSL 3.0 3.0.0 → < 3.0.19 3.0.19
OpenSSL 1.1 premières → < 1.1.1ze 1.1.1ze
SIMATIC S7-1500 TM MFP - GNU/Linux subsystem Versions non publiées
Les 141 CVE de OpenSSL →
Suivre cette CVE