In the Linux kernel, the following vulnerability has been resolved:
block, bfq: fix uaf for bfqq in bfqexiticq_bfqq
Commit 64dc8c732f5c ("block, bfq: fix possible uaf for 'bfqq->bic'") will access 'bic->bfqq' in bicsetbfqq(), however, bfqexiticqbfqq() can free bfqq first, and then call bicset_bfqq(), which will cause uaf.
Fix the problem by moving bfqexitbfqq() behind bicsetbfqq().
[
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"line_hashes": [
"264925483130729804988661743719821444216",
"276934674898010721540910938740930637515",
"171363601504248423864369642120041351394",
"284894497607264516466241581172835541067",
"33674535368786234788998284944232476022"
],
"threshold": 0.9
},
"id": "CVE-2022-50329-39d83c4d",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1ed959fef5b1c6f1a7a3fbea543698c30ebd6678",
"signature_type": "Line",
"target": {
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"function_hash": "50031814096427565455412696443263302897",
"length": 318.0
},
"id": "CVE-2022-50329-48d4a9ef",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cfe5b38c37720313eff0dec5517442c7ab3c9a20",
"signature_type": "Function",
"target": {
"function": "bfq_exit_icq_bfqq",
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"function_hash": "50031814096427565455412696443263302897",
"length": 318.0
},
"id": "CVE-2022-50329-4d3b2610",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@246cf66e300b76099b5dbd3fdd39e9a5dbc53f02",
"signature_type": "Function",
"target": {
"function": "bfq_exit_icq_bfqq",
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"line_hashes": [
"264925483130729804988661743719821444216",
"276934674898010721540910938740930637515",
"171363601504248423864369642120041351394",
"284894497607264516466241581172835541067",
"33674535368786234788998284944232476022"
],
"threshold": 0.9
},
"id": "CVE-2022-50329-84b4c0e3",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7949b0df3dd9f4817ed4a4e989fa9ee81df6205f",
"signature_type": "Line",
"target": {
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"function_hash": "50031814096427565455412696443263302897",
"length": 318.0
},
"id": "CVE-2022-50329-8e046f84",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1ed959fef5b1c6f1a7a3fbea543698c30ebd6678",
"signature_type": "Function",
"target": {
"function": "bfq_exit_icq_bfqq",
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"line_hashes": [
"264925483130729804988661743719821444216",
"276934674898010721540910938740930637515",
"171363601504248423864369642120041351394",
"284894497607264516466241581172835541067",
"33674535368786234788998284944232476022"
],
"threshold": 0.9
},
"id": "CVE-2022-50329-9fb82598",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cfe5b38c37720313eff0dec5517442c7ab3c9a20",
"signature_type": "Line",
"target": {
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"line_hashes": [
"264925483130729804988661743719821444216",
"276934674898010721540910938740930637515",
"171363601504248423864369642120041351394",
"284894497607264516466241581172835541067",
"33674535368786234788998284944232476022"
],
"threshold": 0.9
},
"id": "CVE-2022-50329-ab561a6e",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1425f1bb5df5239021fd09ebc2a5e8070e705d36",
"signature_type": "Line",
"target": {
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"function_hash": "50031814096427565455412696443263302897",
"length": 318.0
},
"id": "CVE-2022-50329-be9b84ac",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7949b0df3dd9f4817ed4a4e989fa9ee81df6205f",
"signature_type": "Function",
"target": {
"function": "bfq_exit_icq_bfqq",
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"line_hashes": [
"264925483130729804988661743719821444216",
"276934674898010721540910938740930637515",
"171363601504248423864369642120041351394",
"284894497607264516466241581172835541067",
"33674535368786234788998284944232476022"
],
"threshold": 0.9
},
"id": "CVE-2022-50329-daee2de5",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@246cf66e300b76099b5dbd3fdd39e9a5dbc53f02",
"signature_type": "Line",
"target": {
"file": "block/bfq-iosched.c"
}
},
{
"signature_version": "v1",
"deprecated": false,
"digest": {
"function_hash": "50031814096427565455412696443263302897",
"length": 318.0
},
"id": "CVE-2022-50329-ea5e6716",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@1425f1bb5df5239021fd09ebc2a5e8070e705d36",
"signature_type": "Function",
"target": {
"function": "bfq_exit_icq_bfqq",
"file": "block/bfq-iosched.c"
}
}
]