From: Stefan Metzmacher Date: Wed, 30 Nov 2022 08:39:19 +0000 (+0100) Subject: CVE-2022-37966 s4:kdc: apply restrictions of "kdc supported enctypes" X-Git-Tag: samba-4.15.13~7 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=89b1c78b520f32e54e8a025511908b06158deef0;p=thirdparty%2Fsamba.git CVE-2022-37966 s4:kdc: apply restrictions of "kdc supported enctypes" BUG: https://bugzilla.samba.org/show_bug.cgi?id=15237 Signed-off-by: Stefan Metzmacher Reviewed-by: Joseph Sutton Reviewed-by: Andrew Bartlett (cherry picked from commit cca3c024fc514bee79bb60a686e470605cc98d6f) --- diff --git a/source4/kdc/db-glue.c b/source4/kdc/db-glue.c index ae32634735d..7eab2c33149 100644 --- a/source4/kdc/db-glue.c +++ b/source4/kdc/db-glue.c @@ -970,7 +970,11 @@ static krb5_error_code samba_kdc_message2entry(krb5_context context, * but effectively restricted by kdc_enctypes */ uint32_t domain_enctypes = ENC_RC4_HMAC_MD5 | ENC_RSA_MD5 | ENC_CRC32; - uint32_t kdc_enctypes = ENC_ALL_TYPES; + uint32_t config_kdc_enctypes = lpcfg_kdc_supported_enctypes(lp_ctx); + uint32_t kdc_enctypes = + config_kdc_enctypes != 0 ? + config_kdc_enctypes : + ENC_ALL_TYPES; const char *samAccountName = ldb_msg_find_attr_as_string(msg, "samAccountName", NULL); computer_val.data = discard_const_p(uint8_t,"computer"); computer_val.length = strlen((const char *)computer_val.data); @@ -1490,7 +1494,11 @@ static krb5_error_code samba_kdc_trust_message2entry(krb5_context context, uint32_t supported_enctypes = ENC_RC4_HMAC_MD5; uint32_t pa_supported_enctypes; uint32_t supported_session_etypes; - uint32_t kdc_enctypes = ENC_ALL_TYPES; + uint32_t config_kdc_enctypes = lpcfg_kdc_supported_enctypes(lp_ctx); + uint32_t kdc_enctypes = + config_kdc_enctypes != 0 ? + config_kdc_enctypes : + ENC_ALL_TYPES; struct lsa_TrustDomainInfoInfoEx *tdo = NULL; NTSTATUS status;