Subject: CVE-2024-26673: netfilter: nft_ct: sanitize layer 3 and 4 protocol number in custom expectations

From: Greg Kroah-Hartman <[email-masked]>

Description
===========

In the Linux kernel, the following vulnerability has been resolved:

netfilter: nft_ct: sanitize layer 3 and 4 protocol number in custom expectations

- Disallow families other than NFPROTO_{IPV4,IPV6,INET}.
- Disallow layer 4 protocol with no ports, since destination port is a
  mandatory attribute for this object.

The Linux kernel CVE team has assigned CVE-2024-26673 to this issue.

Affected and fixed versions
===========================

	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 5.4.269 with commit f549f340c91f
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 5.10.210 with commit 65ee90efc928
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 5.15.149 with commit b775ced05489
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 6.1.77 with commit 0f501dae16b7
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 6.6.16 with commit cfe3550ea5df
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 6.7.4 with commit 38cc1605338d
	Issue introduced in 5.3 with commit 857b46027d6f and fixed in 6.8 with commit 8059918a1377

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2024-26673
will be updated if fixes are backported, please check that for the most
up to date information about this issue.

Affected files
==============

The file(s) affected by this issue are:
	net/netfilter/nft_ct.c

Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/f549f340c91f08b938d60266e792ff7748dae483
	https://git.kernel.org/stable/c/65ee90efc928410c6f73b3d2e0afdd762652c09d
	https://git.kernel.org/stable/c/b775ced05489f4b77a35fe203e9aeb22f428e38f
	https://git.kernel.org/stable/c/0f501dae16b7099e69ee9b0d5c70b8f40fd30e98
	https://git.kernel.org/stable/c/cfe3550ea5df292c9e2d608e8c4560032391847e
	https://git.kernel.org/stable/c/38cc1605338d99205a263707f4dde76408d3e0e8
	https://git.kernel.org/stable/c/8059918a1377f2f1fff06af4f5a4ed3d5acd6bc4