Re: [RFC][PATCH 04/10] x86/espfix: use kernel-default PTE mask

Dave Hansen
2018-02-22T21:30:03Z

On 02/22/2018 01:27 PM, Nadav Amit wrote:
> Dave Hansen <dave.hansen@linux.intel.com> wrote:
>> From: Dave Hansen <dave.hansen@linux.intel.com>
>> In creating its page tables, the espfix code masks its PGTABLE_PROT
>> value with the supported mask: __supported_pte_mask. This ensures
>> that unsupported bits are not set in the final PTE. But, it also
>> sets _PAGE_GLOBAL which we do not want for PTE. Use
>> __default_kernel_pte_mask instead which clears _PAGE_GLOBAL for PTI.
>
> Can you please explain what is your concern? Exposing more gadgets for
> speculative ROP attacks?
>
> Or is it a general rule of not exposing any kernel code &data more than
> absolutely necessary?

I think it's good practice to just expose only the *minimal* amount of
data necessary. It's easier to audit and less likely to expose things
accidentall.