From: Alexei Starovoitov <alexei.starovoitov@gmail.com>
To: David Howells <dhowells@redhat.com>
Cc: linux-kernel@vger.kernel.org, linux-efi@vger.kernel.org,
gnomes@lxorguk.ukuu.org.uk, netdev@vger.kernel.org,
Chun-Yi Lee <jlee@suse.com>,
linux-security-module@vger.kernel.org, keyrings@vger.kernel.org,
gregkh@linuxfoundation.org, matthew.garrett@nebula.com
Subject: Re: [PATCH 20/24] bpf: Restrict kernel image access functions when the kernel is locked down
Date: Thu, 6 Apr 2017 08:29:09 -0400 [thread overview]
Message-ID: <20170406122907.GA53880@ast-mbp.thefacebook.com> (raw)
In-Reply-To: <149142344547.5101.4518618716303032193.stgit@warthog.procyon.org.uk>
On Wed, Apr 05, 2017 at 09:17:25PM +0100, David Howells wrote:
> From: Chun-Yi Lee <jlee@suse.com>
>
> 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. Prohibit those functions when the kernel is
> locked down.
>
> Signed-off-by: Chun-Yi Lee <jlee@suse.com>
> Signed-off-by: David Howells <dhowells@redhat.com>
> cc: netdev@vger.kernel.org
> ---
>
> kernel/trace/bpf_trace.c | 11 +++++++++++
> 1 file changed, 11 insertions(+)
>
> diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c
> index cee9802cf3e0..7fde851f207b 100644
> --- a/kernel/trace/bpf_trace.c
> +++ b/kernel/trace/bpf_trace.c
> @@ -65,6 +65,11 @@ BPF_CALL_3(bpf_probe_read, void *, dst, u32, size, const void *, unsafe_ptr)
> {
> int ret;
>
> + if (kernel_is_locked_down()) {
> + memset(dst, 0, size);
> + return -EPERM;
> + }
this will obviously break the program. How about disabling loading tracing
programs during the lockdown completely?
Also is there a description of what this lockdown trying to accomplish?
The cover letter is scarce in details.
next prev parent reply other threads:[~2017-04-06 12:29 UTC|newest]
Thread overview: 82+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-04-05 20:14 [PATCH 00/24] Kernel lockdown David Howells
2017-04-05 20:14 ` [PATCH 01/24] efi: Add EFI_SECURE_BOOT bit David Howells
2017-04-06 8:26 ` Ard Biesheuvel
2017-04-06 8:48 ` David Howells
2017-04-05 20:14 ` [PATCH 02/24] Add the ability to lock down access to the running kernel image David Howells
2017-04-05 20:14 ` [PATCH 03/24] efi: Lock down the kernel if booted in secure boot mode David Howells
2017-04-05 20:15 ` [PATCH 04/24] Enforce module signatures if the kernel is locked down David Howells
2017-04-05 20:15 ` [PATCH 05/24] Restrict /dev/mem and /dev/kmem when " David Howells
2017-04-05 20:15 ` [PATCH 06/24] Add a sysrq option to exit secure boot mode David Howells
2017-04-14 18:05 ` Thomas Gleixner
2017-04-14 18:15 ` Ard Biesheuvel
2017-04-14 23:16 ` David Howells
2017-04-16 20:46 ` Matt Fleming
2017-04-05 20:15 ` [PATCH 07/24] kexec: Disable at runtime if the kernel is locked down David Howells
2017-04-07 3:07 ` Dave Young
2017-04-05 20:15 ` [PATCH 08/24] Copy secure_boot flag in boot params across kexec reboot David Howells
2017-04-05 20:15 ` [PATCH 09/24] kexec_file: Disable at runtime if securelevel has been set David Howells
2017-04-07 3:05 ` Dave Young
2017-04-07 3:49 ` Mimi Zohar
2017-04-07 6:19 ` Dave Young
2017-04-07 7:45 ` Mimi Zohar
2017-04-07 8:01 ` Dave Young
2017-04-07 7:07 ` David Howells
2017-04-07 7:41 ` Dave Young
2017-04-07 8:28 ` Mimi Zohar
2017-04-07 8:42 ` Dave Young
2017-04-07 7:09 ` David Howells
2017-04-07 7:46 ` Mimi Zohar
2017-04-07 9:17 ` David Howells
2017-04-07 12:36 ` Mimi Zohar
2017-04-10 13:19 ` David Howells
2017-05-02 19:01 ` Mimi Zohar
2017-04-05 20:16 ` [PATCH 10/24] hibernate: Disable when the kernel is locked down David Howells
2017-04-05 20:16 ` [PATCH 11/24] uswsusp: " David Howells
2017-04-05 23:38 ` Rafael J. Wysocki
2017-04-06 6:39 ` Oliver Neukum
2017-04-06 8:41 ` David Howells
2017-04-06 20:09 ` Rafael J. Wysocki
2017-04-06 20:12 ` Rafael J. Wysocki
2017-04-06 20:25 ` Jiri Kosina
2017-04-08 3:28 ` poma
2017-04-12 13:44 ` joeyli
2017-04-06 6:55 ` David Howells
2017-04-06 20:07 ` Rafael J. Wysocki
2017-04-05 20:16 ` [PATCH 12/24] PCI: Lock down BAR access " David Howells
2017-04-18 17:50 ` Bjorn Helgaas
2017-04-05 20:16 ` [PATCH 13/24] x86: Lock down IO port " David Howells
2017-04-14 18:28 ` Thomas Gleixner
2017-04-05 20:16 ` [PATCH 14/24] x86: Restrict MSR " David Howells
2017-04-14 18:30 ` Thomas Gleixner
2017-04-05 20:16 ` [PATCH 15/24] asus-wmi: Restrict debugfs interface " David Howells
2017-04-07 10:25 ` Andy Shevchenko
2017-04-07 12:50 ` David Howells
2017-04-09 11:10 ` Andy Shevchenko
2017-04-10 13:16 ` David Howells
2017-04-18 6:06 ` Andy Shevchenko
2017-04-18 14:34 ` Ben Hutchings
2017-04-18 14:55 ` David Howells
2017-04-18 15:19 ` Ben Hutchings
2017-04-18 15:34 ` David Howells
2017-04-18 15:30 ` David Howells
2017-04-18 17:39 ` Ben Hutchings
2017-04-05 20:16 ` [PATCH 16/24] ACPI: Limit access to custom_method " David Howells
2017-04-05 20:16 ` [PATCH 17/24] acpi: Ignore acpi_rsdp kernel param when the kernel has been " David Howells
2017-04-06 19:43 ` Rafael J. Wysocki
2017-04-07 6:31 ` Dave Young
2017-04-07 7:05 ` David Howells
2017-04-07 7:39 ` Dave Young
2017-04-05 20:17 ` [PATCH 18/24] acpi: Disable ACPI table override if the kernel is " David Howells
2017-04-05 20:17 ` [PATCH 19/24] acpi: Disable APEI error injection " David Howells
2017-04-05 20:17 ` [PATCH 20/24] bpf: Restrict kernel image access functions when " David Howells
2017-04-06 12:29 ` Alexei Starovoitov [this message]
2017-04-06 12:40 ` Ard Biesheuvel
2017-04-12 14:57 ` joeyli
2017-04-13 8:46 ` David Howells
2017-04-05 20:17 ` [PATCH 21/24] scsi: Lock down the eata driver David Howells
2017-04-05 20:17 ` [PATCH 22/24] Prohibit PCMCIA CIS storage when the kernel is locked down David Howells
2017-04-05 20:17 ` [PATCH 23/24] Lock down TIOCSSERIAL David Howells
2017-04-05 20:18 ` [PATCH 24/24] Lock down module params that specify hardware parameters (eg. ioport) David Howells
2017-04-07 15:59 ` [PATCH 00/24] Kernel lockdown Austin S. Hemmelgarn
2017-04-07 16:29 ` Justin Forbes
2017-04-10 23:15 ` Why kernel lockdown? David Howells
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170406122907.GA53880@ast-mbp.thefacebook.com \
--to=alexei.starovoitov@gmail.com \
--cc=dhowells@redhat.com \
--cc=gnomes@lxorguk.ukuu.org.uk \
--cc=gregkh@linuxfoundation.org \
--cc=jlee@suse.com \
--cc=keyrings@vger.kernel.org \
--cc=linux-efi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=matthew.garrett@nebula.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).