CVE-2013-1417: Input Validation
dotgsreq.c in the Key Distribution Center (KDC) in MIT Kerberos 5 (aka krb5) 1.11 before 1.11.4, when a single-component realm name is used, allows remote authenticated users to cause a denial of service (daemon crash) via a TGS-REQ request that triggers an attempted cross-realm referral for a host-based service principal.
Other sources
From the upstream commit [1]:
An authenticated remote client can cause a KDC to crash by making a valid TGS-REQ to a KDC serving a realm with a single-component name. The processtgsreq() function dereferences a null pointer because an unusual failure condition causes a helper function to return success.
While attempting to provide cross-realm referrals for host-based service principals, the findreferraltgs() function could return a TGS principal for a zero-length realm name (indicating that the hostname in the service principal has no known realm associated with it).
Subsequently, the findalternatetgs() function would attempt to construct a path to this empty-string realm, and return success along with a null pointer in its output parameter. This happens because krb5walkrealmtree() returns a list of length one when it attempts to construct a transit path between a single-component realm and the empty-string realm. This list causes a loop in findalternatetgs() to iterate over zero elements, resulting in the unexpected output of a null pointer, which processtgsreq() proceeds to dereference because there is no error condition.
Add an error condition to findreferraltgs() when krb5gethostrealm() returns an empty realm name. Also add an error condition to findalternatetgs() to handle the length-one output from krb5walkrealmtree().
The vulnerable configuration is not likely to arise in practice. (Realm names that have a single component are likely to be test realms.) Releases prior to krb5-1.11 are not vulnerable.
[1] https://github.com/krb5/krb5/commit/4c023ba43c16396f0d199e2df1cfa59b88b62acc
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2013-1417?
CVE-2013-1417 has a severity rating that indicates it could lead to a denial of service due to a daemon crash.
How do I fix CVE-2013-1417?
To fix CVE-2013-1417, upgrade to MIT Kerberos 5 version 1.11.4 or later.
Which versions of MIT Kerberos 5 are affected by CVE-2013-1417?
CVE-2013-1417 affects MIT Kerberos 5 versions 1.11 through 1.11.3.
Can CVE-2013-1417 be exploited remotely?
Yes, CVE-2013-1417 can be exploited remotely by authenticated users.
What type of vulnerability is CVE-2013-1417?
CVE-2013-1417 is a denial of service vulnerability that can cause a crash in the Key Distribution Center.