Paper 2024/1110

Legacy Encryption Downgrade Attacks against LibrePGP and CMS

Falko Strenzke, MTG AG
Johannes Roth, MTG AG
Abstract

This work describes vulnerabilities in the specification of the AEAD packets as introduced in the novel LibrePGP specification that is implemented by the widely used GnuPG application and the AES-based AEAD schemes as well as the Key Wrap Algorithm specified in the Cryptographic Message Syntax (CMS). These new attacks exploit the possibility to downgrade AEAD or AES Key Wrap ciphertexts to valid legacy CFB- or CBC-encrypted related ciphertexts and require that the attacker learns the content of the legacy decryption result. This can happen either due to the human recipient returning the decryption output, which has entirely pseudo-random appearance, to the attacker or due to a programmatic decryption oracle in the receiving system. The attacks effect the decryption of low-entropy plaintext blocks in AEAD ciphertexts and, in the case of LibrePGP, also the manipulation of existing AEAD ciphertexts. For AES Key Wrap in CMS, full key decryption is possible. Some of the attacks require multiple successful oracle queries. The attacks thus demonstrate that CCA2 security is not achieved by the LibrePGP and CMS AEAD or Key Wrap encryption in the presence of a legacy cipher mode decryption oracle. The proper countermeasure to thwart the attacks is a key derivation that ensures the use of unrelated block cipher keys for the different encryption modes.

Metadata
Available format(s)
PDF
Category
Attacks and cryptanalysis
Publication info
Preprint.
Keywords
AEADdowngradeCMSLibrePGPdecryption-oracle
Contact author(s)
fstrenzke @ cryptosource de
johannes roth @ mtg de
History
2024-07-10: approved
2024-07-08: received
See all versions
Short URL
https://ia.cr/2024/1110
License
Creative Commons Attribution-ShareAlike
CC BY-SA

BibTeX

@misc{cryptoeprint:2024/1110,
      author = {Falko Strenzke and Johannes Roth},
      title = {Legacy Encryption Downgrade Attacks against {LibrePGP} and {CMS}},
      howpublished = {Cryptology ePrint Archive, Paper 2024/1110},
      year = {2024},
      note = {\url{https://eprint.iacr.org/2024/1110}},
      url = {https://eprint.iacr.org/2024/1110}
}
Note: In order to protect the privacy of readers, eprint.iacr.org does not use cookies or embedded third party content.