In the Linux kernel, the following vulnerability has been resolved:
netfilter: tproxy: bail out if IP has been disabled on the device
syzbot reports:
general protection fault, probably for non-canonical address 0xdffffc0000000003: 0000 [#1] PREEMPT SMP KASAN PTI
KASAN: null-ptr-deref in range [0x0000000000000018-0x000000000000001f]
[…]
RIP: 0010:nf_tproxy_laddr4+0xb7/0x340 net/ipv4/netfilter/nf_tproxy_ipv4.c:62
Call Trace:
nft_tproxy_eval_v4 net/netfilter/nft_tproxy.c:56 [inline]
nft_tproxy_eval+0xa9a/0x1a00 net/netfilter/nft_tproxy.c:168
__in_dev_get_rcu() can return NULL, so check for this.
[
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/ipv4/netfilter/nf_tproxy_ipv4.c"
],
"versions": [
{
"version": "cc6eb4338569",
"lessThan": "10f0af5234da",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "07eeedafc59c",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "6fe5af4ff06d",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "caf3a8afb5ea",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "570b4c52096e",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "819bfeca16eb",
"status": "affected",
"versionType": "git"
},
{
"version": "cc6eb4338569",
"lessThan": "21a673bddc8f",
"status": "affected",
"versionType": "git"
}
]
},
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "affected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/ipv4/netfilter/nf_tproxy_ipv4.c"
],
"versions": [
{
"version": "2.6.37",
"status": "affected"
},
{
"version": "0",
"lessThan": "2.6.37",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.4.278",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.10.219",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.15.161",
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.1.93",
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.6.33",
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.9.4",
"lessThanOrEqual": "6.9.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "6.10-rc2",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
]
git.kernel.org/stable/c/07eeedafc59c45fe5de43958128542be3784764c
git.kernel.org/stable/c/10f0af5234dafd03d2b75233428ec3f11cf7e43d
git.kernel.org/stable/c/21a673bddc8fd4873c370caf9ae70ffc6d47e8d3
git.kernel.org/stable/c/570b4c52096e62fda562448f5760fd0ff06110f0
git.kernel.org/stable/c/6fe5af4ff06db3d4d80e07a19356640428159f03
git.kernel.org/stable/c/819bfeca16eb9ad647ddcae25e7e12c30612147c
git.kernel.org/stable/c/caf3a8afb5ea00db6d5398adf148d5534615fd80