CVE-2026-23102

Linux kernel (Azure) vulnerabilities

Beschreibung

Im Linux-Kernel wurde folgende Schwachstelle behoben: arm64/fpsimd: Signal: Behebung der Wiederherstellung des SVE-Kontexts Wenn SME unterstützt wird, kann die Wiederherstellung des SVE-Signal-Kontexts auf verschiedene Weisen schiefgehen. Dazu gehört das Versetzen der Aufgabe in einen ungültigen Zustand, bei dem der Kernel aus dem Speicher außerhalb der Grenzen lesen könnte (und möglicherweise einen fatalen Fehler verursachen) und/oder die Aufgabe mit SIGKILL beendet wird. (1) Die Wiederherstellung eines Kontexts mit SVE_SIG_FLAG_SM gesetzt kann die Aufgabe in einen ungültigen Zustand versetzen, bei dem SVCR.SM gesetzt (und sve_state nicht NULL ist), aber TIF_SME nicht gesetzt ist. Dies führt zu Speicherzugriffen außerhalb der Grenzen und/oder zum Beenden der Aufgabe mit SIGKILL. Dies kann nur in ungewöhnlichen, aber legitimen Fällen eintreten, bei denen der SVE-Signal-Kontext entweder von Userspace geändert wurde oder im Kontext einer anderen Aufgabe gespeichert wurde (z. B. wie bei CRIU), da ansonsten das Vorhandensein eines SVE-Signal-Kontexts mit SVE_SIG_FLAG_SM impliziert, dass TIF_SME bereits gesetzt ist. In diesem Zustand wird task_fpsimd_load() SMCR_ELx nicht konfigurieren (ein beliebiger Wert bleibt im Hardware konfiguriert) bevor SVCR wiederhergestellt und versucht wird, die Streaming-Modus SVE-Register aus dem Speicher über sve_load_state() wiederherzustellen. Da der Wert von SMCR_ELx.LEN größer sein kann als die Vektorlänge des Streaming-SVE der Aufgabe, könnte dies dazu führen, dass Speicher außerhalb des zugewiesenen sve_state gelesen wird, unverwandte Daten gelesen werden und/oder ein Fehler ausgelöst wird. Obwohl dadurch Geheimnisse in die Streaming-SVE-Register geladen werden könnten, werden diese Werte nie offengelegt. Da TIF_SME nicht gesetzt ist, wird fpsimd_bind_task_to_cpu() CPACR_ELx.SMEN konfigurieren, um EL0-Zugriffe auf Streaming-Modus SVE-Register abzufangen, sodass diese nicht direkt bei EL0 zugänglich sind. Da fpsimd_save_user_state() die aktive Vektorlänge vor dem Speichern von (S)SVE-Zustand in den Speicher überprüft, können keine geheimen Werte zurückgespeichert werden (und daher nicht beobachtet werden via ptrace, Signale usw.). Wenn die aktuelle Vektorlänge nicht mit der erwarteten Vektorlänge für die Aufgabe übereinstimmt, wird fpsimd_save_user_state() ein tödliches SIGKILL-Signal an die Aufgabe senden. Daher kann die Aufgabe nach einer gewissen Ausführungszeit im Userspace beendet werden. (2) Die Wiederherstellung eines Kontexts mit SVE_SIG_FLAG_SM nicht gesetzt löscht den SVCR.SM der Aufgabe nicht. Wenn SVCR.SM vor der Wiederherstellung des Kontexts gesetzt war, wird die Aufgabe unerwartet im Streaming-Modus verbleiben und einige Registerzustände werden inkonsistent kombiniert, obwohl die Aufgabe aus Sicht des Kernels in einem legitimen Zustand bleibt. Dies kann nur in ungewöhnlichen, aber legitimen Fällen eintreten, bei denen ptrace verwendet wurde, um SVCR.SM nach dem Eintritt in den sigreturn-Systemaufruf zu setzen, da der Systemaufrufeintritt SVCR.SM löscht. In diesen Fällen wird das bereitgestellte SVE-Registerdaten in den sve_state der Aufgabe mit der nicht-streaming SVE-Vektorlänge geladen und die FPSIMD-Register werden damit unter Verwendung der Streaming-SVE-Vektorlänge kombiniert. Behebung (1) durch Setzen von TIF_SME beim Setzen von SVCR.SM. Dies erfordert auch, dass sichergestellt wird, dass der sme_state der Aufgabe zugewiesen wurde, aber da dieser lebenden ZA-Zustand enthalten könnte, sollte er nicht gelöscht werden. Behebung (2) durch Löschen von SVCR.SM bei der Wiederherstellung eines SVE-Signal-Kontexts mit SVE_SIG_FLAG_SM nicht gesetzt. Aus Gründen der Konsistenz habe ich die Manipulation von SVCR, TIF_SVE, TIF_SME und fp_type früher gezogen, unmittelbar nach der Zuweisung von sve_state/sme_state, bevor die Wiederherstellung des tatsächlichen Registerzustands erfolgt. Dies erleichtert es sicherzustellen, dass diese immer konsistent geändert werden, selbst wenn ein Fehler auftritt, während die Registrierungsdaten aus dem Signal-Kontext gelesen werden. Ich erwarte nicht, dass Software vom exakten Zustand abhängt, der wiederhergestellt wird, wenn ein Fehler auftritt, während der Kontext gelesen wird.

Metriken

Severity
none
kein öffentlicher PoC bekannt
2.2 %
Niedrig — CVE gehört zu den unteren 10 % der heute bewerteten CVEs.
0.1 %
Niedrig — Modell schätzt < 1 % Ausnutzungs-Wahrscheinlichkeit.
Veröffentlicht
2026-06-16 22:30 UTC

Betroffene Betriebssysteme

  • linux

    amazon / amazon_linux

  • linux

    ubuntu / awsbionic

  • linux

    ubuntu / awsjammy

  • linux

    ubuntu / awsnoble

  • linux

    ubuntu / awsresolute

  • linux

    ubuntu / awsxenial

  • linux

    ubuntu / aws-6.8jammy

  • linux

    ubuntu / aws-hwexenial

  • linux

    ubuntu / azurejammy

  • linux

    ubuntu / azurenoble

  • linux

    ubuntu / azureresolute

  • linux

    ubuntu / azurexenial

  • linux

    ubuntu / azure-4.15bionic

  • linux

    suse / basesystem_module15

  • linux

    debian / debian_linux11.0

  • linux

    debian / debian_linux12.0

  • linux

    debian / debian_linux13.0

  • linux

    suse / development_tools_module15

  • linux

    redhat / enterprise_linux10.0

  • linux

    redhat / enterprise_linux8.0

  • linux

    redhat / enterprise_linux9.0

  • linux

    redhat / enterprise_linux_aus8.4

  • linux

    redhat / enterprise_linux_aus8.6

  • linux

    redhat / enterprise_linux_eus10.0

Betroffene Produkte

Aus der Hersteller-/CERT-Meldung extrahierte Produkte und Versionsbereiche. Ein Version-Range wie „<4.14.6“ impliziert die Update-Empfehlung „auf 4.14.6 oder höher aktualisieren“.

  • arista

    cloudvision_agni2024.4.0 – 2025.2.2

  • arista

    cloudvision_portal2024.2.0 – 2026.1.0

  • arista

    velocloud_edge4.5.0 – 6.4.1

  • arista

    velocloud_gateway

  • arista

    velocloud_orchestrator

  • IBM

    QRadar SIEM<7.5.0 UP15 IF06

  • redhat

    openshift_container_platform4.12 – 4.12.89

  • redhat

    openshift_container_platform4.13 – 4.13.66

  • redhat

    openshift_container_platform4.14 – 4.14.65

  • redhat

    openshift_container_platform4.15 – 4.15.64

  • redhat

    openshift_container_platform4.16 – 4.16.61

  • redhat

    openshift_container_platform4.17 – 4.17.53

  • redhat

    openshift_container_platform4.18 – 4.18.40

  • redhat

    openshift_container_platform4.19 – 4.19.30

  • redhat

    openshift_container_platform4.20 – 4.20.21

  • redhat

    openshift_container_platform4.21 – 4.21.14

  • redhat

    openshift_container_platform

  • siemens

    simatic_ax_runtime

  • suse

    caas_platform

  • suse

    enterprise_storage

  • suse

    manager_proxy

  • suse

    manager_retail_branch_server

  • suse

    manager_server

  • suse

    openstack_cloud

Quellen & Referenzen

Verknüpfte CVEs

368 weitere CVEs anzeigen
IDCVE-2026-23102