ladybird/Kernel/Arch
Idan Horowitz 1950e79d48 Kernel: Eliminate possible KASLR leak by disabling CR4.FSGSBASE
The RDGSBASE userspace instruction allows programs to read the contents
of the gs segment register which contains a kernel pointer to the base
of the current Processor struct.

Since we don't use this instruction in Serenity at the moment, we can
simply disable it for now to ensure we don't break KASLR. Support can
later be restored once proper swapping of the contents of gs is done on
userspace/kernel boundaries.
2022-06-22 07:52:35 +03:00
..
aarch64 Kernel: Initialize and use interrupts in the aarch64 Kernel 2022-06-02 13:14:12 +01:00
x86 Kernel: Eliminate possible KASLR leak by disabling CR4.FSGSBASE 2022-06-22 07:52:35 +03:00
CPU.h Kernel: Make handle_crash available to aarch64 2022-04-02 19:34:20 -07:00
DeferredCallEntry.h Kernel: Extract DeferredCallEntry from Arch/Processor.h 2021-12-11 13:23:27 -08:00
InterruptDisabler.h Kernel: Implement InterruptDisabler using generic Processor functions 2022-06-02 13:14:12 +01:00
InterruptManagement.h Kernel: Move IRQController and InterruptManagement to Arch directory 2022-06-02 13:14:12 +01:00
Interrupts.h Kernel: Rename idt_init() to initialize_interrupts() 2022-06-02 13:14:12 +01:00
IRQController.h Kernel: Move IRQController and InterruptManagement to Arch directory 2022-06-02 13:14:12 +01:00
mcontext.h Kernel: Do not include AK/Platform.h in mcontext headers 2022-05-30 21:39:41 +02:00
PageDirectory.h Kernel: Make PageDirectory.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
PageFault.h Kernel: Make PageDirectory.cpp compile on aarch64 2022-04-02 19:34:20 -07:00
Processor.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
ProcessorSpecificDataID.h Kernel: Extract ProcessorSpecificDataID from from Arch/Processor.h 2021-12-11 13:23:27 -08:00
RegisterState.h Kernel: Add cross platform RegisterState header and Aarch64 version 2021-10-15 21:48:45 +01:00
SafeMem.h Kernel: Move Kernel/Arch/x86/SafeMem.h to Kernel/Arch/SafeMem.h 2022-05-03 21:53:36 +02:00
ScopedCritical.h Kernel: Split ScopedCritical so header is platform independent 2021-10-15 21:48:45 +01:00
SmapDisabler.h Kernel: Split SmapDisabler so header is platform independent 2021-10-15 21:48:45 +01:00
Spinlock.h Kernel: Move Arch/x86/Spinlock.h and add stubs for aarch64 2022-05-03 21:53:36 +02:00