LiveActive security incident?Get immediate response
CVE Record

CVE-2026-23107: arm64/fpsimd: signal: Allocate SSVE storage when restoring ZA

In the Linux kernel, the following vulnerability has been resolved: arm64/fpsimd: signal: Allocate SSVE storage when restoring ZA The code to restore a ZA context doesn't attempt to allocate the task's sve_state before setting TIF_SME. Consequently, restoring a ZA context can place a task into an invalid state where TIF_SME is set but the task's sve_state is NULL. In legitimate but uncommon cases where the ZA signal context was NOT created by the kernel in the context of the same task (e.g. if the task is saved/restored with something like CRIU), we have no guarantee that sve_state had been allocated previously. In these cases, userspace can enter streaming mode without trapping while sve_state is NULL, causing a later NULL pointer dereference when the kernel attempts to store the register state: | # ./sigreturn-za | Unable to handle kernel NULL pointer dereference at virtual address 0000000000000000 | Mem abort info: | ESR = 0x0000000096000046 | EC = 0x25: DABT (current EL), IL = 32 bits | SET = 0, FnV = 0 | EA = 0, S1PTW = 0 | FSC = 0x06: level 2 translation fault | Data abort info: | ISV = 0, ISS = 0x00000046, ISS2 = 0x00000000 | CM = 0, WnR = 1, TnD = 0, TagAccess = 0 | GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0 | user pgtable: 4k pages, 52-bit VAs, pgdp=0000000101f47c00 | [0000000000000000] pgd=08000001021d8403, p4d=0800000102274403, pud=0800000102275403, pmd=0000000000000000 | Internal error: Oops: 0000000096000046 [#1] SMP | Modules linked in: | CPU: 0 UID: 0 PID: 153 Comm: sigreturn-za Not tainted 6.19.0-rc1 #1 PREEMPT | Hardware name: linux,dummy-virt (DT) | pstate: 214000c9 (nzCv daIF +PAN -UAO -TCO +DIT -SSBS BTYPE=--) | pc : sve_save_state+0x4/0xf0 | lr : fpsimd_save_user_state+0xb0/0x1c0 | sp : ffff80008070bcc0 | x29: ffff80008070bcc0 x28: fff00000c1ca4c40 x27: 63cfa172fb5cf658 | x26: fff00000c1ca5228 x25: 0000000000000000 x24: 0000000000000000 | x23: 0000000000000000 x22: fff00000c1ca4c40 x21: fff00000c1ca4c40 | x20: 0000000000000020 x19: fff00000ff6900f0 x18: 0000000000000000 | x17: fff05e8e0311f000 x16: 0000000000000000 x15: 028fca8f3bdaf21c | x14: 0000000000000212 x13: fff00000c0209f10 x12: 0000000000000020 | x11: 0000000000200b20 x10: 0000000000000000 x9 : fff00000ff69dcc0 | x8 : 00000000000003f2 x7 : 0000000000000001 x6 : fff00000c1ca5b48 | x5 : fff05e8e0311f000 x4 : 0000000008000000 x3 : 0000000000000000 | x2 : 0000000000000001 x1 : fff00000c1ca5970 x0 : 0000000000000440 | Call trace: | sve_save_state+0x4/0xf0 (P) | fpsimd_thread_switch+0x48/0x198 | __switch_to+0x20/0x1c0 | __schedule+0x36c/0xce0 | schedule+0x34/0x11c | exit_to_user_mode_loop+0x124/0x188 | el0_interrupt+0xc8/0xd8 | __el0_irq_handler_common+0x18/0x24 | el0t_64_irq_handler+0x10/0x1c | el0t_64_irq+0x198/0x19c | Code: 54000040 d51b4408 d65f03c0 d503245f (e5bb5800) | ---[ end trace 0000000000000000 ]--- Fix this by having restore_za_context() ensure that the task's sve_state is allocated, matching what we do when taking an SME trap. Any live SVE/SSVE state (which is restored earlier from a separate signal context) must be preserved, and hence this is not zeroed.

UnknownCVSS not scoredNot KEV-listedUpdated
Glexia's TakeAutomated analysismoderate

Security readout for executives and security teams

Plain-English summary

CVE-2026-23107 is a Linux kernel arm64 bug that can leave a process in an invalid CPU state after restoring ZA signal context. The documented result is a kernel NULL pointer dereference and oops, creating an availability concern on affected arm64 systems.

Executive priority

Treat as a targeted availability risk, not a confirmed emergency. Patch through standard kernel maintenance, with higher priority for arm64 fleets, high-availability systems, and environments using process checkpoint/restore.

Technical view

The arm64 fpsimd signal restore path sets TIF_SME while restoring ZA context without ensuring sve_state is allocated. In uncommon legitimate restore flows, such as CRIU-like task save and restore, userspace can enter streaming mode with sve_state NULL, later triggering a NULL dereference during register-state save.

Likely exposure

Exposure appears limited to Linux arm64 kernels with SME/ZA signal handling in affected version ranges. The bundle lists Linux kernel versions including 5.19 through 6.19-era stable lines, with fixed stable commits referenced.

Exploitation context

The source describes a userspace-triggered kernel crash condition but does not cite public exploitation, KEV listing, privilege escalation, or remote attack capability. KEV is false in the supplied bundle.

Researcher notes

The root issue is missing sve_state allocation in restore_za_context before TIF_SME is set. The fix aligns ZA restore with SME trap allocation behavior while preserving live SVE/SSVE state. Evidence is limited to kernel commit description and CVE metadata.

Mitigation direction

  • Apply the relevant Linux stable kernel fix referenced by your kernel or distribution vendor.
  • Check distribution advisories for packaged kernel versions containing the ZA restore fix.
  • Prioritize arm64 hosts using SME-capable hardware or checkpoint/restore workflows.
  • Use normal kernel rollback procedures if a vendor-fixed kernel causes operational regressions.

Validation and detection

  • Inventory arm64 Linux kernels and compare versions against vendor fixed releases.
  • Confirm whether deployed hardware and workloads use SME/ZA or checkpoint/restore behavior.
  • Verify installed kernel changelogs include one of the referenced stable commits.
  • Monitor kernel logs for NULL dereference oops traces involving sve_save_state or fpsimd paths.
Prepared
Confidence
medium
Sources
7

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2026-23107 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Unknown
CVSS
Not scored
Known Exploited
No
Published
Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

0CVSS vectors
3Timeline events
0ADP providers
6Source links

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinux39782210eb7e87634d96cacb6ece370bc59d74ba, 39782210eb7e87634d96cacb6ece370bc59d74ba, 39782210eb7e87634d96cacb6ece370bc59d74ba, 39782210eb7e87634d96cacb6ece370bc59d74ba, 39782210eb7e87634d96cacb6ece370bc59d74baunaffected
LinuxLinux5.19, 0, 6.1.162, 6.6.122, 6.12.68, 6.18.8, 6.19affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.