[PATCH 4.9 130/144] crypto: authenc - dont leak pointers to authenc keys

From: Greg Kroah-Hartman
Date: Wed Aug 01 2018 - 13:31:20 EST


4.9-stable review patch. If anyone has any objections, please let me know.

------------------

From: Tudor-Dan Ambarus <tudor.ambarus@xxxxxxxxxxxxx>

[ Upstream commit ad2fdcdf75d169e7a5aec6c7cb421c0bec8ec711 ]

In crypto_authenc_setkey we save pointers to the authenc keys in
a local variable of type struct crypto_authenc_keys and we don't
zeroize it after use. Fix this and don't leak pointers to the
authenc keys.

Signed-off-by: Tudor Ambarus <tudor.ambarus@xxxxxxxxxxxxx>
Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
crypto/authenc.c | 1 +
1 file changed, 1 insertion(+)

--- a/crypto/authenc.c
+++ b/crypto/authenc.c
@@ -108,6 +108,7 @@ static int crypto_authenc_setkey(struct
CRYPTO_TFM_RES_MASK);

out:
+ memzero_explicit(&keys, sizeof(keys));
return err;

badkey: