In the Linux kernel, the following vulnerability has been resolved:
tee: optee: Fix kernel panic caused by incorrect error handling
The error path while failing to register devices on the TEE bus has a bug leading to kernel panic as follows:
[ 15.398930] Unable to handle kernel paging request at virtual address ffff07ed00626d7c [ 15.406913] Mem abort info: [ 15.409722] ESR = 0x0000000096000005 [ 15.413490] EC = 0x25: DABT (current EL), IL = 32 bits [ 15.418814] SET = 0, FnV = 0 [ 15.421878] EA = 0, S1PTW = 0 [ 15.425031] FSC = 0x05: level 1 translation fault [ 15.429922] Data abort info: [ 15.432813] ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000 [ 15.438310] CM = 0, WnR = 0, TnD = 0, TagAccess = 0 [ 15.443372] GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 [ 15.448697] swapper pgtable: 4k pages, 48-bit VAs, pgdp=00000000d9e3e000 [ 15.455413] [ffff07ed00626d7c] pgd=1800000bffdf9003, p4d=1800000bffdf9003, pud=0000000000000000 [ 15.464146] Internal error: Oops: 0000000096000005 [#1] PREEMPT SMP
Commit 7269cba53d90 ("tee: optee: Fix supplicant based device enumeration") lead to the introduction of this bug. So fix it appropriately.
[
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bc40ded92af55760d12bec8222d4108de725dbe4",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-25f040a2"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95915ba4b987cf2b222b0f251280228a1ff977ac",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-2746b119"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e5b5948c769aa1ebf962dddfb972f87d8f166f95",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-3c569688"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bc40ded92af55760d12bec8222d4108de725dbe4",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-46417179"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bfa344afbe472a9be08f78551fa2190c1a07d7d3",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-48465c29"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@520f79c110ff712b391b3d87fcacf03c74bc56ee",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-60605555"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@95915ba4b987cf2b222b0f251280228a1ff977ac",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-79136f59"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@e5b5948c769aa1ebf962dddfb972f87d8f166f95",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-8819011d"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4b12ff5edd141926d49c9ace4791adf3a4902fe7",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-dac49e87"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@4b12ff5edd141926d49c9ace4791adf3a4902fe7",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-e603f3a2"
},
{
"signature_type": "Line",
"deprecated": false,
"signature_version": "v1",
"digest": {
"line_hashes": [
"317833720761798354088108753124026215302",
"74825739690397043786880590294489537116",
"71256843946134821103428617424449270534",
"158949795279756506410696118066802475663",
"133756653514749547891675999196553345073",
"219668278276506024974430199061312646456",
"223618364139589081916355855845399276151",
"337190385641036669741182197668020272632",
"125124332077627051451347924350818460764"
],
"threshold": 0.9
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@bfa344afbe472a9be08f78551fa2190c1a07d7d3",
"target": {
"file": "drivers/tee/optee/device.c"
},
"id": "CVE-2024-35785-f1b99f74"
},
{
"signature_type": "Function",
"deprecated": false,
"signature_version": "v1",
"digest": {
"length": 651.0,
"function_hash": "140719368199558011280028681014984970087"
},
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@520f79c110ff712b391b3d87fcacf03c74bc56ee",
"target": {
"file": "drivers/tee/optee/device.c",
"function": "optee_register_device"
},
"id": "CVE-2024-35785-fa352960"
}
]