Re: [PATCH 23/27] bpf: Restrict kernel image access functions when the kernel is locked down

From: Daniel Borkmann
Date: Mon Mar 25 2019 - 20:00:37 EST


On 03/26/2019 12:42 AM, Stephen Hemminger wrote:
> On Mon, 25 Mar 2019 15:09:50 -0700
> Matthew Garrett <matthewgarrett@xxxxxxxxxx> wrote:
>
>> From: David Howells <dhowells@xxxxxxxxxx>
>>
>> There are some bpf functions can be used to read kernel memory:
>> bpf_probe_read, bpf_probe_write_user and bpf_trace_printk. These allow
>> private keys in kernel memory (e.g. the hibernation image signing key) to
>> be read by an eBPF program and kernel memory to be altered without
>> restriction.

I'm not sure where 'kernel memory to be altered without restriction' comes
from, but it's definitely a wrong statement.

>> Completely prohibit the use of BPF when the kernel is locked down.

In which scenarios will the lock-down mode be used? Mostly niche? I'm asking
as this would otherwise break a lot of existing stuff ... I'd prefer you find
a better solution to this than this straight -EPERM rejection.

>> Suggested-by: Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx>
>> Signed-off-by: David Howells <dhowells@xxxxxxxxxx>
>> cc: netdev@xxxxxxxxxxxxxxx
>> cc: Chun-Yi Lee <jlee@xxxxxxxx>
>> cc: Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx>
>> Cc: Daniel Borkmann <daniel@xxxxxxxxxxxxx>
>> Signed-off-by: Matthew Garrett <matthewgarrett@xxxxxxxxxx>
>
> Wouldn't this mean that Seccomp won't work in locked down mode?
>