In the Linux kernel, the following vulnerability has been resolved:
cpufreq: Init completion before kobjectinitand_add()
In cpufreqpolicyalloc(), it will call uninitialed completion in cpufreqsysfsrelease() when kobjectinitand_add() fails. And that will cause a crash such as the following page fault in complete:
BUG: unable to handle page fault for address: fffffffffffffff8 [..] RIP: 0010:complete+0x98/0x1f0 [..] Call Trace: kobjectput+0x1be/0x4c0 cpufreqonline.cold+0xee/0x1fd cpufreqadddev+0x183/0x1e0 subsysinterfaceregister+0x3f5/0x4e0 cpufreqregisterdriver+0x3b7/0x670 acpicpufreqinit+0x56c/0x1000 [acpicpufreq] dooneinitcall+0x13d/0x780 doinitmodule+0x1c3/0x630 loadmodule+0x6e67/0x73b0 _dosysfinitmodule+0x181/0x240 dosyscall64+0x35/0x80 entrySYSCALL64afterhwframe+0x63/0xcd
{
"cna_assigner": "Linux",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/50xxx/CVE-2022-50473.json"
}[
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-17f39dcd",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3cdd91a9163248935720927531066b74f57aa43b"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-1aac9d97",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c51054896bcce1d33d39fead2af73fec24f40b6"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-1c8925f1",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d88540acfc7a17079021d866de914112c396edb1"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-2e21ef5a",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e7c0c943ed675b66d4bbb16c51c6a3bb58da047e"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-627fbbe0",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5c51054896bcce1d33d39fead2af73fec24f40b6"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-685a4802",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e379b88a8f8cffc99b318e028705ed9e3da0e1e0"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-6faf8e7f",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8fb4c98f20dfca1237de2e3dfdbe78d156784fd3"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-a3d21b3e",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@3cdd91a9163248935720927531066b74f57aa43b"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-ccacb141",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e379b88a8f8cffc99b318e028705ed9e3da0e1e0"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-e0f7e4ef",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8fb4c98f20dfca1237de2e3dfdbe78d156784fd3"
},
{
"digest": {
"length": 1889.0,
"function_hash": "89585973734718471451636685616199436383"
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function",
"id": "CVE-2022-50473-f01a1bd3",
"target": {
"function": "cpufreq_policy_alloc",
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e7c0c943ed675b66d4bbb16c51c6a3bb58da047e"
},
{
"digest": {
"threshold": 0.9,
"line_hashes": [
"39338330001067901451373829559472700922",
"183027844997521405064518872516896767164",
"14838274341517317420239402518148067934",
"305816738617456450666903479193506447880",
"160219348328745789394947335116288538593",
"321931360164718764814284328867753366334",
"332658840373752781337221695649025713318"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line",
"id": "CVE-2022-50473-f4c61982",
"target": {
"file": "drivers/cpufreq/cpufreq.c"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@d88540acfc7a17079021d866de914112c396edb1"
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-50473.json"