lkml.org 
[lkml]   [2018]   [Apr]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 33/95] random: use a tighter cap in credit_entropy_bits_safe()
    Date
    4.9-stable review patch.  If anyone has any objections, please let me know.

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

    From: Theodore Ts'o <tytso@mit.edu>

    commit 9f886f4d1d292442b2f22a0a33321eae821bde40 upstream.

    This fixes a harmless UBSAN where root could potentially end up
    causing an overflow while bumping the entropy_total field (which is
    ignored once the entropy pool has been initialized, and this generally
    is completed during the boot sequence).

    This is marginal for the stable kernel series, but it's a really
    trivial patch, and it fixes UBSAN warning that might cause security
    folks to get overly excited for no reason.

    Signed-off-by: Theodore Ts'o <tytso@mit.edu>
    Reported-by: Chen Feng <puck.chen@hisilicon.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/char/random.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/drivers/char/random.c
    +++ b/drivers/char/random.c
    @@ -741,7 +741,7 @@ retry:

    static int credit_entropy_bits_safe(struct entropy_store *r, int nbits)
    {
    - const int nbits_max = (int)(~0U >> (ENTROPY_SHIFT + 1));
    + const int nbits_max = r->poolinfo->poolwords * 32;

    if (nbits < 0)
    return -EINVAL;

    \
     
     \ /
      Last update: 2018-04-22 17:04    [W:2.674 / U:0.416 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site