From: Pablo Neira Ayuso <pablo@netfilter.org>
To: Florian Westphal <fw@strlen.de>
Cc: netfilter-devel@vger.kernel.org, Zhiling Zou <zhilinz@nebusec.ai>
Subject: Re: [PATCH nf-next] netfilter: x_tables: reject missing '-p' flag and check for INV flag
Date: Mon, 24 Aug 2026 23:50:08 +0200 [thread overview]
Message-ID: <aoy8kFZkXMNOHUcR@chamomile> (raw)
In-Reply-To: <aolaWzC1PI7zeYRN@strlen.de>
On Sat, Aug 22, 2026 at 10:14:19AM +0200, Florian Westphal wrote:
> Pablo Neira Ayuso <pablo@netfilter.org> wrote:
> > On Fri, Aug 21, 2026 at 03:41:36PM +0200, Florian Westphal wrote:
> > > ip6tables traverser doesn't walk ipv6 extension headers unless the PROTO
> > > flag is set, so direct sockopt-users can bypass the check (ip6tables
> > > always sets it if '-p' flag is given. This is a cleanup patch, it
> > > doesn't fix any real bug.
> >
> > I really think it is better to squash the TPROXY fix into this one
> > too, it is the same logical fix.
>
> I don't mind either way. I did not do it because unlike TPROXY these
> are benign.
>
> > Sashiko also hinting to fix ip6_tables core check for this protocol
> > flag:
> >
> > https://sashiko.dev/#/patchset/20260821134136.18191-1-fw%40strlen.de
>
> Not so sure. Maybe just do this? I don't think proto > 0 and flag
> unset makes any sense.
>
> diff --git a/net/ipv6/netfilter/ip6_tables.c b/net/ipv6/netfilter/ip6_tables.c
> --- a/net/ipv6/netfilter/ip6_tables.c
> +++ b/net/ipv6/netfilter/ip6_tables.c
> @@ -647,6 +647,13 @@ check_entry_size_and_hooks(struct ip6t_entry *e,
> /* Clear counters and comefrom */
> e->counters = ((struct xt_counters) { 0, 0 });
> e->comefrom = 0;
> +
> + /* Make sure F_PROTO is set, else ip6_packet_match
> + * won't do the right thing.
> + */
> + if (e->ipv6.proto)
> + e->ipv6.flags |= IP6T_F_PROTO;
Userspace always provides a zeroed e->ipv6.proto when unused, correct?
If so, LGTM.
> +
> return 0;
> }
>
next prev parent reply other threads:[~2026-08-24 21:50 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-21 13:41 [PATCH nf-next] netfilter: x_tables: reject missing '-p' flag and check for INV flag Florian Westphal
2026-08-21 14:02 ` Pablo Neira Ayuso
2026-08-22 8:14 ` Florian Westphal
2026-08-24 21:50 ` Pablo Neira Ayuso [this message]
2026-08-24 21:55 ` Florian Westphal
2026-08-24 22:18 ` Florian Westphal
2026-08-24 22:24 ` Pablo Neira Ayuso
2026-08-24 22:23 ` Pablo Neira Ayuso
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aoy8kFZkXMNOHUcR@chamomile \
--to=pablo@netfilter.org \
--cc=fw@strlen.de \
--cc=netfilter-devel@vger.kernel.org \
--cc=zhilinz@nebusec.ai \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox