In the Linux kernel, the following vulnerability has been resolved:
ASoC: lpass: Fix for KASAN useafterfree out of bounds
When we run syzkaller we get below Out of Bounds error.
"KASAN: slab-out-of-bounds Read in regcacheflatread"
Below is the backtrace of the issue:
BUG: KASAN: slab-out-of-bounds in regcacheflatread+0x10c/0x110 Read of size 4 at addr ffffff8088fbf714 by task syz-executor.4/14144 CPU: 6 PID: 14144 Comm: syz-executor.4 Tainted: G W Hardware name: Qualcomm Technologies, Inc. sc7280 CRD platform (rev5+) (DT) Call trace: dumpbacktrace+0x0/0x4ec showstack+0x34/0x50 dumpstacklvl+0xdc/0x11c printaddressdescription+0x30/0x2d8 kasanreport+0x178/0x1e4 _asanreportload4noabort+0x44/0x50 regcacheflatread+0x10c/0x110 regcacheread+0xf8/0x5a0 regmapread+0x45c/0x86c regmapupdatebits+0x128/0x290 regmapupdatebitsbase+0xc0/0x15c sndsoccomponentupdatebits+0xa8/0x22c sndsoccomponentwritefield+0x68/0xd4 txmacroputdecenum+0x1d0/0x268 sndctlelem_write+0x288/0x474
By Error checking and checking valid values issue gets rectifies.
{
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2023/53xxx/CVE-2023-53640.json",
"cna_assigner": "Linux"
}"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2023-53640.json"
[
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@75e5fab7db0cecb6e16b22c34608f0b40a4c7cd1",
"id": "CVE-2023-53640-68a787f3",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c"
},
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"78127813273793113422768915049626966801",
"81649526541132487698575795787809344676",
"93957431897928210278105546733331790834",
"106170970412905663255050090959006680608",
"330910133211631397755680799197248283084",
"292066337123935038313263628146665313405",
"7821722450638170902449878838760877133",
"232871096569632238475293491889450041368"
]
},
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53640-744771bb",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8d81d3b0ed3610d24191d24f8e9e20f6775f0cc5",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c",
"function": "tx_macro_put_dec_enum"
},
"digest": {
"function_hash": "316030811821764558214866321161098241578",
"length": 1255.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8f1512d78b5de928f4616a871e77b58fd546e651",
"id": "CVE-2023-53640-82ed5d8b",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c",
"function": "tx_macro_put_dec_enum"
},
"signature_version": "v1",
"digest": {
"function_hash": "316030811821764558214866321161098241578",
"length": 1255.0
},
"deprecated": false,
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8d81d3b0ed3610d24191d24f8e9e20f6775f0cc5",
"id": "CVE-2023-53640-96ca6356",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c"
},
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"78127813273793113422768915049626966801",
"81649526541132487698575795787809344676",
"93957431897928210278105546733331790834",
"106170970412905663255050090959006680608",
"330910133211631397755680799197248283084",
"292066337123935038313263628146665313405",
"7821722450638170902449878838760877133",
"78612413999003628674101584429282985855"
]
},
"deprecated": false,
"signature_type": "Line"
},
{
"id": "CVE-2023-53640-a1074b42",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f5e61e3fe799ba2fda4320af23d26d28c3302045",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c"
},
"digest": {
"threshold": 0.9,
"line_hashes": [
"78127813273793113422768915049626966801",
"81649526541132487698575795787809344676",
"93957431897928210278105546733331790834",
"106170970412905663255050090959006680608",
"330910133211631397755680799197248283084",
"292066337123935038313263628146665313405",
"7821722450638170902449878838760877133",
"232871096569632238475293491889450041368"
]
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Line"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@f5e61e3fe799ba2fda4320af23d26d28c3302045",
"id": "CVE-2023-53640-b70cfe76",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c",
"function": "tx_macro_put_dec_enum"
},
"digest": {
"function_hash": "218903522512486350828743873161063027000",
"length": 1341.0
},
"signature_version": "v1",
"deprecated": false,
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@75e5fab7db0cecb6e16b22c34608f0b40a4c7cd1",
"id": "CVE-2023-53640-ce9a36b2",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c",
"function": "tx_macro_put_dec_enum"
},
"signature_version": "v1",
"digest": {
"function_hash": "218903522512486350828743873161063027000",
"length": 1341.0
},
"deprecated": false,
"signature_type": "Function"
},
{
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@8f1512d78b5de928f4616a871e77b58fd546e651",
"id": "CVE-2023-53640-f134c568",
"target": {
"file": "sound/soc/codecs/lpass-tx-macro.c"
},
"signature_version": "v1",
"digest": {
"threshold": 0.9,
"line_hashes": [
"78127813273793113422768915049626966801",
"81649526541132487698575795787809344676",
"93957431897928210278105546733331790834",
"106170970412905663255050090959006680608",
"330910133211631397755680799197248283084",
"292066337123935038313263628146665313405",
"7821722450638170902449878838760877133",
"78612413999003628674101584429282985855"
]
},
"deprecated": false,
"signature_type": "Line"
}
]