2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-29 05:28:00 +00:00

the client cookie was being hashed twice when computing the server cookie for sha1 and sha256

This commit is contained in:
Mark Andrews 2018-06-22 09:50:10 +10:00
parent dfdc6d61aa
commit 4795f0ca89

View File

@ -1851,8 +1851,6 @@ compute_cookie(ns_client_t *client, isc_uint32_t when, isc_uint32_t nonce,
INSIST(0); INSIST(0);
} }
isc_hmacsha1_update(&hmacsha1, cp, length); isc_hmacsha1_update(&hmacsha1, cp, length);
isc_hmacsha1_update(&hmacsha1, client->cookie,
sizeof(client->cookie));
isc_hmacsha1_sign(&hmacsha1, digest, sizeof(digest)); isc_hmacsha1_sign(&hmacsha1, digest, sizeof(digest));
isc_buffer_putmem(buf, digest, 8); isc_buffer_putmem(buf, digest, 8);
isc_hmacsha1_invalidate(&hmacsha1); isc_hmacsha1_invalidate(&hmacsha1);
@ -1888,8 +1886,6 @@ compute_cookie(ns_client_t *client, isc_uint32_t when, isc_uint32_t nonce,
INSIST(0); INSIST(0);
} }
isc_hmacsha256_update(&hmacsha256, cp, length); isc_hmacsha256_update(&hmacsha256, cp, length);
isc_hmacsha256_update(&hmacsha256, client->cookie,
sizeof(client->cookie));
isc_hmacsha256_sign(&hmacsha256, digest, sizeof(digest)); isc_hmacsha256_sign(&hmacsha256, digest, sizeof(digest));
isc_buffer_putmem(buf, digest, 8); isc_buffer_putmem(buf, digest, 8);
isc_hmacsha256_invalidate(&hmacsha256); isc_hmacsha256_invalidate(&hmacsha256);