In the Linux kernel, the following vulnerability has been resolved:
netfilter: nftables: exthdr: fix 4-byte stack OOB write
If priv->len is a multiple of 4, then dst[len / 4] can write past
the destination array which leads to stack corruption.
This construct is necessary to clean the remainder of the register
in case ->len is NOT a multiple of the register size, so make it
conditional just like nft_payload.c does.
The bug was added in 4.1 cycle and then copied/inherited when
tcp/sctp and ip option support was added.
Bug reported by Zero Day Initiative project (ZDI-CAN-21950,
ZDI-CAN-21951, ZDI-CAN-21961).
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "28a97c43c9e3",
"versionType": "git"
},
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "a7d86a77c33b",
"versionType": "git"
},
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "1ad7b189cc14",
"versionType": "git"
},
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "d9ebfc0f2137",
"versionType": "git"
},
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "c8f292322ff1",
"versionType": "git"
},
{
"status": "affected",
"version": "49499c3e6e18",
"lessThan": "fd94d9dadee5",
"versionType": "git"
}
],
"programFiles": [
"net/netfilter/nft_exthdr.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4.1"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "4.1",
"versionType": "custom"
},
{
"status": "unaffected",
"version": "4.19.316",
"versionType": "custom",
"lessThanOrEqual": "4.19.*"
},
{
"status": "unaffected",
"version": "5.10.198",
"versionType": "custom",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.132",
"versionType": "custom",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.54",
"versionType": "custom",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.5.4",
"versionType": "custom",
"lessThanOrEqual": "6.5.*"
},
{
"status": "unaffected",
"version": "6.6",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"net/netfilter/nft_exthdr.c"
],
"defaultStatus": "affected"
}
]
git.kernel.org/stable/c/1ad7b189cc1411048434e8595ffcbe7873b71082
git.kernel.org/stable/c/28a97c43c9e32f437ebb8d6126f9bb7f3ca9521a
git.kernel.org/stable/c/a7d86a77c33ba1c357a7504341172cc1507f0698
git.kernel.org/stable/c/c8f292322ff16b9a2272a67de396c09a50e09dce
git.kernel.org/stable/c/d9ebfc0f21377690837ebbd119e679243e0099cc
git.kernel.org/stable/c/fd94d9dadee58e09b49075240fe83423eb1dcd36
lists.debian.org/debian-lts-announce/2024/06/msg00020.html