netfilter: nf_log: unregister loggers before per-net teardown
In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_log: unregister loggers before per-net teardown nf_log_syslog and nfnetlink_log unregister their per-network namespace operations before unregistering their global logger backends. This leaves a window where a sysctl or netlink writer can rebind the still- registered logger after the per-net pre-exit callback cleared the old selection. The race looks like this: CPU 0 CPU 1 ---- ---- unregister_pernet_subsys() nf_log_unset(net, logger) net->nf.nf_loggers[pf] = NULL lock nf_log_mutex find logger in loggers[][] net->nf.nf_loggers[pf] = logger unlock nf_log_mutex nf_log_unregister(logger) lock nf_log_mutex loggers[pf][type] = NULL unlock nf_log_mutex synchronize_rcu() module exit returns module core frees backend memory Later, a sysctl read or packet logging operation can dereference the stale per-net logger pointer. Fix this by unregistering the global logger backends before tearing down per-net state. Once the global registrations are gone, later writers can no longer rebind the logger. unregister_pernet_subsys() already waits for an RCU grace period after the pre-exit callback clears the per-net selection, while nf_log_unregister() continues to cover readers of the global logger table. Apply this ordering fix to both nf_log backends that combine per-net teardown with global logger registration.
CVE-2026-97608
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: cve:CVE-2026-97608
Linux
Source reference: /containers/cna/affected/0/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Linux
Source reference: /containers/cna/affected/1/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "51417230716b73f6aa1dc402b3a56d3382a694dc",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "b0514ca1ee6f2b708d6c602ea946acdfc6a90e24",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "90166834b7dc6131aa42b6b14b8b4ed47be97079",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "eaec35fae8f2052c1878a5c7cc7699d8357d79f2",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "64803ba0a05791cf9ca874466480e4c4cadaf7ab",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "dce24f3a146948595bb1b86347f31e20b4975daa",
"versionType": "git"
},
{
"status": "affected",
"version": "5b023fc8d8e0997e0b7ea6506d243afd5478c96e",
"lessThan": "2c018cc4842c33f0c732962e2ab58635e8ae5823",
"versionType": "git"
}
],
"programFiles": [
"net/netfilter/nf_log_syslog.c",
"net/netfilter/nfnetlink_log.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "3.10"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "3.10",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.15.222",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.189",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.158",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.111",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.53",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.2.7",
"versionType": "semver",
"lessThanOrEqual": "7.2.*"
},
{
"status": "unaffected",
"version": "7.3",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"net/netfilter/nf_log_syslog.c",
"net/netfilter/nfnetlink_log.c"
],
"defaultStatus": "affected"
}
]- Related CVEs
- CVE-2026-97608
Source reference:
/cveMetadata/cveId
Publisher severity
high
Source reference: /containers/cna/metrics
- Event
- #38047 · Revision 1
- Added to Heist Feed
- Publisher date