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", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_probe" }, "digest": { "length": 2080.0, "function_hash": "259488864097159231245084544735428677478" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-2e6d6292" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_remove" }, "digest": { "length": 600.0, "function_hash": "326735531709575172907595059707415871824" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-31de1dbd" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_remove" }, "digest": { "length": 600.0, "function_hash": "326735531709575172907595059707415871824" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-6feef3a7" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2", "signature_version": "v1", "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" ] }, "deprecated": false, "signature_type": "Line", "id": "CVE-2022-48703-7db43641" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_setup_gddv" }, "digest": { "length": 770.0, "function_hash": "315871660685546590564487363089561422497" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-b0f14cd3" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d", "signature_version": "v1", "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" ] }, "deprecated": false, "signature_type": "Line", "id": "CVE-2022-48703-bc999e3c" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_remove" }, "digest": { "length": 600.0, "function_hash": "326735531709575172907595059707415871824" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-beeb83a5" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_setup_gddv" }, "digest": { "length": 811.0, "function_hash": "274758787933427700217174079017904432783" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-c4563044" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_setup_gddv" }, "digest": { "length": 770.0, "function_hash": "315871660685546590564487363089561422497" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-df740017" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@7931e28098a4c1a2a6802510b0cbe57546d2049d", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_probe" }, "digest": { "length": 2080.0, "function_hash": "259488864097159231245084544735428677478" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-f02215b6" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@39d5137085a6c37ace4680ee4d24020a4a03e7dc", "signature_version": "v1", "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" ] }, "deprecated": false, "signature_type": "Line", "id": "CVE-2022-48703-f424304d" }, { "source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@dae42083b045a4ddf71c57cf350cb2412b5915c2", "signature_version": "v1", "target": { "file": "drivers/thermal/intel/int340x_thermal/int3400_thermal.c", "function": "int3400_thermal_probe" }, "digest": { "length": 2080.0, "function_hash": "259488864097159231245084544735428677478" }, "deprecated": false, "signature_type": "Function", "id": "CVE-2022-48703-ff558f46" } ]