From: Austin S Hemmelgarn <ahferroin7@gmail.com>
To: Mimi Zohar <zohar@linux.vnet.ibm.com>, Kees Cook <keescook@chromium.org>
Cc: "Luis R. Rodriguez" <mcgrof@suse.com>,
"David Woodhouse" <dwmw2@infradead.org>,
"David Howells" <dhowells@redhat.com>,
"Andy Lutomirski" <luto@amacapital.net>,
"Roberts, William C" <william.c.roberts@intel.com>,
"linux-security-module@vger.kernel.org"
<linux-security-module@vger.kernel.org>,
LKML <linux-kernel@vger.kernel.org>,
linux-wireless <linux-wireless@vger.kernel.org>,
"james.l.morris@oracle.com" <james.l.morris@oracle.com>,
"serge@hallyn.com" <serge@hallyn.com>,
"Vitaly Kuznetsov" <vkuznets@redhat.com>,
"Paul Moore" <paul@paul-moore.com>,
"Eric Paris" <eparis@parisplace.org>,
"SE Linux" <selinux@tycho.nsa.gov>,
"Stephen Smalley" <sds@tycho.nsa.gov>,
"Schaufler, Casey" <casey.schaufler@intel.com>,
"Luis R. Rodriguez" <mcgrof@do-not-panic.com>,
"Dmitry Kasatkin" <dmitry.kasatkin@gmail.com>,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
"Peter Jones" <pjones@redhat.com>, "Takashi Iwai" <tiwai@suse.de>,
"Ming Lei" <ming.lei@canonical.com>, "Joey Lee" <jlee@suse.de>,
"Vojtěch Pavlík" <vojtech@suse.com>,
"Kyle McMartin" <kyle@kernel.org>,
"Seth Forshee" <seth.forshee@canonical.com>,
"Matthew Garrett" <mjg59@srcf.ucam.org>,
"Johannes Berg" <johannes@sipsolutions.net>,
"Julia Lawall" <julia.lawall@lip6.fr>,
"Jay Schulist" <jschlst@samba.org>,
"Daniel Borkmann" <dborkman@redhat.com>,
"Alexei Starovoitov" <ast@plumgrid.com>
Subject: Re: Linux Firmware Signing
Date: Wed, 2 Sep 2015 13:36:25 -0400 [thread overview]
Message-ID: <55E73399.2040502@gmail.com> (raw)
In-Reply-To: <1441212343.17898.142.camel@linux.vnet.ibm.com>
[-- Attachment #1: Type: text/plain, Size: 3739 bytes --]
On 2015-09-02 12:45, Mimi Zohar wrote:
> On Wed, 2015-09-02 at 08:28 -0700, Kees Cook wrote:
>> On Tue, Sep 1, 2015 at 8:44 PM, Mimi Zohar <zohar@linux.vnet.ibm.com> wrote:
>>> On Tue, 2015-09-01 at 20:08 -0700, Kees Cook wrote:
>>>> On Tue, Sep 1, 2015 at 4:43 PM, Luis R. Rodriguez <mcgrof@suse.com> wrote:
>>>>> On Mon, Aug 31, 2015 at 10:18:55AM -0400, Mimi Zohar wrote:
>>>>>>>> eBPF/seccomp
>>>>>
>>>>> OK I knew nothing about this but I just looked into it, here are my notes:
>>>>>
>>>>> * old BPF - how far do we want to go? This goes so far as to parsing
>>>>> user passed void __user *arg data through ioctls which typically
>>>>> gets copy_from_user()'d and eventually gets BPF_PROG_RUN().
>>>>>
>>>>> * eBPF:
>>>>> seccomp() & prctl_set_seccomp()
>>>>> |
>>>>> V
>>>>> do_seccomp()
>>>>> |
>>>>> V
>>>>> seccomp_set_mode_filter()
>>>>> |
>>>>> V
>>>>> seccomp_prepare_user_filter()
>>>>> |
>>>>> V
>>>>> bpf_prog_create_from_user() (seccomp) \
>>>>> bpf_prog_create() > bpf_prepare_filter()
>>>>> sk_attach_filter() /
>>>>>
>>>>> All approaches come from user passed data, nothing fd based.
>>>>>
>>>>> For both old BPF and eBPF then:
>>>>>
>>>>> If we wanted to be paranoid I suppose the Machine Owner Key (MOK)
>>>>> Paul had mentioned up could be used to vet for passed filters, or
>>>>> a new interface to enable fd based filters. This really would limit
>>>>> the dynamic nature of these features though.
>>>>>
>>>>> eBPF / secccomp would not be the only place in the kernel that would have
>>>>> issues with user passed data, we have tons of places the same applies so
>>>>> implicating the old BPF / eBPF / seccomp approaches can easily implicate
>>>>> many other areas of the kernel, that's pretty huge but from the looks of
>>>>> it below you seem to enable that to be a possibility for us to consider.
>>>>
>>>> At the time (LSS 2014?) I argued that seccomp policies come from
>>>> binaries, which are already being measured. And that policies only
>>>> further restrict a process, so there seems to be to be little risk in
>>>> continuing to leave them unmeasured.
>>>
>>> What do you mean by "measured"? Who is doing the measurement? Could
>>> someone detect a change in measurement?
>>
>> I meant from the perspective of IMA. The binary would have already
>> been evaluated when it executed, and it's what's installing the
>> seccomp filter. And since seccomp filters can only reduce privilege,
>> it seems like they're not worth getting processed by IMA. But I might
>> not understand the requirements! :)
>
> So because we trust the binary, we can trust the resulting output that
> is loaded into the kernel. That assumes the trusted binary appraises
> it's input, right? We're relying on seccomp filters to reduce
> privileges properly. This isn't any different than trusting any other
> policies consumed by the kernel.
>
Except many binaries that use seccomp (at least most of the ones that
I've seen) don't change the filter based on input, but have it
hard-coded into the binary and only offer to turn it on or off based on
user input.
[-- Attachment #2: S/MIME Cryptographic Signature --]
[-- Type: application/pkcs7-signature, Size: 3019 bytes --]
next prev parent reply other threads:[~2015-09-02 17:37 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20150824210234.GI8051@wotan.suse.de>
[not found] ` <476DC76E7D1DF2438D32BFADF679FC5601057D32@ORSMSX103.amr.corp.intel.com>
[not found] ` <20150824225713.GJ8051@wotan.suse.de>
[not found] ` <CAGXu5jLDHCgygaVNHpuvszN6SXNKAjRW83q3-D2ZfRpO4uAmdw@mail.gmail.com>
[not found] ` <476DC76E7D1DF2438D32BFADF679FC5601058E78@ORSMSX103.amr.corp.intel.com>
[not found] ` <CAGXu5jJuwPfnQhu9u4-90UkmjWTBF_GLpJ7J1VaaT2D0d_-Mhg@mail.gmail.com>
[not found] ` <1440462367.2737.4.camel@linux.vnet.ibm.com>
[not found] ` <CALCETrXWBBdOKz-fSdM7YVu_sWQbA3YsHPeZAkRmtj+eawqZGQ@mail.gmail.com>
[not found] ` <1440464705.2737.36.camel@linux.vnet.ibm.com>
[not found] ` <14540.1440599584@warthog.procyon.org.uk>
2015-08-26 23:26 ` Linux Firmware Signing Luis R. Rodriguez
2015-08-27 2:35 ` Paul Moore
2015-08-27 19:36 ` Luis R. Rodriguez
2015-08-27 23:46 ` Paul Moore
2015-08-27 10:38 ` David Howells
2015-08-27 10:57 ` David Woodhouse
2015-08-27 21:29 ` Luis R. Rodriguez
2015-08-27 23:54 ` Mimi Zohar
2015-08-29 2:16 ` Luis R. Rodriguez
2015-08-31 14:18 ` Mimi Zohar
2015-08-31 16:05 ` David Woodhouse
2015-08-31 16:45 ` Mimi Zohar
2015-09-02 0:00 ` Luis R. Rodriguez
2015-09-01 23:43 ` Luis R. Rodriguez
2015-09-02 3:08 ` Kees Cook
2015-09-02 3:44 ` Mimi Zohar
2015-09-02 15:28 ` Kees Cook
2015-09-02 16:45 ` Mimi Zohar
2015-09-02 17:36 ` Austin S Hemmelgarn [this message]
2015-09-02 23:54 ` Mimi Zohar
2015-09-03 0:18 ` Luis R. Rodriguez
2015-08-27 23:56 ` Paul Moore
2015-08-28 11:20 ` Roberts, William C
2015-08-28 22:26 ` Paul Moore
2015-08-29 2:03 ` Luis R. Rodriguez
2015-09-01 2:52 ` Paul Moore
2015-09-01 14:12 ` Joshua Brindle
2015-09-01 20:08 ` Roberts, William C
2015-09-01 20:46 ` Joshua Brindle
2015-09-01 22:21 ` Eric Paris
2015-08-29 1:56 ` Luis R. Rodriguez
2015-09-01 20:20 ` Kees Cook
2015-09-02 0:09 ` Luis R. Rodriguez
2015-09-02 3:35 ` Mimi Zohar
2015-09-02 18:46 ` Luis R. Rodriguez
2015-09-02 20:54 ` Kees Cook
2015-09-02 21:37 ` Luis R. Rodriguez
2015-09-03 21:14 ` Kees Cook
2015-09-30 20:34 ` Luis R. Rodriguez
2015-09-03 0:05 ` Mimi Zohar
2015-09-03 0:29 ` Luis R. Rodriguez
2015-09-03 3:00 ` Mimi Zohar
2015-08-27 19:37 ` Luis R. Rodriguez
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=55E73399.2040502@gmail.com \
--to=ahferroin7@gmail.com \
--cc=ast@plumgrid.com \
--cc=casey.schaufler@intel.com \
--cc=dborkman@redhat.com \
--cc=dhowells@redhat.com \
--cc=dmitry.kasatkin@gmail.com \
--cc=dwmw2@infradead.org \
--cc=eparis@parisplace.org \
--cc=gregkh@linuxfoundation.org \
--cc=james.l.morris@oracle.com \
--cc=jlee@suse.de \
--cc=johannes@sipsolutions.net \
--cc=jschlst@samba.org \
--cc=julia.lawall@lip6.fr \
--cc=keescook@chromium.org \
--cc=kyle@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=luto@amacapital.net \
--cc=mcgrof@do-not-panic.com \
--cc=mcgrof@suse.com \
--cc=ming.lei@canonical.com \
--cc=mjg59@srcf.ucam.org \
--cc=paul@paul-moore.com \
--cc=pjones@redhat.com \
--cc=sds@tycho.nsa.gov \
--cc=selinux@tycho.nsa.gov \
--cc=serge@hallyn.com \
--cc=seth.forshee@canonical.com \
--cc=tiwai@suse.de \
--cc=vkuznets@redhat.com \
--cc=vojtech@suse.com \
--cc=william.c.roberts@intel.com \
--cc=zohar@linux.vnet.ibm.com \
/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).