Messages in this thread | | | Date | Fri, 24 Mar 2017 22:15:36 +0800 | From | Herbert Xu <> | Subject | Re: [PATCH] crypto: xts,lrw - fix out-of-bounds write after kmalloc failure |
| |
On Thu, Mar 23, 2017 at 01:39:46PM -0700, Eric Biggers wrote: > From: Eric Biggers <ebiggers@google.com> > > In the generic XTS and LRW algorithms, for input data > 128 bytes, a > temporary buffer is allocated to hold the values to be XOR'ed with the > data before and after encryption or decryption. If the allocation > fails, the fixed-size buffer embedded in the request buffer is meant to > be used as a fallback --- resulting in more calls to the ECB algorithm, > but still producing the correct result. However, we weren't correctly > limiting subreq->cryptlen in this case, resulting in pre_crypt() > overrunning the embedded buffer. Fix this by setting subreq->cryptlen > correctly. > > Fixes: f1c131b45410 ("crypto: xts - Convert to skcipher") > Fixes: 700cb3f5fe75 ("crypto: lrw - Convert to skcipher") > Cc: stable@vger.kernel.org # v4.10+ > Reported-by: Dmitry Vyukov <dvyukov@google.com> > Signed-off-by: Eric Biggers <ebiggers@google.com>
Patch applied. Thanks. -- Email: Herbert Xu <herbert@gondor.apana.org.au> Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
| |