Re: [nfsv4] Comments on draft-ietf-nfsv4-integrity-measurement-07

spencer shepler <spencer.shepler@gmail.com> Mon, 28 October 2019 16:39 UTC

Return-Path: <spencer.shepler@gmail.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0A22C120119 for <nfsv4@ietfa.amsl.com>; Mon, 28 Oct 2019 09:39:42 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.998
X-Spam-Level:
X-Spam-Status: No, score=-1.998 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eawrcF9WvwrZ for <nfsv4@ietfa.amsl.com>; Mon, 28 Oct 2019 09:39:39 -0700 (PDT)
Received: from mail-lf1-x133.google.com (mail-lf1-x133.google.com [IPv6:2a00:1450:4864:20::133]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5152B1200CC for <nfsv4@ietf.org>; Mon, 28 Oct 2019 09:39:39 -0700 (PDT)
Received: by mail-lf1-x133.google.com with SMTP id j14so3360347lfb.8 for <nfsv4@ietf.org>; Mon, 28 Oct 2019 09:39:39 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=qlQNj5/i8UejWUSLzdMfyWm1A6MfxCSQ0DgKLhr2HfA=; b=XmQExc22kkLayNW9AWfDSCp4Z6Fzfa0RvMIyQouXgLreXli7MFN6XYQ8cCAtpE6+P0 GOs8LgB9dHH0Gfkf5FRlT89YsUfju+MIkuea3ciryghccv3/2cBnNMk7JJz9Dm5Vc7iN VWq4413XuUNF2an8Q6Y0eWsJxH8Mrj/bhV/EYqaud8U+Vp8+3Pldrqg5EoXZtqL0o0af zu+SGJZE94M9HOezl/apEaPST3h1Q9tYmNeuOh/kiG9VTqI2ol5Ppkq7Dsv3/exW/N5u r7uUCIs2G2qnOgVrGefQg5EsV6pxanKjOMO5GaUraOMUasVOnnMSHDIQ6iutv5ajzYox hWkw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=qlQNj5/i8UejWUSLzdMfyWm1A6MfxCSQ0DgKLhr2HfA=; b=E4BC+xB4WtTcu0nRfH41TeebH4WJYb9eoE8ho5+m1rWz3MDT88DO7UC5hueweKfTLc D/sarvjbTmFNcywvTNnzqdAyBvqLF/8rYSsg9Ym/N7IO3gz+YRIb8zrgYe4RhsZOzP16 7+uTOujLs/gEji8jnq0gp6rfnY/WajSgPh/UByg8MJakCbMVmAws6CWV1A4i4hipTirl mOK6LGgPP5YQICXZoWSMi/kY83vGCiKceP9966rU6931didhxAWgpqg9w4+QMNd/g2M/ nZSn8vJVhLvLAOFENIqfjtQQ/eRa/l2DANra1qavY6LKs/jDubqtHvARCrzVKkNACX0p IpoA==
X-Gm-Message-State: APjAAAUgHWf4ZOVGQrw7+8lMjiCjMIr77vc+uaMDYee/ifJcAWz40tgl GeiUpZCGq3rbwoEIhCd+CgcdHjtlMIUlUcJyeVs=
X-Google-Smtp-Source: APXvYqwzosLPBPrr+6YTYjITyUlk6/jgEaA0aj0SxmETwl+0iE+b+4hf2ECHUKb64fnqHrrJS4ggu13OVvhWv0WNEzw=
X-Received: by 2002:a05:6512:146:: with SMTP id m6mr2502971lfo.98.1572280777554; Mon, 28 Oct 2019 09:39:37 -0700 (PDT)
MIME-Version: 1.0
References: <CAFt6BakApq=FJWs+r-jwxvTdXYs9yOg9KS47no93kdnp2gZ_+Q@mail.gmail.com> <9BEBDE7A-522A-4A6B-8132-D9C3A8A4922C@oracle.com> <CAMhwm9_T12QBC5_Yxe2c2MYmbb3ZZjhRYZ5OXm58zxuZ2vS+0w@mail.gmail.com>
In-Reply-To: <CAMhwm9_T12QBC5_Yxe2c2MYmbb3ZZjhRYZ5OXm58zxuZ2vS+0w@mail.gmail.com>
From: spencer shepler <spencer.shepler@gmail.com>
Date: Mon, 28 Oct 2019 09:39:26 -0700
Message-ID: <CAFt6Ba=BSyqrXB1mPV0OymKxYQAnLN_FJCkW+Howyj3KoCEt5Q@mail.gmail.com>
To: Craig Everhart <cfeverhart@gmail.com>
Cc: Chuck Lever <chuck.lever@oracle.com>, NFSv4 <nfsv4@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000003bc0ae0595fb2503"
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/-SWgiTVsclzQjCvGkHiE5BAJTGc>
Subject: Re: [nfsv4] Comments on draft-ietf-nfsv4-integrity-measurement-07
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 28 Oct 2019 16:39:42 -0000

Craig,

The general idea does appear to have utility and would be in the direction
of what I think would be needed.

Is it worthwhile or will the idea be acceptable to others?  No idea but it
might be worth some discussion but the overall motivation still seems weak
in my opinion as general motivation - but it is but a single opinion.

Spencer


On Mon, Oct 28, 2019 at 9:05 AM Craig Everhart <cfeverhart@gmail.com> wrote:

> I (could) have a specific alternative proposal.
>
> It would be based on an articulation of exactly what should be the
> contents of an integrity "blob"--e.g., something like an HMAC_SHA256
> computation based on the file contents and a specific authorizing key,
> presumably associated with the originating provenance of the file: some
> private key associated with an originator's certificate, or a PSK.
>
> The question would then be how the consumer of the provenance blob is to
> verify that the HMAC value correctly identifies the given file.  In other
> words, all the questions that I've had for this architecture from the
> beginning.
>
> It would not be pre-built into Linux, but it would be something that
> multiple independent parties could know how to create and validate.
>
> Craig
>
> On Mon, Oct 28, 2019 at 11:00 AM Chuck Lever <chuck.lever@oracle.com>
> wrote:
>
>> Hi Spencer, thanks for taking time to review this document. Responses
>> to individual comments are below.
>>
>>
>> > On Oct 28, 2019, at 2:50 AM, spencer shepler <spencer.shepler@gmail.com>
>> wrote:
>> >
>> >
>> > Feedback and comments on the draft “Integrity Measurement for Network
>> File System version 4” - draft-ietf-nfsv4-integrity-measurement-07.
>> >
>> >
>> > Note that these comments are personal contribution and do not reflect
>> my position as working group co-chair.
>> >
>> > In short, I am opposed to moving this draft to last call in its current
>> state.  Generally, the draft describes the Linux implementation of a
>> feature that is to be extended via NFS.  However, the description provided
>> is insufficient for interoperable implementations to be achieved.
>>
>> Issues about interoperation have already been raised and addressed
>> multiple times both on the mailing list and in presentations at IETF
>> meetings. The metadata stored in this attribute is opaque to the NFS
>> protocol and implementations, just like file data is opaque.
>>
>> The metadata is not created by the NFS implementation; it is created
>> by a user space tool. It is not interpreted by the NFS implementation;
>> it is interpreted by a separate privileged security module.
>>
>> NetApp, for instance, could create a fully interoperating implementation
>> today, based solely on this document, simply by enabling clients to store
>> and retrieve this attribute. There is no more to it than that.
>>
>> NFS, in this case, is used as a transport. It is an intermediary. There's
>> no reason it needs to interpret the metadata. It's only job is to ensure
>> that data and metadata is not maliciously or accidentally altered.
>>
>>
>> > There are two options, in my opinion, to moving this document forward:
>> >
>> > 1)  Limit the description to the addition of the new, opaque attribute
>> and corresponding errors that can be returned as a result of the
>> interpretation of that attribute.
>> >
>> > 2)  Fully define the contents of the new attribute such that
>> independent implementations can be achieved. This would include, but is not
>> limited to, the open definition of the content of the new attribute and the
>> procedures associated with defining new content and interpretation thereof.
>> >
>> > If option 1) were chosen, I would still be of the opinion that the
>> draft should not move forward since it would present another barrier to
>> open, interoperable implementations.
>>
>> "To move this document forward, pick option 1 or 2. But if you pick option
>> 1, I will still object."
>>
>> That means there is really only one option in your opinion. I have
>> repeatedly
>> stated why option 2 is not practical or necessary. The nfsv4 working group
>> and the IETF does not want to be the bearer of the IMA standard for Linux.
>>
>> Further, there is no need for it do so, because the metadata stored in
>> this
>> attribute is opaque to the NFS protocol and to NFS implementations.
>>
>> "Barrier to open implementations." The Linux implementation is open
>> source.
>> It would certainly be possible to port the Linux implementation, or with a
>> little more work, provide a clean-room implementation. In an era in which
>> open source dominates, "open" no longer means just that there is an open
>> standard. Maybe "open" is not what you actually meant here.
>>
>> Seems to me that rejecting a protocol mechanism that enables the use of a
>> data format with an open source implementation but no published standard
>> is
>> also a barrier to open implementations.
>>
>>
>> > Note that I am also doubtful of the use case being presented. Using NFS
>> to directly store and supply application executables seems to be in rapid
>> decline or has already fallen out of use.  Given the rise of virtualization
>> and the hosting of virtual disks on NFS along with the rise of containers
>> and distribution thereof, application distribution seems to be a thing of
>> the past with respect to their store/retrieval from NFS mounts.
>>
>> Do you have evidence that this change is taking place? Sharing the same
>> application executable on NFS seems pretty common in Oracle deployments.
>>
>> Do you believe IMA is not also useful for the read-only virtual disk use
>> case?
>>
>> One reason that virtual disks are used is /because/ NFS does not support
>> things like xattrs, capabilities, and integrity metadata. Otherwise,
>> maintaining guest root filesystems on NFS would be a popular solution.
>>
>> How about protection of other types of read-mostly data like configuration
>> files?
>>
>>
>> > If the effort was more focused on more traditional data integrity from
>> source to consumption, that would be a more interesting use case.  With the
>> rise of large scale data center usage of NFS (e.g. cloud computing) where
>> customers expect data integrity or the identification of failure, the scale
>> of cloud computing presents many opportunities for the loss of data
>> integrity and NFS (and the client and server implementations thereof) do
>> nothing to ensure data integrity.  The draft does mention spot fixes of
>> data-at-rest methods, and in-transit methods, but there are many points
>> that present areas of potential failure, and these are ignored in today’s
>> implementations (at least to this commenter's knowledge).
>>
>> There is no claim made in the document that this mechanism closes all
>> integrity exposures. Can you identify particular areas that need to be
>> addressed by this mechanism but are not? Do you have specific alternative
>> proposals?
>>
>>
>> --
>> Chuck Lever
>>
>>
>>
>> _______________________________________________
>> nfsv4 mailing list
>> nfsv4@ietf.org
>> https://www.ietf.org/mailman/listinfo/nfsv4
>>
>