[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHmME9qZyz26gnfcZCjAiLhYqZ9LwJN1VZ+3rgGmhxJYrGvZCw@mail.gmail.com>
Date: Thu, 14 Apr 2022 13:58:04 +0200
From: "Jason A. Donenfeld" <Jason@...c4.com>
To: Nikolay Aleksandrov <razor@...ckwall.org>
Cc: Netdev <netdev@...r.kernel.org>,
Daniel Borkmann <daniel@...earbox.net>,
Martynas Pumputis <m@...bda.lt>,
WireGuard mailing list <wireguard@...ts.zx2c4.com>,
Jakub Kicinski <kuba@...nel.org>,
David Miller <davem@...emloft.net>,
stable <stable@...r.kernel.org>
Subject: Re: [PATCH net 1/2] wireguard: device: fix metadata_dst xmit null
pointer dereference
Hi Nikolay,
On Thu, Apr 14, 2022 at 12:45 PM Nikolay Aleksandrov
<razor@...ckwall.org> wrote:
> When we try to transmit an skb with md_dst attached through wireguard
> we hit a null pointer dereference[1] in wg_xmit() due to the use of
> dst_mtu() which calls into dst_blackhole_mtu() which in turn tries to
> dereference dst->dev. Since wireguard doesn't use md_dsts we should use
> skb_valid_dst() which checks for DST_METADATA flag and if it's set then
> fallback to wireguard's device mtu. That gives us the best chance of
> transmitting the packet, otherwise if the blackhole netdev is used we'd
> get ETH_MIN_MTU.
Thanks for the patch. Will queue up this patch #1 in the wireguard
tree and send it out to net.git not before too long.
Jason
Powered by blists - more mailing lists