[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240418033145.35894-1-kuniyu@amazon.com>
Date: Wed, 17 Apr 2024 20:31:45 -0700
From: Kuniyuki Iwashima <kuniyu@...zon.com>
To: <kuba@...nel.org>
CC: <davem@...emloft.net>, <dsahern@...nel.org>, <edumazet@...gle.com>,
<herbert@...dor.apana.org.au>, <kuni1840@...il.com>, <kuniyu@...zon.com>,
<netdev@...r.kernel.org>, <pabeni@...hat.com>,
<steffen.klassert@...unet.com>, <syzkaller@...glegroups.com>,
<willemb@...gle.com>
Subject: Re: [PATCH v1 net 1/5] sit: Pull header after checking skb->protocol in sit_tunnel_xmit().
From: Jakub Kicinski <kuba@...nel.org>
Date: Wed, 17 Apr 2024 19:04:32 -0700
> On Mon, 15 Apr 2024 15:20:37 -0700 Kuniyuki Iwashima wrote:
> > syzkaller crafted a GSO packet of ETH_P_8021AD + ETH_P_NSH and sent it
> > over sit0.
> >
> > After nsh_gso_segment(), skb->data - skb->head was 138, on the other
> > hand, skb->network_header was 128.
>
> is data offset > skb->network_header valid at this stage?
> Can't we drop these packets instead?
I think that needs another fix on the NSH side.
But even with that, we can still pass valid L2 skb to sit_tunnel_xmit()
and friends, and then we should just drop it there without calling
pskb_inet_may_pull() that should not be called for non-IP skb.
Powered by blists - more mailing lists