CVE-2025-69418
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.
How to fix
- openssl openssl1.1.1ze, 3.0.19, 3.3.6, 3.4.4, 3.5.5, 3.6.1 or later
- github.com/openssl/openssl/commit/ed40856d7d4ba6cb42779b6770666a65f19cb977
- github.com/openssl/openssl/commit/4016975d4469cd6b94927c607f7c511385f928d8
- github.com/openssl/openssl/commit/372fc5c77529695b05b4f5b5187691a57ef5dffc
- github.com/openssl/openssl/commit/a7589230356d908c0eca4b969ec4f62106f4f5ae
- github.com/openssl/openssl/commit/52d23c86a54adab5ee9f80e48b242b52c4cc2347
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| openssl openssl | 1.1.1 ≤ v < 1.1.1ze, 3.0.0 ≤ v < 3.0.19, 3.3.0 ≤ v < 3.3.6, 3.4.0 ≤ v < 3.4.4, 3.5.0 ≤ v < 3.5.5, 3.6.0 ≤ v < 3.6.1 | 1.1.1ze, 3.0.19, 3.3.6, 3.4.4, 3.5.5, 3.6.1 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.