lkml.org 
[lkml]   [2018]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH 3.16 015/328] crypto: vmac - require a block cipher with 128-bit block size
    3.16.62-rc1 review patch.  If anyone has any objections, please let me know.

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

    From: Eric Biggers <ebiggers@google.com>

    commit 73bf20ef3df262026c3470241ae4ac8196943ffa upstream.

    The VMAC template assumes the block cipher has a 128-bit block size, but
    it failed to check for that. Thus it was possible to instantiate it
    using a 64-bit block size cipher, e.g. "vmac(cast5)", causing
    uninitialized memory to be used.

    Add the needed check when instantiating the template.

    Fixes: f1939f7c5645 ("crypto: vmac - New hash algorithm for intel_txt support")
    Signed-off-by: Eric Biggers <ebiggers@google.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
    ---
    crypto/vmac.c | 4 ++++
    1 file changed, 4 insertions(+)

    --- a/crypto/vmac.c
    +++ b/crypto/vmac.c
    @@ -655,6 +655,10 @@ static int vmac_create(struct crypto_tem
    if (IS_ERR(alg))
    return PTR_ERR(alg);

    + err = -EINVAL;
    + if (alg->cra_blocksize != 16)
    + goto out_put_alg;
    +
    inst = shash_alloc_instance("vmac", alg);
    err = PTR_ERR(inst);
    if (IS_ERR(inst))
    \
     
     \ /
      Last update: 2018-12-09 23:29    [W:4.237 / U:0.092 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site