Misplaced Trust: Kerberos 4 Session Keys

  • Authors:
  • B. Dole;S. Lodin;E. Spafford

  • Affiliations:
  • -;-;-

  • Venue:
  • SNDSS '97 Proceedings of the 1997 Symposium on Network and Distributed System Security
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

One of the commonly accepted principles of software design for security is that making the source code openly available leads to better security. The presumption is that the open publication of source code will lead others to review the code for errors, however this openness is no guarantee of correctness. One of the most widely published and used pieces of security software in recent memory is the MIT implementation of the Kerberos authentication protocol. In the design of the protocol, random session keys are the basis for establishing the authenticity of service requests. Because of the way that the Kerberos Version 4 implementation selected its random keys, the secret keys could easily be guessed in a matter of seconds. This paper discusses the difficulty of generating good random numbers, the mistakes that were made in implementing Kerberos Version 4, and the breakdown of software engineering that allowed this flaw to remain unfixed for ten years. We discuss this as a particularly notable example of the need to examine security-critical code carefully, even when it is made publicly available.