MS14-068: Active Directory Kerberos Vulnerability Patch for Invalid Checksum

MS14-068 References:

 

The folks at BeyondTrust have a great write-up on what the MS14-068 patch adds to mitigate the Kerberos ticket PAC validation vulnerability.

 

So it looks like there is an issue with PAC signatures.  But what specifically?  If we take a look at the kdsvc.dll patch for Server 2008, there are 3 changed functions:

3

As expected, two of the three involve PAC (Privilege Attribute Certificate).  VerifyPacSignature looks promising.  Let’s see what changed there.

Cadddpture

More or less, a comparison like above ( cmp <something>, 0xFFFFFF76 ) was added in two places.  The result of this comparison will either lead to further processing or to returning a Kerberos specific error as seen below.

5

The value 0xFFFFFF76 can be traced upward in the patched function to a nearby call to _CDLocateChecksum.

6

This function is imported from cryptdll.dll, so opening that in IDA we can follow the second argument to CDLocateChecksum and see that the source of this value seems to come from the _CheckSumFns array.

7

Read the rest of the article at the BeyondTrust blog.

 

(Visited 3,889 times, 1 visits today)