In the Linux kernel, the following vulnerability has been resolved:
netrom: Decrease sock refcount when sock timers expire
Commit 63346650c1a9 (“netrom: switch to sock timer API”) switched to use
sock timer API. It replaces mod_timer() by sk_reset_timer(), and
del_timer() by sk_stop_timer().
Function sk_reset_timer() will increase the refcount of sock if it is
called on an inactive timer, hence, in case the timer expires, we need to
decrease the refcount ourselves in the handler, otherwise, the sock
refcount will be unbalanced and the sock will never be freed.
Vendor | Product | Version | CPE |
---|---|---|---|
linux | linux_kernel | * | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
[
{
"product": "Linux",
"vendor": "Linux",
"defaultStatus": "unaffected",
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"programFiles": [
"net/netrom/nr_timer.c"
],
"versions": [
{
"version": "ce29e8a259de",
"lessThan": "853262355518",
"status": "affected",
"versionType": "git"
},
{
"version": "baa9e32336bf",
"lessThan": "a01634bf91f2",
"status": "affected",
"versionType": "git"
},
{
"version": "0adf571fa34b",
"lessThan": "48866fd5c361",
"status": "affected",
"versionType": "git"
},
{
"version": "2c6b572458a9",
"lessThan": "9619cc7d97c3",
"status": "affected",
"versionType": "git"
},
{
"version": "63346650c1a9",
"lessThan": "25df44e90ff5",
"status": "affected",
"versionType": "git"
},
{
"version": "63346650c1a9",
"lessThan": "6811744bd0ef",
"status": "affected",
"versionType": "git"
},
{
"version": "63346650c1a9",
"lessThan": "bc1660206c37",
"status": "affected",
"versionType": "git"
},
{
"version": "63346650c1a9",
"lessThan": "517a16b1a88b",
"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/netrom/nr_timer.c"
],
"versions": [
{
"version": "5.0",
"status": "affected"
},
{
"version": "0",
"lessThan": "5.0",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "4.4.277",
"lessThanOrEqual": "4.4.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "4.9.277",
"lessThanOrEqual": "4.9.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "4.14.241",
"lessThanOrEqual": "4.14.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "4.19.199",
"lessThanOrEqual": "4.19.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.4.136",
"lessThanOrEqual": "5.4.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.10.54",
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.13.6",
"lessThanOrEqual": "5.13.*",
"status": "unaffected",
"versionType": "custom"
},
{
"version": "5.14",
"lessThanOrEqual": "*",
"status": "unaffected",
"versionType": "original_commit_for_fix"
}
]
}
]
git.kernel.org/stable/c/25df44e90ff5959b5c24ad361b648504a7e39ef3
git.kernel.org/stable/c/48866fd5c361ea417ed24b43fc2a7dc2f5b060ef
git.kernel.org/stable/c/517a16b1a88bdb6b530f48d5d153478b2552d9a8
git.kernel.org/stable/c/6811744bd0efb9e472cb15d066cdb460beb8cb8a
git.kernel.org/stable/c/853262355518cd1247515b74e83fabf038aa6c29
git.kernel.org/stable/c/9619cc7d97c3aa8ed3cfd2b8678b74fb6d6c7950
git.kernel.org/stable/c/a01634bf91f2b6c42583770eb6815fb6d1e251cf
git.kernel.org/stable/c/bc1660206c3723c37ed4d622ad81781f1e987250