OSDN Git Service

crypto: dh - fix calculating encoded key size
authorEric Biggers <ebiggers@google.com>
Fri, 27 Jul 2018 22:36:10 +0000 (15:36 -0700)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 3 Aug 2018 10:06:06 +0000 (18:06 +0800)
commit35f7d5225ffcbf1b759f641aec1735e3a89b1914
tree8e433b5ee404d6f4ed9a4319f0358ef6b5fb7f42
parentafb31cd2d1a1bc3ca055fb2519ec4e9ab969ffe0
crypto: dh - fix calculating encoded key size

It was forgotten to increase DH_KPP_SECRET_MIN_SIZE to include 'q_size',
causing an out-of-bounds write of 4 bytes in crypto_dh_encode_key(), and
an out-of-bounds read of 4 bytes in crypto_dh_decode_key().  Fix it, and
fix the lengths of the test vectors to match this.

Reported-by: syzbot+6d38d558c25b53b8f4ed@syzkaller.appspotmail.com
Fixes: e3fe0ae12962 ("crypto: dh - add public key verification test")
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/dh_helper.c
crypto/testmgr.h