All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Mei <Eric.Mei@Sun.COM>
To: lustre-devel@lists.lustre.org
Subject: [Lustre-devel] Security issues
Date: Fri, 08 Aug 2008 11:44:06 -0600	[thread overview]
Message-ID: <489C85E6.7030802@sun.com> (raw)
In-Reply-To: <C4C1DAA6.5570%peter.braam@sun.com>

Peter Braam wrote:
> On 8/8/08 11:03 AM, "Eric Barton" <eeb@sun.com> wrote:
> 
>     1. Securing bulk data.
> 
>     It seems to me that it _is_ appropriate to use the GSSAPI to secure the
>     transfer of bulk data between client and server since it's
>     effectively just
>     another message.  I can see (at least naively) that it would be good to
>     avoid double encryption in the case where file contents are actually
>     stored
>     encrypted on disk.  
> 
> 
> You are not telling me that we are going through a lot of re-design, 
> that we are encrypting data and that then we are not storing it 
> encrypted on disk?  Come on, adding an EA with a key to decrypt is not 
> so hard and one gets lots of value from it.
> 
> 
>     But even in this case, don't we still have to sign the
>     (encrypted) bulk so that the receiver can be sure it arrived intact?
> 
> Well, yes, but as I indicated you can sign the hash that is stored on 
> (ZFS) disk for this.  That avoids generating the hash twice.  So I am 
> really not convinced yet.

Peter, are you saying that except using NASD-style protocol, we don't 
need to encrypt/sign bulk data at all?

> The issue is not the message mechanism, but is what identity to use for 
> GSS to authenticate and how to manage and revoke that etc.

Here we only want to protect on-wire data, the gss authentication is 
only for the "node", not particular user, as you pointed out previously.

>     2. Securing Capabilities.
> 
>     If we want to be sure that a Capability given to client A cannot be
>     snooped and used by client B we either (a) have to make the Capability
>     secret (i.e. never passed in cleartext) or (b) have to make the
>     Capability
>     identify which client it is valid for.
> 
>     It seems to me that (b) is preferrable since it ensures that a malicious
>     client cannot leak Capabilities to a 3rd party.  The downside is
>     that this
>     multiplies the number of unique Capabilities by the number of clients,
>     potentially increasing CPU load when 1000s of clients all open the same
>     shared file and each require unique Capabilities to access the
>     stripe objects.
>     Do we have a feel for how bad this could be?
> 
> Yes, very bad, and it is absolutely necessary to have an option that 
> avoids this (also 1000s is out of date ? it could be 100x worse).  That 
> option could be to simply not have security on the compute cluster if 
> customers agree with this.
> 
> We also need to discuss your proposals with a review committee from LLNL 
> and Sandia, as we did during the PF discussions.

We're trying to figure out a way to generate only one capability for 
each MD object, but somehow mingled with per-export data to generate 
client-unique capability, but till now we haven't found a good solution.

The other thought is using some kind of light-weight, but still 
reasonably secure hash algorithm. By changing the KEY frequently enough 
(e.g. every 2 hours) we can still be secure. But we'v no idea what hash 
algorithm could fit our needs.

-- 
Eric

  reply	other threads:[~2008-08-08 17:44 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-05 18:12 [Lustre-devel] security: rpc message vs bulk data Eric Mei
2008-08-06  2:32 ` Peter Braam
2008-08-06 16:55   ` Eric Mei
2008-08-06 22:48     ` Peter Braam
2008-08-08 14:25       ` James Hughes
2008-08-08 14:45         ` Peter Braam
2008-08-08 17:03           ` [Lustre-devel] Security issues Eric Barton
2008-08-08 17:12             ` Peter Braam
2008-08-08 17:44               ` Eric Mei [this message]
2008-08-09  3:47                 ` Peter Braam
2008-08-11 17:14                   ` Eric Mei
2008-08-11 19:33                     ` Peter Braam
2008-08-11 19:51                       ` Eric Mei
2008-08-13 18:40                       ` James Hughes
2008-08-13 22:26                         ` Peter Braam
2008-08-11 12:56               ` Vitaly Fertman

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=489C85E6.7030802@sun.com \
    --to=eric.mei@sun.com \
    --cc=lustre-devel@lists.lustre.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.