diff options
author | Greg Hudson <ghudson@mit.edu> | 2022-12-16 18:31:07 -0500 |
---|---|---|
committer | Greg Hudson <ghudson@mit.edu> | 2023-01-23 18:41:42 -0500 |
commit | 1b57a4d134bbd0e7c52d5885a92eccc815726463 (patch) | |
tree | b527ac08fdd883e5ea7bc5164476d64afa052a35 /doc | |
parent | 2cbd847e0e92bc4e219b65c770ae33f851b22afc (diff) | |
download | krb5-1b57a4d134bbd0e7c52d5885a92eccc815726463.tar.gz |
Don't issue session keys with deprecated enctypes
A paper by Tom Tervoort noted that rc4-hmac pre-hashes the input for
its checksum and GSS operations before applying HMAC, and is therefore
potentially vulnerable to hash collision attacks if a protocol
contains a restricted signing oracle.
In light of these potential attacks, begin the functional deprecation
of DES3 and RC4 by disallowing their use as session key enctypes by
default. Add the variables allow_des3 and allow_rc4 in case
negotiability of these enctypes for session keys needs to be turned
back on, with the expectation that in future releases the enctypes
will be more comprehensively deprecated.
ticket: 9081
Diffstat (limited to 'doc')
-rw-r--r-- | doc/admin/conf_files/krb5_conf.rst | 12 | ||||
-rw-r--r-- | doc/admin/enctypes.rst | 23 |
2 files changed, 32 insertions, 3 deletions
diff --git a/doc/admin/conf_files/krb5_conf.rst b/doc/admin/conf_files/krb5_conf.rst index f22d5db11..ecdf91750 100644 --- a/doc/admin/conf_files/krb5_conf.rst +++ b/doc/admin/conf_files/krb5_conf.rst @@ -95,6 +95,18 @@ Additionally, krb5.conf may include any of the relations described in The libdefaults section may contain any of the following relations: +**allow_des3** + Permit the KDC to issue tickets with des3-cbc-sha1 session keys. + In future releases, this flag will allow des3-cbc-sha1 to be used + at all. The default value for this tag is false. (Added in + release 1.21.) + +**allow_rc4** + Permit the KDC to issue tickets with arcfour-hmac session keys. + In future releases, this flag will allow arcfour-hmac to be used + at all. The default value for this tag is false. (Added in + release 1.21.) + **allow_weak_crypto** If this flag is set to false, then weak encryption types (as noted in :ref:`Encryption_types` in :ref:`kdc.conf(5)`) will be filtered diff --git a/doc/admin/enctypes.rst b/doc/admin/enctypes.rst index 694922c0d..dce19ad43 100644 --- a/doc/admin/enctypes.rst +++ b/doc/admin/enctypes.rst @@ -48,12 +48,15 @@ Session key selection The KDC chooses the session key enctype by taking the intersection of its **permitted_enctypes** list, the list of long-term keys for the most recent kvno of the service, and the client's requested list of -enctypes. +enctypes. Starting in krb5-1.21, all services are assumed to support +aes256-cts-hmac-sha1-96; also, des3-cbc-sha1 and arcfour-hmac session +keys will not be issued by default. Starting in krb5-1.11, it is possible to set a string attribute on a service principal to control what session key enctypes the KDC may -issue for service tickets for that principal. See :ref:`set_string` -in :ref:`kadmin(1)` for details. +issue for service tickets for that principal, overriding the service's +long-term keys and the assumption of aes256-cts-hmac-sha1-96 support. +See :ref:`set_string` in :ref:`kadmin(1)` for details. Choosing enctypes for a service @@ -87,6 +90,20 @@ affect how enctypes are chosen. acceptable risk for your environment and the weak enctypes are required for backward compatibility. +**allow_des3** + was added in release 1.21 and defaults to *false*. Unless this + flag is set to *true*, the KDC will not issue tickets with + des3-cbc-sha1 session keys. In a future release, this flag will + control whether des3-cbc-sha1 is permitted in similar fashion to + weak enctypes. + +**allow_rc4** + was added in release 1.21 and defaults to *false*. Unless this + flag is set to *true*, the KDC will not issue tickets with + arcfour-hmac session keys. In a future release, this flag will + control whether arcfour-hmac is permitted in similar fashion to + weak enctypes. + **permitted_enctypes** controls the set of enctypes that a service will permit for session keys and for ticket and authenticator encryption. The KDC |