RC4 Weak Key checks
Jeffrey Altman
jaltman at secure-endpoints.com
Fri Mar 25 15:22:54 EDT 2011
On 3/24/2011 12:44 PM, Greg Hudson wrote:
> I want to hear from Sam and/or Ken before making a decision, but here's
> what I can tell from a bit of research:
>
> * Weak key checks have been in our code since it appeared in our tree in
> October 2001. The code was committed by Sam but was probably written by
> someone else.
The code in MIT Kerberos was written by David Cross <crossd at cs.rpi.edu>.
The implementation for Heimdal which does not contain RC4 weak key
checks was written by Luke Howard.
I can find no evidence that Microsoft Kerberos SSP performs weak key
checks. Perhaps the consortium can obtain an explicit answer from
Microsoft.
> I wasn't able to find any discussion of RC4 weak keys on
> the lists, although I could easily have missed it.
I have found no discussions on either krbdev or the ietf working group
mailing list. The Informational RFC was published as an individual
submission. As far as I can tell there was no comparison of the RFC
submission with the MIT implementation prior to publication. There
certainly was no discussion on the kerberos wg list.
> * The weak key checks are probably based on
> http://impic.org/papers/WeakKeys-report.pdf appendix A.
Sure. The keys match.
> * The attack based on these weak keys reduces the search space by 11
> bytes, and requires about 2^26 messages with known plaintexts to succeed
> with 50% probability.
>
> * The use of confounders in rc4-hmac appears to foil this attack,
> although I can't say that with high confidence.
>
> If the attack is not foiled by confounders, it's pretty bad for
> rc4-hmac-exp (you get a 2^53 work factor to recover a key after scanning
> about 61 million messages with known plaintexts) but isn't very
> interesting for rc4-hmac; 2^117 is still a very high work factor for an
> attack on a legacy enctype.
My reading of the security considerations section of 4757 is that a new
key is generated for each message transmitted using the gss context in
order to address the key weakness. However, the statements are far from
explicit.
> I agree that simply erroring out on weak keys without any standards
> support for avoiding them is not a great solution, especially when one
> in 2^24 keys is weak.
The way the code exists today RC4-HMAC is not a usable enc-type in
combination with GSS when one side of the connection is MIT.
Recommending that RC4-HMAC not be used is not practical in an AD centric
environment.
Jeffrey Altman
Secure Endpoints, Inc.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 487 bytes
Desc: OpenPGP digital signature
Url : http://mailman.mit.edu/pipermail/krbdev/attachments/20110325/ae0ad70d/attachment.bin
More information about the krbdev
mailing list