Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: xt_multiport: validate range encoding in checkentry ports_match_v1() treats any non-zero pflags entry as the start of a port range and unconditionally consumes the next ports[] element as the range end. The checkentry path currently validates protocol, flags and count, but it does not validate the range encoding itself. As a result, malformed rules can mark the last slot as a range start or place two range starts back to back, leaving ports_match_v1() to step past the last valid ports[] element while interpreting the rule. Reject malformed multiport v1 rules in checkentry by validating that each range start has a following element and that the following element is not itself marked as another range start.
Product status
a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (git) before 36bf0d98e180a7c384c8d8a59b0d2d4b80e5eb16
a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (git) before aec14808271f2bf2b656de6ff12dfe73c5fd3b67
a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (git) before 8368ce8eb01f0b91111d814703696e780d0ef12f
a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (git) before 1e4baa853f1cc4227e04f52d6860524707cfb294
a89ecb6a2ef732d04058d87801e2b6bd7e5c7089 (git) before ff64c5bfef12461df8450e0f50bb693b5269c720
2.6.17
Any version before 2.6.17
6.6.136 (semver)
6.12.83 (semver)
6.18.24 (semver)
6.19.14 (semver)
7.0 (original_commit_for_fix)
References
git.kernel.org/...c/36bf0d98e180a7c384c8d8a59b0d2d4b80e5eb16
git.kernel.org/...c/aec14808271f2bf2b656de6ff12dfe73c5fd3b67
git.kernel.org/...c/8368ce8eb01f0b91111d814703696e780d0ef12f
git.kernel.org/...c/1e4baa853f1cc4227e04f52d6860524707cfb294
git.kernel.org/...c/ff64c5bfef12461df8450e0f50bb693b5269c720