mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 13:06:59 +02:00
netfilter: nf_tables: validate chain type update if available
[ Upstream commitaaba7ddc85] Parse netlink attribute containing the chain type in this update, to bail out if this is different from the existing type. Otherwise, it is possible to define a chain with the same name, hook and priority but different type, which is silently ignored. Fixes:96518518cc("netfilter: add nftables") Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f5ab4e73c9
commit
f1ee0ffbc0
|
|
@ -2263,7 +2263,16 @@ static int nft_chain_parse_hook(struct net *net,
|
|||
return -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
type = basechain->type;
|
||||
if (nla[NFTA_CHAIN_TYPE]) {
|
||||
type = __nf_tables_chain_type_lookup(nla[NFTA_CHAIN_TYPE],
|
||||
family);
|
||||
if (!type) {
|
||||
NL_SET_BAD_ATTR(extack, nla[NFTA_CHAIN_TYPE]);
|
||||
return -ENOENT;
|
||||
}
|
||||
} else {
|
||||
type = basechain->type;
|
||||
}
|
||||
}
|
||||
|
||||
if (!try_module_get(type->owner)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user