In the Linux kernel, the following vulnerability has been resolved:
thermal/int340xthermal: handle datavault when the value is ZEROSIZEPTR
In some case, the GDDV returns a package with a buffer which has zero length. It causes that kmemdup() returns ZEROSIZEPTR (0x10).
Then the datavaultread() got NULL point dereference problem when accessing the 0x10 value in data_vault.
[ 71.024560] BUG: kernel NULL pointer dereference, address: 0000000000000010
This patch uses ZEROORNULLPTR() for checking ZEROSIZEPTR or NULL value in datavault.
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc",
"id": "CVE-2022-48703-2e6d6292",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_probe",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "259488864097159231245084544735428677478",
"length": 2080.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2",
"id": "CVE-2022-48703-31de1dbd",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_remove",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "326735531709575172907595059707415871824",
"length": 600.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc",
"id": "CVE-2022-48703-6feef3a7",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_remove",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "326735531709575172907595059707415871824",
"length": 600.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2",
"id": "CVE-2022-48703-7db43641",
"signature_type": "Line",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"47402156133892638453212492777629854516",
"60251463454047663781179303896588093487",
"193748929203801279933248625435499013103",
"140366250238995265823401346334951937642",
"181286507721266221490302131677087351903",
"220394382633218086232090831109860340320",
"129562004585403583785773042165059574205",
"83292995723424177759464548226599393522",
"87476074521999643368051144420905471997",
"197716838922155596042865355447276927491",
"25183817745320300348702786540347491645",
"208473734870369827152272542330043181908",
"76885115221212363052322280258311957644",
"315508452371571620262082598208286613271",
"166692207614492416208877513395183891507",
"24113034769012915373853133457938539519"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d",
"id": "CVE-2022-48703-b0f14cd3",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_setup_gddv",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "315871660685546590564487363089561422497",
"length": 770.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d",
"id": "CVE-2022-48703-bc999e3c",
"signature_type": "Line",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"47402156133892638453212492777629854516",
"60251463454047663781179303896588093487",
"193748929203801279933248625435499013103",
"140366250238995265823401346334951937642",
"181286507721266221490302131677087351903",
"220394382633218086232090831109860340320",
"129562004585403583785773042165059574205",
"83292995723424177759464548226599393522",
"87476074521999643368051144420905471997",
"197716838922155596042865355447276927491",
"25183817745320300348702786540347491645",
"208473734870369827152272542330043181908",
"76885115221212363052322280258311957644",
"315508452371571620262082598208286613271",
"166692207614492416208877513395183891507",
"24113034769012915373853133457938539519"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d",
"id": "CVE-2022-48703-beeb83a5",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_remove",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "326735531709575172907595059707415871824",
"length": 600.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc",
"id": "CVE-2022-48703-c4563044",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_setup_gddv",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "274758787933427700217174079017904432783",
"length": 811.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2",
"id": "CVE-2022-48703-df740017",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_setup_gddv",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "315871660685546590564487363089561422497",
"length": 770.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d",
"id": "CVE-2022-48703-f02215b6",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_probe",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "259488864097159231245084544735428677478",
"length": 2080.0
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc",
"id": "CVE-2022-48703-f424304d",
"signature_type": "Line",
"signature_version": "v1",
"deprecated": false,
"target": {
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"152067126694815270128945680070558500902",
"186829156200694260552578899199611759847",
"251109189262066365533812277217231698444",
"238881752234285882730825776153059534252",
"181286507721266221490302131677087351903",
"220394382633218086232090831109860340320",
"129562004585403583785773042165059574205",
"83292995723424177759464548226599393522",
"87476074521999643368051144420905471997",
"197716838922155596042865355447276927491",
"25183817745320300348702786540347491645",
"208473734870369827152272542330043181908",
"76885115221212363052322280258311957644",
"315508452371571620262082598208286613271",
"166692207614492416208877513395183891507",
"24113034769012915373853133457938539519"
]
}
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2",
"id": "CVE-2022-48703-ff558f46",
"signature_type": "Function",
"signature_version": "v1",
"deprecated": false,
"target": {
"function": "int3400_thermal_probe",
"file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c"
},
"digest": {
"function_hash": "259488864097159231245084544735428677478",
"length": 2080.0
}
}
]