ladybird/Base/usr/share/man
Andreas Kling f598bbbb1d Kernel: Prevent executing I/O instructions in userspace
All threads were running with iomapbase=0 in their TSS, which the CPU
interprets as "there's an I/O permission bitmap starting at offset 0
into my TSS".

Because of that, any bits that were 1 inside the TSS would allow the
thread to execute I/O instructions on the port with that bit index.

Fix this by always setting the iomapbase to sizeof(TSS32), and also
setting the TSS descriptor's limit to sizeof(TSS32), effectively making
the I/O permissions bitmap zero-length.

This should make it no longer possible to do I/O from userspace. :^)
2020-01-01 17:31:41 +01:00
..
man1 Kernel: Prevent executing I/O instructions in userspace 2020-01-01 17:31:41 +01:00
man2 Base: Describe kernel modules, syscalls, and programs 2019-12-24 11:52:01 +01:00
man3 Docs: Add note about EINVAL to isatty(3) 2019-11-17 20:09:12 +01:00
man5 Base: Document SystemServer 2019-11-26 19:58:25 +01:00
man7 Base: Describe kernel modules, syscalls, and programs 2019-12-24 11:52:01 +01:00
man8 Base: Add man page for purge(8) 2019-12-29 13:23:21 +01:00