Re: [GIT PULL] Kernel lockdown for secure boot
Date: Sun Apr 08 2018 - 04:08:14 EST
On Tue, Apr 03, 2018 at 07:34:25PM -0700, Alexei Starovoitov wrote:
> On Tue, Apr 3, 2018 at 9:26 AM, Andy Lutomirski <luto@xxxxxxxxxx> wrote:
> > On Tue, Apr 3, 2018 at 8:41 AM, Alexei Starovoitov
> > <alexei.starovoitov@xxxxxxxxx> wrote:
> >> On Tue, Apr 03, 2018 at 08:11:07AM -0700, Andy Lutomirski wrote:
> >>> >
> >>> >> "bpf: Restrict kernel image access functions when the kernel is locked down":
> >>> >> This patch just sucks in general.
> >>> >
> >>> > Yes - but that's what Alexei Starovoitov specified. bpf kind of sucks since
> >>> > it gives you unrestricted access to the kernel.
> >>> bpf, in certain contexts, gives you unrestricted access to *reading*
> >>> kernel memory. bpf should, under no circumstances, let you write to
> >>> the kernel unless you're using fault injection or similar.
> >>> I'm surprised that Alexei acked this patch. If something like XDP or
> >>> bpfilter starts becoming widely used, this patch will require a lot of
> >>> reworking to avoid breaking standard distros.
> >> my understanding was that this lockdown set attemps to disallow _reads_
> >> of kernel memory from anything, so first version of patch was adding
> >> run-time checks for bpf_probe_read() which is no-go
> >> and without this helper the bpf for tracing is losing a lot of its power,
> >> so the easiest is to disable it all.
> > Fair enough.
> Actually looking at the patch again:
The bpf is totally disabled in this patch.
> If the only thing that folks are paranoid about is reading
> arbitrary kernel memory with bpf_probe_read() helper
> then preferred patch would be to disable it during verification
> when in lockdown mode
Sorry for I didn't fully understand your idea...
Do you mean that using bpf verifier to filter out bpf program that
> No run-time overhead and android folks will be happy
> that lockdown doesn't break their work.
> They converted out-of-tree networking accounting
> module and corresponding user daemon to use bpf: