1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-18 08:05:07 +00:00
serenity/Kernel/Arch/x86
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
..
common Kernel: Eliminate possible KASLR leak by disabling CR4.FSGSBASE 2022-06-22 07:52:35 +03:00
i386 Kernel: Remove unnecessary includes from Thread.h 2022-01-30 16:21:59 +01:00
x86_64 Kernel: Set CS selector when initializing thread context on x86_64 2022-02-27 00:38:00 +02:00
ASM_wrapper.h Kernel: Add helpers for rdrand and rdseed 2022-03-21 23:33:42 +01:00
CPU.h Kernel: Make handle_crash available to aarch64 2022-04-02 19:34:20 -07:00
CPUID.h Kernel: Rename OSPKU CPUID feature flag to OSPKE 2022-04-08 18:53:42 +01:00
DescriptorTable.h Kernel: Use enum instead of magic numbers for GDT descriptor types 2022-01-04 19:08:07 +02: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
IO.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
IRQController.h Kernel/Interrupts: Add missing include for IRQController header file 2022-06-17 11:01:27 +02:00
ISRStubs.h Kernel/Interrupts: Initialize two spurious handlers when PIC is disabled 2022-01-30 21:07:20 +02:00
linker.ld Kernel: Move aarch64 Prekernel into Kernel 2022-03-12 14:54:12 -08:00
mcontext.h Kernel: Do not include AK/Platform.h in mcontext headers 2022-05-30 21:39:41 +02:00
MSR.h Kernel: Add an x86 include check+error in x86/MSR.h 2021-12-01 11:22:04 -08:00
NonMaskableInterruptDisabler.h Kernel: Separate NonMaskableInterruptDisabler into its own file 2022-06-02 13:14:12 +01:00
Processor.h Kernel: Add interrupt related functions to Processor class 2022-06-02 13:14:12 +01:00
ProcessorInfo.h Kernel: Expose cache size for Intel CPUs 2022-05-30 13:41:23 +01:00
RegisterState.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
SIMDState.h Kernel: Implement AVX XSAVE support 2022-05-15 12:25:23 +02:00
TrapFrame.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00
TSS.h Everywhere: Run clang-format 2022-04-01 21:24:45 +01:00