From: Florian Westphal <fw@strlen.de>
To: Pablo Neira Ayuso <pablo@netfilter.org>
Cc: Ren Wei <n05ec@lzu.edu.cn>,
netfilter-devel@vger.kernel.org, phil@nwl.cc,
yuantan098@gmail.com, yifanwucs@gmail.com,
tomapufckgml@gmail.com, zcliangcn@gmail.com, bird@lzu.edu.cn,
bronzed_45_vested@icloud.com
Subject: Re: [PATCH nf 1/1] netfilter: xt_nat: reject unsupported target families
Date: Sun, 14 Jun 2026 13:16:01 +0200 [thread overview]
Message-ID: <ai6Ncagz3tfhFTAS@strlen.de> (raw)
In-Reply-To: <ai533miYJF9-J3yB@chamomile>
Pablo Neira Ayuso <pablo@netfilter.org> wrote:
> Yes, but there are still around 33 match/targets extensions in the
> tree that use NFPROTO_UNSPEC as a .family.
>
> And some of these NFPROTO_UNSPEC are supported by ebtables, eg.
> xt_string (match), see ebt_string.c in ebtables userspace.
match != target.
> I think NFPROTO_UNSPEC should be replaced by explicit families that
> are supported.
ebtables CANNOT support NFPROTO_UNSPEC targets. Thats all I said.
> > This is wnat ebtables.c already does which is why this poc would
> > not work for classic xtables.
>
> Do you refer to targets specifically, correct?
>
> /* Reject UNSPEC, xtables verdicts/return values are incompatible */
> if (target->family != NFPROTO_BRIDGE) {
> module_put(target->me);
> ret = -ENOENT;
> goto cleanup_watchers;
> }
yes.
> > That said, this patch (the xt_nat.c patch) might be a good idea
> > anyway, but I don't think its enough.
>
> I would probably replace all of the remaining NFPROTO_UNSPEC by
> explicit families.
Are you talking about matches, targets or both? What about nftables?
I worry we see lots of redundancy when we have to expand UNSPEC to all
of ARP/BRIDGE/IPV4/IPV6/INET/NETDEV.
> As for xt_nat_target_reg, it does not set NFPROTO_UNSPEC explicitly,
> but given that target is allocated in the BSS, it results in an
> implicit NFPROTO_UNSPEC, which is the reason why it when uncaught by
> b6fe26f86a1649f84e057f3f15605b08eda15497.
Yes, its implicitly UNSPEC.
prev parent reply other threads:[~2026-06-14 11:16 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-13 10:27 [PATCH nf 0/1] netfilter: xt_nat: bridge nft_compat rule can trigger NULL-deref Ren Wei
2026-06-13 10:27 ` [PATCH nf 1/1] netfilter: xt_nat: reject unsupported target families Ren Wei
2026-06-13 21:31 ` Florian Westphal
2026-06-13 22:00 ` Florian Westphal
2026-06-13 22:15 ` Pablo Neira Ayuso
2026-06-13 22:25 ` Florian Westphal
2026-06-14 9:43 ` Pablo Neira Ayuso
2026-06-14 11:11 ` Pablo Neira Ayuso
2026-06-14 11:16 ` Florian Westphal [this message]
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=ai6Ncagz3tfhFTAS@strlen.de \
--to=fw@strlen.de \
--cc=bird@lzu.edu.cn \
--cc=bronzed_45_vested@icloud.com \
--cc=n05ec@lzu.edu.cn \
--cc=netfilter-devel@vger.kernel.org \
--cc=pablo@netfilter.org \
--cc=phil@nwl.cc \
--cc=tomapufckgml@gmail.com \
--cc=yifanwucs@gmail.com \
--cc=yuantan098@gmail.com \
--cc=zcliangcn@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.