Re: gdbserver + fsgsbase kaputt

From: Bae, Chang Seok
Date: Tue Jan 12 2021 - 01:17:08 EST



> On Jan 11, 2021, at 13:06, Andy Lutomirski <luto@xxxxxxxxxxxxxx> wrote:
>
>> On Jan 11, 2021, at 12:00 PM, Borislav Petkov <bp@xxxxxxxxx> wrote:
>>
>> Or do you mean I should add "unsafe_fsgsbase" to grub cmdline and bisect
>> with fsgsbase enabled in all test kernels?
>
> Yes. But I can also look myself in a bit.

I was able to find this patch in that way:

commit 0bf7e460361c703333f3a82e50e7871465fe20f9
Author: Andy Lutomirski <luto@xxxxxxxxxx>
Date: Thu May 28 16:13:51 2020 -0400

x86/process/64: Use FSBSBASE in switch_to() if available


The GDB behavior looks to be different between the two cases -- with vs
without gdb server, when I checked the GS/GSBASE values on the ptrace front.

It set the correct GSBASE (e.g.,=0xf7fcf0c0) of GS=0x63 without running the
server. But GSBASE=0 with the server. When I forced to set the correct base,
it exited normally.

Thanks,
Chang