Re: [RFC] selftests/x86: Add test_vsyscall

From: Andy Lutomirski
Date: Fri Jan 05 2018 - 13:47:43 EST


On Fri, Jan 5, 2018 at 10:23 AM, Borislav Petkov <bp@xxxxxxxxx> wrote:
> On Fri, Jan 05, 2018 at 09:53:16AM -0800, Andy Lutomirski wrote:
>> emulate_noread would avoid one exploit technique that Kees saw
>> somewhere. And per-process disablement would let a system remain
>> compatible with old binaries without reducing security for newer
>> binaries.
>
> Or we can simply say new binaries can switch to the vdso. Because this
> way, vsyscall will never really be phased out - new shit will simply
> keep using it.

As far as I know, new binaries don't use vsycall. The holdouts were
musl and Go, and both are fixed.

The remaining problem is that, for certain classes of userspace bugs,
an attacker can take advantage of the vsyscall page's existence at a
fixed address to cause mischief. So opting out of having it be there
could be helpful to mitigate attacks.