In the Linux kernel, the following vulnerability has been resolved:
nbd: fix uaf in nbd_open
Commit 4af5f2e03013 (“nbd: use blk_mq_alloc_disk and
blk_cleanup_disk”) cleans up disk by blk_cleanup_disk() and it won’t set
disk->private_data as NULL as before. UAF may be triggered in nbd_open()
if someone tries to open nbd device right after nbd_put() since nbd has
been free in nbd_dev_remove().
Fix this by implementing ->free_disk and free private data in it.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "4af5f2e03013",
"lessThan": "4e9b3ec84dc9",
"versionType": "git"
},
{
"status": "affected",
"version": "4af5f2e03013",
"lessThan": "879947f4180b",
"versionType": "git"
},
{
"status": "affected",
"version": "4af5f2e03013",
"lessThan": "56bd7901b5e9",
"versionType": "git"
},
{
"status": "affected",
"version": "4af5f2e03013",
"lessThan": "327462725b0f",
"versionType": "git"
}
],
"programFiles": [
"drivers/block/nbd.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.14"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "5.14",
"versionType": "custom"
},
{
"status": "unaffected",
"version": "6.1.63",
"versionType": "custom",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.5.12",
"versionType": "custom",
"lessThanOrEqual": "6.5.*"
},
{
"status": "unaffected",
"version": "6.6.2",
"versionType": "custom",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.7",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"drivers/block/nbd.c"
],
"defaultStatus": "affected"
}
]