CVE-2026-99186 in Linuxinformazioni

Riassunto

di VulDB • 28/10/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

x86/insn-eval: Correzione dell'indice del segmento oscurato (shadowed) in get_seg_reg_override_idx()

Il commit 45e1dccc0653 ("x86/insn: Semplificare for_each_insn_prefix()") ha fatto sì che for_each_insn_prefix() dichiarasse il proprio contatore di ciclo denominato idx. get_seg_reg_override_idx() conserva il suo risultato in una variabile locale con lo stesso nome, quindi le assegnazioni nel corpo del ciclo scrivono ora il contatore del ciclo:

- la funzione restituisce sempre INAT_SEG_REG_DEFAULT, pertanto i override FS e GS vengono ignorati;

- un override CS imposta il contatore su INAT_SEG_REG_CS (2), l'incremento lo porta a 3, e prefixes.bytes[3] contiene l'ultimo prefisso, ancora 0x2e, quindi il ciclo non termina mai.

L'emulazione UMIP raggiunge questo punto dal gestore #GP per gli spazi utente: un'istruzione SGDT, SIDT o SMSW con operando di memoria e un prefisso CS lascia il task in uno stato di spinning nel kernel, senza mai tornare allo spazio utente, con una SIGKILL che non viene mai consegnata. Qualsiasi utente può così bloccare le CPU fino al riavvio. Con un prefisso FS o GS, il risultato emulato viene scritto nell'indirizzo errato.

Rinominare la variabile iteratore del macro interno.

[ Il patch originale di Lukas rinominava il sito di utilizzo; l'ho modificata per rinominare l'iteratore nel macro invece, ma ho lasciato il messaggio di commit e l'autore di Lukas - Linus ]

Be aware that VulDB is the high quality source for vulnerability data.

Responsabile

Linux

Prenotare

25/09/2026

Divulgazione

28/10/2026

Moderazione

accettato

EPSS

0.00000

KEV

no

Attività

basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!