title: AES-SIV implementation ignores empty associated data entries
description: Issue summary: The AES-SIV cipher implementation contains a bug that causes
it to ignore empty associated data entries which are unauthenticated as
a consequence.
Impact summary: Applications that use the AES-SIV algorithm and want to
authenticate empty data entries as associated data can be mislead by removing
adding or reordering such empty entries as these are ignored by the OpenSSL
implementation. We are currently unaware of any such applications.
The AES-SIV algorithm allows for authentication of multiple associated
data entries along with the encryption. To authenticate empty data the
application has to call EVP_EncryptUpdate() (or EVP_CipherUpdate()) with
NULL pointer as the output buffer and 0 as the input buffer length.
The AES-SIV implementation in OpenSSL just returns success for such a call
instead of performing the associated data authentication operation.
The empty data thus will not be authenticated.
As this issue does not affect non-empty associated data authentication and
we expect it to be rare for an application to use empty associated data
entries this is qualified as Low severity issue.
problem types: Insufficient Verification of Data Authenticity
affected:
{
defaultStatus: unaffected
product: OpenSSL
vendor: OpenSSL
versions:
lessThan: 3.1.2, status: affected, version: 3.1.0, versionType: semver
lessThan: 3.0.10, status: affected, version: 3.0.0, versionType: semver
}
metrics:
format: other
other: [
content: {'text': 'Low'}
type: https://www.openssl.org/policies/secpolicy.html
]