[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20180724.163644.1916200439521552708.davem@davemloft.net>
Date: Tue, 24 Jul 2018 16:36:44 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: willemdebruijn.kernel@...il.com
Cc: netdev@...r.kernel.org, eric.dumazet@...il.com, willemb@...gle.com
Subject: Re: [PATCH net v2] ip: in cmsg IP(V6)_ORIGDSTADDR call
pskb_may_pull
From: Willem de Bruijn <willemdebruijn.kernel@...il.com>
Date: Mon, 23 Jul 2018 19:36:48 -0400
> From: Willem de Bruijn <willemb@...gle.com>
>
> Syzbot reported a read beyond the end of the skb head when returning
> IPV6_ORIGDSTADDR:
...
> This logic and its ipv4 counterpart read the destination port from
> the packet at skb_transport_offset(skb) + 4.
>
> With MSG_MORE and a local SOCK_RAW sender, syzbot was able to cook a
> packet that stores headers exactly up to skb_transport_offset(skb) in
> the head and the remainder in a frag.
>
> Call pskb_may_pull before accessing the pointer to ensure that it lies
> in skb head.
>
> Link: http://lkml.kernel.org/r/CAF=yD-LEJwZj5a1-bAAj2Oy_hKmGygV6rsJ_WOrAYnv-fnayiQ@mail.gmail.com
> Reported-by: syzbot+9adb4b567003cac781f0@...kaller.appspotmail.com
> Signed-off-by: Willem de Bruijn <willemb@...gle.com>
Applied and queued up for -stable, thanks!
Powered by blists - more mailing lists