In the Linux kernel, the following vulnerability has been resolved:
openrisc: traps: Don't send signals to kernel mode threads
OpenRISC exception handling sends signals to user processes on floating point exceptions and trap instructions (for debugging) among others. There is a bug where the trap handling logic may send signals to kernel threads, we should not send these signals to kernel threads, if that happens we treat it as an error.
This patch adds conditions to die if the kernel receives these exceptions in kernel mode code.
[
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-0dce8471",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c0ed9a711e3392d73e857faa031d8d349c0d70db",
"digest": {
"length": 121.0,
"function_hash": "73245600443569172063227883199335250929"
},
"signature_version": "v1",
"target": {
"function": "do_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"id": "CVE-2024-38614-2862c16c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@075c0405b0d7d9fc490609e988a3af0069596538",
"digest": {
"line_hashes": [
"224586963957793982498379464148568957386",
"143360055059537998022481385463122920694",
"40867167185488347422593097787004519059",
"112408462424697080647845998308444124448",
"277909429391708748765387726638730078386",
"264852602174335921632599102086577270627",
"194778098218239956123175951105107255386",
"265565313852242909288459438935202517848",
"61030451452332657757149438839047494408",
"327240556244299349544779491519299160859",
"168530142503211863064771819010052595527",
"293886763240022614712870598950474983247",
"299021277869645522781542920276232654973",
"19715417258680693612891118128949830503",
"152196470132756738209820022721152237234",
"178097575534398533054071923807543546858",
"155740677131913149142576409266760774885",
"155498767838299791686776443143143528076",
"134163676834173719933086921083664343254",
"214293806620275483169246701526155859344",
"246895919617505674493522745537464543432"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-32b83f79",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cea9d0015c140af39477dd5eeb9b20233a45daa9",
"digest": {
"length": 458.0,
"function_hash": "301305497510208173465451396758494932347"
},
"signature_version": "v1",
"target": {
"function": "do_fpe_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-79ed7281",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@075c0405b0d7d9fc490609e988a3af0069596538",
"digest": {
"length": 458.0,
"function_hash": "301305497510208173465451396758494932347"
},
"signature_version": "v1",
"target": {
"function": "do_fpe_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"id": "CVE-2024-38614-90dd1d9c",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c0ed9a711e3392d73e857faa031d8d349c0d70db",
"digest": {
"line_hashes": [
"224586963957793982498379464148568957386",
"143360055059537998022481385463122920694",
"40867167185488347422593097787004519059",
"112408462424697080647845998308444124448",
"277909429391708748765387726638730078386",
"264852602174335921632599102086577270627",
"194778098218239956123175951105107255386",
"265565313852242909288459438935202517848",
"61030451452332657757149438839047494408",
"327240556244299349544779491519299160859",
"168530142503211863064771819010052595527",
"293886763240022614712870598950474983247",
"299021277869645522781542920276232654973",
"19715417258680693612891118128949830503",
"152196470132756738209820022721152237234",
"178097575534398533054071923807543546858",
"155740677131913149142576409266760774885",
"155498767838299791686776443143143528076",
"134163676834173719933086921083664343254",
"214293806620275483169246701526155859344",
"246895919617505674493522745537464543432"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"id": "CVE-2024-38614-9a3c0712",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c88cfb5cea5f8f9868ef02cc9ce9183a26dcf20f",
"digest": {
"line_hashes": [
"224586963957793982498379464148568957386",
"143360055059537998022481385463122920694",
"40867167185488347422593097787004519059",
"112408462424697080647845998308444124448",
"277909429391708748765387726638730078386",
"264852602174335921632599102086577270627",
"194778098218239956123175951105107255386",
"265565313852242909288459438935202517848",
"61030451452332657757149438839047494408",
"327240556244299349544779491519299160859",
"168530142503211863064771819010052595527",
"293886763240022614712870598950474983247",
"299021277869645522781542920276232654973",
"19715417258680693612891118128949830503",
"152196470132756738209820022721152237234",
"178097575534398533054071923807543546858",
"155740677131913149142576409266760774885",
"155498767838299791686776443143143528076",
"134163676834173719933086921083664343254",
"214293806620275483169246701526155859344",
"246895919617505674493522745537464543432"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-9bf39c2a",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c88cfb5cea5f8f9868ef02cc9ce9183a26dcf20f",
"digest": {
"length": 458.0,
"function_hash": "301305497510208173465451396758494932347"
},
"signature_version": "v1",
"target": {
"function": "do_fpe_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Line",
"deprecated": false,
"id": "CVE-2024-38614-a4930128",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cea9d0015c140af39477dd5eeb9b20233a45daa9",
"digest": {
"line_hashes": [
"224586963957793982498379464148568957386",
"143360055059537998022481385463122920694",
"40867167185488347422593097787004519059",
"112408462424697080647845998308444124448",
"277909429391708748765387726638730078386",
"264852602174335921632599102086577270627",
"194778098218239956123175951105107255386",
"265565313852242909288459438935202517848",
"61030451452332657757149438839047494408",
"327240556244299349544779491519299160859",
"168530142503211863064771819010052595527",
"293886763240022614712870598950474983247",
"299021277869645522781542920276232654973",
"19715417258680693612891118128949830503",
"152196470132756738209820022721152237234",
"178097575534398533054071923807543546858",
"155740677131913149142576409266760774885",
"155498767838299791686776443143143528076",
"134163676834173719933086921083664343254",
"214293806620275483169246701526155859344",
"246895919617505674493522745537464543432"
],
"threshold": 0.9
},
"signature_version": "v1",
"target": {
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-b9013165",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@075c0405b0d7d9fc490609e988a3af0069596538",
"digest": {
"length": 121.0,
"function_hash": "73245600443569172063227883199335250929"
},
"signature_version": "v1",
"target": {
"function": "do_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-ce19ab67",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@cea9d0015c140af39477dd5eeb9b20233a45daa9",
"digest": {
"length": 121.0,
"function_hash": "73245600443569172063227883199335250929"
},
"signature_version": "v1",
"target": {
"function": "do_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-d4f88b24",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c0ed9a711e3392d73e857faa031d8d349c0d70db",
"digest": {
"length": 458.0,
"function_hash": "301305497510208173465451396758494932347"
},
"signature_version": "v1",
"target": {
"function": "do_fpe_trap",
"file": "arch/openrisc/kernel/traps.c"
}
},
{
"signature_type": "Function",
"deprecated": false,
"id": "CVE-2024-38614-dc8d7199",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@c88cfb5cea5f8f9868ef02cc9ce9183a26dcf20f",
"digest": {
"length": 121.0,
"function_hash": "73245600443569172063227883199335250929"
},
"signature_version": "v1",
"target": {
"function": "do_trap",
"file": "arch/openrisc/kernel/traps.c"
}
}
]