CVE-2026-75803: AEAD Forgeries with Empty Ciphertext When Using EVP_Cipher()

Published Aug 25, 2026
·
Updated

Check the tag on EVPCipher() finalize: Poly1305 and OCB AEADs

Other sources

Issue summary: ChaCha20-Poly1305 and AES-OCB decryption with an empty ciphertext can report success without verifying the supplied authentication tag when the operation is finalized by calling the EVPCipher() function.

Launchpad

Affected Software

3 affected components
OpenSSL OpenSSL>=3.0<=3.6
OpenSSL OpenSSL>=3.5<=4.0
debian/openssl<=1.1.1w-0+deb11u1, <=1.1.1w-0+deb11u8, <=3.0.20-1~deb12u2, <=3.5.6-1~deb13u2, <=3.6.3-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Ensure the application checks/verifies the AEAD authentication tag after calling EVP_Cipher() to finalize the decryption/encryption operation for Poly1305 and OCB AEADs; do not treat success as a validated AEAD tag result when an empty ciphertext is provided.

    OpenSSL EVP_Cipher() (AEAD ciphers: Poly1305 and OCB; specifically AES-OCB and ChaCha20-Poly1305) AEAD tag verification on EVP_Cipher() finalize = Ensure the AEAD tag is checked/verified

Event History

Aug 25, 2026
CVE Published
via MITRE·01:00 PM
Data Sourced
via MITRE·01:00 PM
DescriptionWeakness
Data Sourced
via NVD·01:19 PM
DescriptionWeakness
Data Sourced
via Ubuntu·07:09 PM
RemedyDescriptionSeverityAffected Software
Data Sourced
via Debian·07:11 PM
DescriptionAffected Software
Data Sourced
via Launchpad·07:11 PM
Description

Frequently Asked Questions

1

Which applications are exposed to this issue?

Applications are exposed if they decrypt empty ciphertexts with ChaCha20-Poly1305 or AES-OCB through EVP_Cipher() and treat a successful return as proof that the supplied AEAD authentication tag was validated.

2

What must an attacker be able to provide to exploit it?

An attacker must be able to supply a forged message with an empty ciphertext and authentication tag to an affected application path. The application must use EVP_Cipher() to finalize decryption and accept its successful result.

3

Are FIPS module deployments affected?

No. The OpenSSL FIPS modules in 4.0, 3.6, 3.5, 3.4, and 3.0 are not affected because ChaCha20-Poly1305 and AES-OCB are not FIPS-approved and are not implemented in those modules.

4

How can I identify potentially affected code?

Review decryption paths for EVP_Cipher() calls using ChaCha20-Poly1305 or AES-OCB. Prioritize paths where zero-length ciphertext is valid or can be attacker-controlled, and where the return value is used to accept the message.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203