[1885] in Kerberos-V5-bugs

home help back first fref pref prev next nref lref last post

Re: ss-960411 Checksum Problems

daemon@ATHENA.MIT.EDU (Sam Hartman)
Thu Apr 18 02:53:05 1996

To: "Theodore Y. Ts'o" <tytso@MIT.EDU>
Cc: Doug Engert <DEEngert@anl.gov>, krb5-bugs@MIT.EDU, raeburn@cygnus.com
From: Sam Hartman <hartmans@MIT.EDU>
Date: 18 Apr 1996 02:52:35 -0400
In-Reply-To: "Theodore Y. Ts'o"'s message of Wed, 17 Apr 1996 14:38:34 -0400

>>>>> ""Theodore" == "Theodore Y Ts'o" <tytso@MIT.EDU> writes:

    "Theodore>    Date: Tue, 16 Apr 1996 17:06:38 -0500 From: Doug
    "Theodore> Engert <DEEngert@anl.gov>

    "Theodore>    While testing the ss-960411 snapshot, I always get a
    "Theodore> "Decrypt integrity check failed" when using an older
    "Theodore> version of krlogin with the newer krlogind.

    "Theodore>    It appears that krlogind.c should only be checking
    "Theodore> the checksum if the -c option is set. But the logic
    "Theodore> appears to check it anyway, and the
    "Theodore> krb5_verify_checksum is called which returns the bad
    "Theodore> status.

	Actually, this *was* the intenetd behavior.  It was my hope
that I would be able to check the checksum if it was provided
regardless of whether checksums were required.  I.E. the -c option
should mean that checksums *must* be supplied, not that they will be
checked.

    "Theodore> What version was the "older version" of krlogin?  I had
    "Theodore> thought the older versions of krlogin didn't fill in
    "Theodore> the checksum field at all, so it krb5_verify_checksum()
    "Theodore> shouldn't have been called in those circumstances.

	Apparently, pre-Beta5 clients generate bogus checksums.
Considering that we are still in beta, and that there is substancially
enhanced security if you use checksums, I strongly believe that
checksums should be used if supplied.  

	I propose that the default behavior be to accept checksums but
not require them.  If checksums are supplied, they should be
validated, and a validation failure should cause the session to be
aborted. 

	I propose to add a compatibility with insecure clients option
(opttion letter anyone), that ignores checksums from other clients.
The documentation will strongly advise users to upgrade instead of
using this option if at all possible.

	This would involve backing out Ken's patch.  In particular,
the warning if you have -54c would reappear--you should never require
checksums if you are enabling Kerberos4, and then adding the new
backward compatability option  that would have the same behavior Ken
has the mainline code path currently take.  

--Sam

    "Theodore> 						- Ted








home help back first fref pref prev next nref lref last post