Patch "security/keys: properly zero out sensitive key material in big_key" has been added to the 4.9-stable tree
Subsystems (3)
This is a note to let you know that I've just added the patch titled
security/keys: properly zero out sensitive key material in big_key
to the 4.9-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
security-keys-properly-zero-out-sensitive-key-material-in-big_key.patch
and it can be found in the queue-4.9 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
910801809b2e40a4baedd080ef5d80b4a180e70eMon Sep 17 00:00:00 2001
From: "Jason A. Donenfeld" <[email protected]>
Date: Wed, 20 Sep 2017 16:58:38 +0200
Subject: security/keys: properly zero out sensitive key material in big_key
From: Jason A. Donenfeld <[email protected]>
commit 910801809b2e40a4baedd080ef5d80b4a180e70e upstream.
Error paths forgot to zero out sensitive material, so this patch changes some kfrees into a kzfrees.
--- security/keys/big_key.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
security/keys/big_key.c +6 -6
@@ -194,7 +194,7 @@ int big_key_preparse(struct key_preparse *path = file->f_path;path_get (path);fput (file); -kfree (data); +kzfree (data); }else {/* Just store the data in a buffer */ void *data =kmalloc (datalen,GFP_KERNEL );
@@ -210,9 +210,9 @@ int big_key_preparse(struct key_preparse err_fput:fput (file); err_enckey: -kfree (enckey); +kzfree (enckey); error: -kfree (data); +kzfree (data);return ret; }
@@ -226,7 +226,7 @@ void big_key_free_preparse(struct key_prpath_put (path); } -kfree (prep->payload.data[big_key_data]); +kzfree (prep->payload.data[big_key_data]); }/*
@@ -258,7 +258,7 @@ void big_key_destroy(struct key *key) path->mnt =NULL ; path->dentry =NULL ; } -kfree (key->payload.data[big_key_data]); +kzfree (key->payload.data[big_key_data]); key->payload.data[big_key_data] =NULL ; }
@@ -326,7 +326,7 @@ long big_key_read(const struct key *key, err_fput:fput (file); error: -kfree (data); +kzfree (data); }else { ret = datalen; if (copy_to_user(buffer, key->payload.data[big_key_data],
Patches currently in stable-queue which might be from [email protected] are
queue-4.9/security-keys-rewrite-all-of-big_key-crypto.patch queue-4.9/security-keys-properly-zero-out-sensitive-key-material-in-big_key.patch