diff options
author | Ard Biesheuvel <ardb@kernel.org> | 2021-01-02 14:59:09 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2021-01-12 20:16:17 +0100 |
commit | 0326960033d8904767aad7444bdf25acc9d31654 (patch) | |
tree | d127891984c457b301e87a17e7cd7cef9b5db895 /crypto/testmgr.c | |
parent | cb13663e387eda6ead1c9e5e80564c584c27f467 (diff) | |
download | linux-crypto-0326960033d8904767aad7444bdf25acc9d31654.tar.gz linux-crypto-0326960033d8904767aad7444bdf25acc9d31654.zip |
crypto: ecdh - avoid buffer overflow in ecdh_set_secret()
commit 4204b130b8a4d1cd2c4a0d9a5a09993e8948defe upstream.
Pavel reports that commit 8319c80ab523 ("crypto: ecdh - avoid unaligned
accesses in ecdh_set_secret()") fixes one problem but introduces another:
the unconditional memcpy() introduced by that commit may overflow the
target buffer if the source data is invalid, which could be the result of
intentional tampering.
So check params.key_size explicitly against the size of the target buffer
before validating the key further.
Fixes: 8319c80ab523 ("crypto: ecdh - avoid unaligned accesses in ecdh_set_secret()")
Reported-by: Pavel Machek <pavel@denx.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto/testmgr.c')
0 files changed, 0 insertions, 0 deletions