In the Linux kernel, the following vulnerability has been resolved:
arm64: mops: Do not dereference src reg for a set operation
The source register is not used for SET* and reading it can result in a UBSAN out-of-bounds array access error, specifically when the MOPS exception is taken from a SET* sequence with XZR (reg 31) as the source. Architecturally this is the only case where a src/dst/size field in the ESR can be reported as 31.
Prior to 2de451a329cf662b the code in doel0mops() was benign as the use of ptregsread_reg() prevented the out-of-bounds access.
[
{
"deprecated": false,
"target": {
"function": "arm64_mops_reset_regs",
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f6022a74147675124b781fdc056b291850e7786",
"digest": {
"function_hash": "101363213260339334121386614009292176280",
"length": 921.0
},
"id": "CVE-2025-37846-1288c6c4",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"function": "arm64_mops_reset_regs",
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a13bfa4fe0d6949cea14718df2d1fe84c38cd113",
"digest": {
"function_hash": "101363213260339334121386614009292176280",
"length": 921.0
},
"id": "CVE-2025-37846-24b690d7",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@a13bfa4fe0d6949cea14718df2d1fe84c38cd113",
"digest": {
"threshold": 0.9,
"line_hashes": [
"273261861285181898593643579248815063067",
"137849744101169201217970852275155626918",
"282820244135515455716978282442626413722",
"182252697656283818291223224340704613006",
"296589765987038929808045896896819982503",
"69025892094735321503754288989534096599",
"6761013088777174473440163019279586043",
"786208626193915125385976893952893826",
"222596020660231191801490130617596220100"
]
},
"id": "CVE-2025-37846-300eadea",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"function": "arm64_mops_reset_regs",
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@43267d934eacff6c70e15545d804ebbcab8a0bf5",
"digest": {
"function_hash": "101363213260339334121386614009292176280",
"length": 921.0
},
"id": "CVE-2025-37846-3fb5c02b",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@43267d934eacff6c70e15545d804ebbcab8a0bf5",
"digest": {
"threshold": 0.9,
"line_hashes": [
"273261861285181898593643579248815063067",
"137849744101169201217970852275155626918",
"282820244135515455716978282442626413722",
"182252697656283818291223224340704613006",
"296589765987038929808045896896819982503",
"69025892094735321503754288989534096599",
"6761013088777174473440163019279586043",
"786208626193915125385976893952893826",
"222596020660231191801490130617596220100"
]
},
"id": "CVE-2025-37846-8c6426a9",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@5f6022a74147675124b781fdc056b291850e7786",
"digest": {
"threshold": 0.9,
"line_hashes": [
"273261861285181898593643579248815063067",
"137849744101169201217970852275155626918",
"282820244135515455716978282442626413722",
"182252697656283818291223224340704613006",
"296589765987038929808045896896819982503",
"69025892094735321503754288989534096599",
"6761013088777174473440163019279586043",
"786208626193915125385976893952893826",
"222596020660231191801490130617596220100"
]
},
"id": "CVE-2025-37846-acc3e8b3",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"function": "arm64_mops_reset_regs",
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Function",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eec737e17e5567e08148550a7f1d94d495b9fb17",
"digest": {
"function_hash": "101363213260339334121386614009292176280",
"length": 921.0
},
"id": "CVE-2025-37846-cb5e3873",
"signature_version": "v1"
},
{
"deprecated": false,
"target": {
"file": "arch/arm64/include/asm/traps.h"
},
"signature_type": "Line",
"source": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git@eec737e17e5567e08148550a7f1d94d495b9fb17",
"digest": {
"threshold": 0.9,
"line_hashes": [
"273261861285181898593643579248815063067",
"137849744101169201217970852275155626918",
"282820244135515455716978282442626413722",
"182252697656283818291223224340704613006",
"296589765987038929808045896896819982503",
"69025892094735321503754288989534096599",
"6761013088777174473440163019279586043",
"786208626193915125385976893952893826",
"222596020660231191801490130617596220100"
]
},
"id": "CVE-2025-37846-f2729316",
"signature_version": "v1"
}
]