ChevaletalUsenix23

Back to ProVerif
Vincent Cheval, Cas Cremers, Alexander Dax, Lucca Hirschi, Charlie Jacomme, and Steve Kremer. Hash Gone Bad: Automated discovery of protocol attacks that exploit hash function weaknesses. In 32nd USENIX Security Symposium (USENIX Security'23), Anaheim, CA, USA, August 2023. USENIX Association. Tool feature Case study

Links

Paper

Abstract

Most cryptographic protocols use cryptographic hash functions as a building block. The security analyses of these protocols typically assume that the hash functions are perfect (such as in the random oracle model). However, in practice, most widely deployed hash functions are far from perfect - and as a result, the analysis may miss attacks that exploit the gap between the model and the actual hash function used.

We develop the first methodology to systematically discover attacks on security protocols that exploit weaknesses in widely deployed hash functions. We achieve this by revisiting the gap between theoretical properties of hash functions and the weaknesses of real-world hash functions, from which we develop a lattice of threat models. For all of these threat models, we develop fine-grained symbolic models.

Our methodology's fine-grained models cannot be directly encoded in existing state-of-the-art analysis tools by just using their equational reasoning. We therefore develop extensions for the two leading tools, Tamarin and ProVerif. In extensive case studies using our methodology, the extended tools rediscover all attacks that were previously reported for these protocols and discover several new variants.

Bibtex


@INPROCEEDINGS{ChevaletalUsenix23,
  ADDRESS = {Anaheim, CA, USA},
  AUTHOR = {Cheval, Vincent and Cremers, Cas and Dax, Alexander and Hirschi, Lucca and Jacomme, Charlie and Kremer, Steve},
  BOOKTITLE = {32nd USENIX Security Symposium ({USENIX}
                  Security'23)},
  MONTH = AUG,
  PUBLISHER = {{USENIX} Association},
  TITLE = {Hash Gone Bad: Automated discovery of protocol attacks that exploit hash function weaknesses},
  YEAR = 2023,
  ACRONYM = {{USENIX} Security'23},
  NMONTH = 8
}