From c1be9cb001b069fffaf9dee51199d17355050afd Mon Sep 17 00:00:00 2001 From: akallabeth Date: Thu, 15 May 2025 21:32:58 +0200 Subject: [PATCH] [winpr,sspi] add kerberos string len checks --- winpr/libwinpr/sspi/Kerberos/kerberos.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/winpr/libwinpr/sspi/Kerberos/kerberos.c b/winpr/libwinpr/sspi/Kerberos/kerberos.c index 1c5b31919..1b0934861 100644 --- a/winpr/libwinpr/sspi/Kerberos/kerberos.c +++ b/winpr/libwinpr/sspi/Kerberos/kerberos.c @@ -252,6 +252,10 @@ static int build_krbtgt(krb5_context ctx, krb5_data* realm, krb5_principal* ptar char* name = NULL; krb5_error_code rv = KRB5_CC_NOMEM; + if ((realm->length <= 0) || (!realm->data)) + goto fail; + + WINPR_ASSERT(strnlen(realm->data, realm->length + 1) <= realm->length); (void)winpr_asprintf(&name, &len, "krbtgt/%s@%s", realm->data, realm->data); if (!name || (len == 0)) goto fail;