CVE-2026-52999
netfilter: nfnetlink_osf: fix out-of-bounds read on option matching
Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: nfnetlink_osf: fix out-of-bounds read on option matching In nf_osf_match(), the nf_osf_hdr_ctx structure is initialized once and passed by reference to nf_osf_match_one() for each fingerprint checked. During TCP option parsing, nf_osf_match_one() advances the shared ctx->optp pointer. If a fingerprint perfectly matches, the function returns early without restoring ctx->optp to its initial state. If the user has configured NF_OSF_LOGLEVEL_ALL, the loop continues to the next fingerprint. However, because ctx->optp was not restored, the next call to nf_osf_match_one() starts parsing from the end of the options buffer. This causes subsequent matches to read garbage data and fail immediately, making it impossible to log more than one match or logging incorrect matches. Instead of using a shared ctx->optp pointer, pass the context as a constant pointer and use a local pointer (optp) for TCP option traversal. This makes nf_osf_match_one() strictly stateless from the caller's perspective, ensuring every fingerprint check starts at the correct option offset.
INFO
Published Date :
June 24, 2026, 5:17 p.m.
Last Modified :
July 15, 2026, 12:54 p.m.
Remotely Exploit :
Yes !
Source :
416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS Scores
| Score | Version | Severity | Vector | Exploitability Score | Impact Score | Source |
|---|---|---|---|---|---|---|
| CVSS 3.1 | CRITICAL | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 |
Solution
- Modify nf_osf_match() to use a local pointer for parsing.
- Ensure context pointer is restored after processing.
- Apply the Linux kernel patch for netfilter.
References to Advisories, Solutions, and Tools
Here, you will find a curated list of external links that provide in-depth
information, practical solutions, and valuable tools related to
CVE-2026-52999.
CWE - Common Weakness Enumeration
While CVE identifies
specific instances of vulnerabilities, CWE categorizes the common flaws or
weaknesses that can lead to vulnerabilities. CVE-2026-52999 is
associated with the following CWEs:
Common Attack Pattern Enumeration and Classification (CAPEC)
Common Attack Pattern Enumeration and Classification
(CAPEC)
stores attack patterns, which are descriptions of the common attributes and
approaches employed by adversaries to exploit the CVE-2026-52999
weaknesses.
We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).
Results are limited to the first 15 repositories due to potential performance issues.
The following list is the news that have been mention
CVE-2026-52999 vulnerability anywhere in the article.
The following table lists the changes that have been made to the
CVE-2026-52999 vulnerability over time.
Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.
-
Initial Analysis by [email protected]
Jul. 15, 2026
Action Type Old Value New Value Added CWE CWE-125 Added CPE Configuration OR *cpe:2.3:o:linux:linux_kernel:5.0:rc7:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:5.0:rc5:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:5.0:rc6:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:5.0:rc8:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.19.26 up to (excluding) 4.20 *cpe:2.3:o:linux:linux_kernel:5.0:-:*:*:*:*:*:* *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.2 up to (excluding) 6.6.141 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.7 up to (excluding) 6.12.91 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.13 up to (excluding) 6.18.33 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 6.19 up to (excluding) 7.0.10 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.16 up to (excluding) 6.1.175 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.11 up to (excluding) 5.15.209 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 4.20.13 up to (excluding) 5.0 *cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* versions from (including) 5.0.1 up to (excluding) 5.10.258 Added Reference Type kernel.org: https://git.kernel.org/stable/c/0145548346c4a30981a870a8ca00eac46ba27e85 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/1c136f2c44a5913646bac85303612fd0825197a0 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/1e19a07291bb8682c14c39a64725a3ae54ab8ccc Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/21883587593d7c8bb519a79460a0b5bc5ffbdabd Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/32e50f92c7cf3f4eba29622179a5fcdc2aebab41 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/70a3f31d25cf2ec9d4ddfa408120171ead955623 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/edb78a142d2e5948e63647c0646aa7e7886935f0 Types: Patch Added Reference Type kernel.org: https://git.kernel.org/stable/c/f5ca450087c3baf3651055e7a6de92600f827af3 Types: Patch -
CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jun. 28, 2026
Action Type Old Value New Value Added CVSS V3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H -
New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Jun. 24, 2026
Action Type Old Value New Value Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '0145548346c4a30981a870a8ca00eac46ba27e85', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '1c136f2c44a5913646bac85303612fd0825197a0', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '1e19a07291bb8682c14c39a64725a3ae54ab8ccc', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '32e50f92c7cf3f4eba29622179a5fcdc2aebab41', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '70a3f31d25cf2ec9d4ddfa408120171ead955623', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': '21883587593d7c8bb519a79460a0b5bc5ffbdabd', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': 'edb78a142d2e5948e63647c0646aa7e7886935f0', 'versionType': 'git'}, {'status': 'affected', 'version': '1a6a0951fc009f6d9fe8ebea2d2417d80d54097b', 'lessThan': 'f5ca450087c3baf3651055e7a6de92600f827af3', 'versionType': 'git'}, {'status': 'affected', 'version': '0c1054e0e5fdef2369fb089e94def978bd209e1f', 'versionType': 'git'}, {'status': 'affected', 'version': '8316b60582facd4068fb0916c4db2418c21b7174', 'versionType': 'git'}, {'status': 'affected', 'version': '4.19.26', 'lessThan': '4.20', 'versionType': 'semver'}, {'status': 'affected', 'version': '4.20.13', 'lessThan': '4.21', 'versionType': 'semver'}], 'programFiles': ['net/netfilter/nfnetlink_osf.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '5.0'}, {'status': 'unaffected', 'version': '0', 'lessThan': '5.0', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.258', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.209', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.175', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.141', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.91', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.33', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.10', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['net/netfilter/nfnetlink_osf.c'], 'defaultStatus': 'affected'}] Added Description In the Linux kernel, the following vulnerability has been resolved: netfilter: nfnetlink_osf: fix out-of-bounds read on option matching In nf_osf_match(), the nf_osf_hdr_ctx structure is initialized once and passed by reference to nf_osf_match_one() for each fingerprint checked. During TCP option parsing, nf_osf_match_one() advances the shared ctx->optp pointer. If a fingerprint perfectly matches, the function returns early without restoring ctx->optp to its initial state. If the user has configured NF_OSF_LOGLEVEL_ALL, the loop continues to the next fingerprint. However, because ctx->optp was not restored, the next call to nf_osf_match_one() starts parsing from the end of the options buffer. This causes subsequent matches to read garbage data and fail immediately, making it impossible to log more than one match or logging incorrect matches. Instead of using a shared ctx->optp pointer, pass the context as a constant pointer and use a local pointer (optp) for TCP option traversal. This makes nf_osf_match_one() strictly stateless from the caller's perspective, ensuring every fingerprint check starts at the correct option offset. Added Reference https://git.kernel.org/stable/c/0145548346c4a30981a870a8ca00eac46ba27e85 Added Reference https://git.kernel.org/stable/c/1c136f2c44a5913646bac85303612fd0825197a0 Added Reference https://git.kernel.org/stable/c/1e19a07291bb8682c14c39a64725a3ae54ab8ccc Added Reference https://git.kernel.org/stable/c/21883587593d7c8bb519a79460a0b5bc5ffbdabd Added Reference https://git.kernel.org/stable/c/32e50f92c7cf3f4eba29622179a5fcdc2aebab41 Added Reference https://git.kernel.org/stable/c/70a3f31d25cf2ec9d4ddfa408120171ead955623 Added Reference https://git.kernel.org/stable/c/edb78a142d2e5948e63647c0646aa7e7886935f0 Added Reference https://git.kernel.org/stable/c/f5ca450087c3baf3651055e7a6de92600f827af3