diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2020-12-04 09:01:36 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-01-12 20:18:17 +0100 |
commit | 80a364421c95fefd43c9a310d86e01e0febc0e0c (patch) | |
tree | 0eef4be7514df5819cdc70d53754a8ed14a92c94 | |
parent | 3f20005ab271c93b5c26736aa3fcf43aacddab39 (diff) | |
download | linux-stable-80a364421c95fefd43c9a310d86e01e0febc0e0c.tar.gz linux-stable-80a364421c95fefd43c9a310d86e01e0febc0e0c.tar.bz2 linux-stable-80a364421c95fefd43c9a310d86e01e0febc0e0c.zip |
crypto: asym_tpm: correct zero out potential secrets
commit f93274ef0fe972c120c96b3207f8fce376231a60 upstream.
The function derive_pub_key() should be calling memzero_explicit()
instead of memset() in case the complier decides to optimize away the
call to memset() because it "knows" no one is going to touch the memory
anymore.
Cc: stable <stable@vger.kernel.org>
Reported-by: Ilil Blum Shem-Tov <ilil.blum.shem-tov@intel.com>
Tested-by: Ilil Blum Shem-Tov <ilil.blum.shem-tov@intel.com>
Link: https://lore.kernel.org/r/X8ns4AfwjKudpyfe@kroah.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | crypto/asymmetric_keys/asym_tpm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/asymmetric_keys/asym_tpm.c b/crypto/asymmetric_keys/asym_tpm.c index 378b18b9bc34..84a5d6af9609 100644 --- a/crypto/asymmetric_keys/asym_tpm.c +++ b/crypto/asymmetric_keys/asym_tpm.c @@ -354,7 +354,7 @@ static uint32_t derive_pub_key(const void *pub_key, uint32_t len, uint8_t *buf) memcpy(cur, e, sizeof(e)); cur += sizeof(e); /* Zero parameters to satisfy set_pub_key ABI. */ - memset(cur, 0, SETKEY_PARAMS_SIZE); + memzero_explicit(cur, SETKEY_PARAMS_SIZE); return cur - buf; } |