CVE-2026-23333

Source
https://cve.org/CVERecord?id=CVE-2026-23333
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23333.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-23333
Downstream
Published
2026-03-25T10:27:23.869Z
Modified
2026-04-02T13:12:21.684573Z
Summary
netfilter: nft_set_rbtree: validate open interval overlap
Details

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

netfilter: nftsetrbtree: validate open interval overlap

[ Upstream commit 648946966a08e4cb1a71619e3d1b12bd7642de7b ]

Open intervals do not have an end element, in particular an open interval at the end of the set is hard to validate because of it is lacking the end element, and interval validation relies on such end element to perform the checks.

This patch adds a new flag field to struct nftsetelem, this is not an issue because this is a temporary object that is allocated in the stack from the insert/deactivate path. This flag field is used to specify that this is the last element in this add/delete command.

The last flag is used, in combination with the start element cookie, to check if there is a partial overlap, eg.

Already exists: 255.255.255.0-255.255.255.254 Add interval: 255.255.255.0-255.255.255.255 ~~~~~~~~~~~~~ start element overlap

Basically, the idea is to check for an existing end element in the set if there is an overlap with an existing start element.

However, the last open interval can come in any position in the add command, the corner case can get a bit more complicated:

Already exists: 255.255.255.0-255.255.255.254 Add intervals: 255.255.255.0-255.255.255.255,255.255.255.0-255.255.255.254 ~~~~~~~~~~~~~ start element overlap

To catch this overlap, annotate that the new start element is a possible overlap, then report the overlap if the next element is another start element that confirms that previous element in an open interval at the end of the set.

For deletions, do not update the start cookie when deleting an open interval, otherwise this can trigger spurious EEXIST when adding new elements.

Unfortunately, there is no NFTSETELEMINTERVALOPEN flag which would make easier to detect open interval overlaps.

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/23xxx/CVE-2026-23333.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
7c84d41416d836ef7e533bd4d64ccbdf40c5ac70
Fixed
6db2be971e3d70c9e3f85d39eff7103c2ee2f579

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23333.json"

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
5.6.0
Fixed
6.19.4

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23333.json"