Loading
netfilter: nf_tables: reject mismatching sum of field_len with set key length
stable inclusion from stable-v6.6.76 commit 82e491e085719068179ff6a5466b7387cc4bbf32 category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/IBW08Q Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=82e491e085719068179ff6a5466b7387cc4bbf32 -------------------------------- commit 1b9335a8000fb70742f7db10af314104b6ace220 upstream. The field length description provides the length of each separated key field in the concatenation, each field gets rounded up to 32-bits to calculate the pipapo rule width from pipapo_init(). The set key length provides the total size of the key aligned to 32-bits. Register-based arithmetics still allows for combining mismatching set key length and field length description, eg. set key length 10 and field description [ 5, 4 ] leading to pipapo width of 12. Cc: stable@vger.kernel.org Fixes: 3ce67e3793f4 ("netfilter: nf_tables: do not allow mismatch field size and set key length") Reported-by:Noam Rathaus <noamr@ssd-disclosure.com> Reviewed-by:
Florian Westphal <fw@strlen.de> Signed-off-by:
Pablo Neira Ayuso <pablo@netfilter.org> Signed-off-by:
Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 82e491e085719068179ff6a5466b7387cc4bbf32) Signed-off-by:
Wentao Guan <guanwentao@uniontech.com>