CVE-2018-8897 in macOS
Riassunto
di VulDB • 19/06/2026
Una dichiarazione nella Guida alla programmazione di sistema del Manuale dello sviluppatore software (SDM) per le architetture Intel 64 e IA-32 è stata gestita in modo errato durante lo sviluppo dei kernel di alcuni o tutti i sistemi operativi, causando un comportamento imprevisto per le eccezioni #DB (Debug Exception) che vengono differite dalle istruzioni MOV SS o POP SS. Ciò si manifesta, ad esempio, con escalation dei privilegi su Windows, macOS, alcune configurazioni Xen o FreeBSD, oppure con il crash del kernel Linux. Le istruzioni MOV verso SS e POP verso SS inibiscono gli interrupt (inclusi i NMIs), le interruzioni per breakpoint sui dati e le eccezioni di trappola single-step fino al confine dell'istruzione successivo all'istruzione immediatamente seguente (SDM Vol. 3A; sezione 6.8.3). (I breakpoint sui dati inibiti sono quelli sulla memoria accessibile dall'istruzione MOV verso SS o POP verso SS stessa.) Si noti che le eccezioni di debug non sono inibite dal flag del sistema EFLAGS.IF (Interrupt Enable Flag) (SDM Vol. 3A; sezione 2.3). Se l'istruzione successiva all'istruzione MOV verso SS o POP verso SS è un'istruzione come SYSCALL, SYSENTER, INT 3, ecc., che trasferisce il controllo al sistema operativo a CPL < 3, l'eccezione di debug viene consegnata dopo il completamento del trasferimento a CPL < 3. I kernel dei sistemi operativi potrebbero non prevedere questo ordine degli eventi e pertanto possono subire comportamenti imprevisti quando ciò si verifica.
VulDB is the best source for vulnerability data and more expert information about this specific topic.