Clear DES key (schedule) in unwrap BAD_MIC case
We generally clear out the cryptographic key and key schedule from local variables before relinquishing control flow, but this case was missed. Reported by jhb@FreeBSD.org.
This commit is contained in:

committed by
Jeffrey Altman

parent
1feff82129
commit
56fe2f8620
@@ -135,8 +135,11 @@ unwrap_des
|
||||
DES_set_key_unchecked (&deskey, &schedule);
|
||||
DES_cbc_cksum ((void *)hash, (void *)hash, sizeof(hash),
|
||||
&schedule, &zero);
|
||||
if (ct_memcmp (p - 8, hash, 8) != 0)
|
||||
if (ct_memcmp (p - 8, hash, 8) != 0) {
|
||||
memset_s(&deskey, sizeof(deskey), 0, sizeof(deskey));
|
||||
memset_s(&schedule, sizeof(schedule), 0, sizeof(schedule));
|
||||
return GSS_S_BAD_MIC;
|
||||
}
|
||||
|
||||
/* verify sequence number */
|
||||
|
||||
|
Reference in New Issue
Block a user