CVE-2022-37966 HEIMDAL: Look up the server keys to combine with clients etype list...
authorAndrew Bartlett <abartlet@samba.org>
Tue, 1 Nov 2022 01:47:12 +0000 (14:47 +1300)
committerStefan Metzmacher <metze@samba.org>
Tue, 13 Dec 2022 23:48:48 +0000 (00:48 +0100)
We need to select server, not client, to compare client etypes against.

(It is not useful to compare the client-supplied encryption types with
the client's own long-term keys.)

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15237

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(similar to commit 538315a2aa6d03b7639b49eb1576efa8755fefec)
[jsutton@samba.org Fixed knownfail conflicts]

[jsutton@samba.org Fixed knownfail conflicts]

[jsutton@samba.org Fixed knownfail conflicts; adapted to older Heimdal
 version]

selftest/knownfail_heimdal_kdc
source4/heimdal/kdc/kerberos5.c

index 5dc3c60847e984176c523a7520070858942d4d90..692b9ecdd721e5d4bf6747345bacb87cfa828993 100644 (file)
 ^samba.tests.krb5.kdc_tgs_tests.samba.tests.krb5.kdc_tgs_tests.KdcTgsTests.test_fast_service_ticket
 ^samba.tests.krb5.kdc_tgs_tests.samba.tests.krb5.kdc_tgs_tests.KdcTgsTests.test_fast_sid_mismatch_existing
 ^samba.tests.krb5.kdc_tgs_tests.samba.tests.krb5.kdc_tgs_tests.KdcTgsTests.test_fast_sid_mismatch_nonexisting
-#
-# Encryption type tests
-#
-^samba.tests.krb5.etype_tests.samba.tests.krb5.etype_tests.EtypeTests.test_as_aes_requested.ad_dc
-^samba.tests.krb5.etype_tests.samba.tests.krb5.etype_tests.EtypeTests.test_as_rc4_supported_aes_requested.ad_dc
index bda61e69df2a7b499656ca16d92293dceaaa2d78..bfe196c338fdada1397aa512a67f5fbb5784752e 100644 (file)
@@ -1164,7 +1164,7 @@ _kdc_as_rep(krb5_context context,
      * decrypt.
      */
     ret = _kdc_find_etype(context, config->as_use_strongest_session_key, FALSE,
-                         client, b->etype.val, b->etype.len, &sessionetype,
+                         server, b->etype.val, b->etype.len, &sessionetype,
                          NULL);
     if (ret) {
        kdc_log(context, config, 0,