[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20170522.114834.59066499542253617.davem@davemloft.net>
Date: Mon, 22 May 2017 11:48:34 -0400 (EDT)
From: David Miller <davem@...emloft.net>
To: eric.dumazet@...il.com
Cc: andreyknvl@...gle.com, edumazet@...gle.com, idaifish@...il.com,
netdev@...r.kernel.org
Subject: Re: [PATCH net] ipv6: fix out of bound writes in
__ip6_append_data()
From: Eric Dumazet <eric.dumazet@...il.com>
Date: Fri, 19 May 2017 14:17:48 -0700
> From: Eric Dumazet <edumazet@...gle.com>
>
> Andrey Konovalov and idaifish@...il.com reported crashes caused by
> one skb shared_info being overwritten from __ip6_append_data()
>
> Andrey program lead to following state :
>
> copy -4200 datalen 2000 fraglen 2040
> maxfraglen 2040 alloclen 2048 transhdrlen 0 offset 0 fraggap 6200
>
> The skb_copy_and_csum_bits(skb_prev, maxfraglen, data + transhdrlen,
> fraggap, 0); is overwriting skb->head and skb_shared_info
>
> Since we apparently detect this rare condition too late, move the
> code earlier to even avoid allocating skb and risking crashes.
>
> Once again, many thanks to Andrey and syzkaller team.
>
> Signed-off-by: Eric Dumazet <edumazet@...gle.com>
> Reported-by: Andrey Konovalov <andreyknvl@...gle.com>
> Tested-by: Andrey Konovalov <andreyknvl@...gle.com>
> Reported-by: <idaifish@...il.com>
Looks good, applied and queued up for -stable.
Thanks Eric.
Powered by blists - more mailing lists