Odebrany

CVE-2026-98745

opublikowano:
modyfikacja:
Ocena CVSS
n/a
Brak oceny

>_ Opis

Tłumaczenie automatyczne – może zawierać nieścisłości.

W jądrze Linuksa usunięto następującą lukę:

arm64/fpsimd: sygnał: Zabroń niestrumieniowego ładunku SVE w systemach przeznaczonych wyłącznie dla MŚP

Gdy system_supports_sme() ma wartość true, ale system_supports_sve() ma wartość false,
przywrócenie specjalnie spreparowanego kontekstu sygnału SVE może spowodować, że
zadanie błędnie ma stan SVE niebędący przesyłaniem strumieniowym. Kolejne próby
manipulowanie stanem FPSIMD/SVE/SME zadania może skutkować różnymi
problemy, w tym śmiertelne EL1 UNDEF.

W takich konfiguracjach jądro zawsze tworzy kontekst sygnału SVE
podczas dostarczania sygnału, a to może znajdować się tylko w jednym z dwóch stanów:

(1) Ustawiono SVE_SIG_FLAG_SM i obecny jest ładunek SVE zawierający
tryb przesyłania strumieniowego, stan SVE. Nagrany VL to transmisja zadania na żywo
przesyłanie strumieniowe VL.

(2) SVE_SIG_FLAG_SM jest czysty i nie ma ładunku SVE. The
Kontekst FPSIMD zawiera stan FPSIMD w trybie innym niż przesyłanie strumieniowe. The
zarejestrowany VL wynosi 0.

Obecnie funkcja Restore_sve_fpsimd_context() poprawnie odrzuca przypadki, w których
Ustawiono SVE_SIG_FLAG_SM i nie ma ładunku SVE, ale nie występuje
odrzucaj przypadki, w których SVE_SIG_FLAG_SM jest czysty i ładunek SVE jest
obecny. W rezultacie funkcja przywracania_sve_fpsimd_context() może umieścić zadanie
w stanie, w którym nie ma stanu SVE bez przesyłania strumieniowego, nawet jeśli tak nie jest
wspierany przez HW.

Na przykład może to spowodować późniejszy EL1 UNDEF, gdy jądro spróbuje
przywróć wartość ZCR_EL1 zadania:

| # ./sme-sigcontext-to-sve
| Błąd wewnętrzny: Ups - Niezdefiniowana instrukcja: 0000000002000000 [#1] SMP
| Moduły połączone w:
| Procesor: 0 UID: 0 PID: 131 Comm: sme-sigcontext- Nieskażony 7.3.0-rc1 #1 PREEMPT
| Nazwa sprzętu: linux, dummy-virt (DT)
| pstan: 61402009 (nZCv daif +PAN -UAO -TCO +DIT -SSBS BTYPE=--)
| komputer: fpsimd_restore_current_state+0x258/0x458
| lr : wyjście_do_użytkownika_mode_loop+0xb8/0x188
| sp: ffff80008056be40
| x29: ffff80008056be40 x28: fff00000c1670000 x27: 00000000000000000
| x26: 0000000000000000 x25: 0000000000000000 x24: 0000000000000000
| x23: ffff80008056bec0 x22: 0000000000000008 x21: 0000000000000040
| x20: 0000000000000081 x19: 0000000008800010 x18: 0000000000000000
| x17: 0000ffffffd412570 x16: 0000000000001000 x15: 0000ffffffd4123b0
| x14: 0000fffffd412780 x13: 0000ffffffd412be8 x12: 0000000047435300
| x11: 0000ffffffd412570 x10: 0000000000000000 x9: 0000000045585401
| x8: fff00000c18a6c44 x7: 0000000000000000 x6: 00000000000000002
| x5 : 0000000000000002 x4 : ffff800080568000 x3 : 00000000000000001
| x2 : 0000000008800010 x1 : fff00000c1670000 x0 : 0000000008800000
| Śledzenie połączeń:
| fpsimd_restore_current_state+0x258/0x458 (P)
| exit_to_user_mode_loop+0xb8/0x188
| el0_svc+0x1cc/0x1d0
| el0t_64_sync_handler+0xa0/0xe4
| el0t_64_sync+0x198/0x19c
| Kod: d5384101 f9400020 53175c03 36b80de0 (d5381202)
| ---[koniec śladu 0000000000000000 ]---
| Panika jądra — brak synchronizacji: Ups — niezdefiniowana instrukcja: krytyczny wyjątek w przerwaniu
| Przesunięcie jądra: 0x291fb1000000 z 0xffff800080000000
| PHYS_OFFSET: 0x40000000
| Funkcje procesora: 0x0,00000000,0052802f,ffb88f43,3afcf73f
| Limit pamięci: brak

Przerób funkcję przywracania_sve_fpsimd_context(), aby odrzucić przypadki, w których
SVE_SIG_FLAG_SM jest czysty i nie ma ładunku SVE. jako
parse_user_sigframe() odrzuca ramki sygnału SVE, gdy nie jest to ani SVE, ani SME
są obsługiwane, nie jest konieczne przywracanie_sve_fpsimd_context() do
obsłuż przypadek, w którym żadne z nich nie jest obsługiwane.

>_ Referencje

Dane podatności pochodzą z oficjalnych źródeł (CVE® List / NVD). Opisy po polsku są tłumaczone automatycznie i mogą zawierać nieścisłości – na stronie rekordu można wyświetlić wersję angielską.

This product uses the NVD API but is not endorsed or certified by the NVD.

Copyright © 1999–2026, The MITRE Corporation. CVE is a registered trademark and the CVE logo is a registered trademark of The MITRE Corporation.

CVE Usage: MITRE hereby grants you a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, sublicense, and distribute Common Vulnerabilities and Exposures (CVE®). Any copy you make for such purposes is authorized provided that you reproduce MITRE's copyright designation and this license in any such copy. ALL DOCUMENTS AND THE INFORMATION CONTAINED THEREIN PROVIDED BY MITRE ARE PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND.

NVD Terms of Use / CVE® Terms of Use / nvd.nist.gov / cve.org