Re: [Gen-art] Gen-ART Last Call review of draft-ietf-lamps-e2e-mail-guidance-14

Daniel Kahn Gillmor <dkg@fifthhorseman.net> Thu, 22 February 2024 20:02 UTC

Return-Path: <dkg@fifthhorseman.net>
X-Original-To: gen-art@ietfa.amsl.com
Delivered-To: gen-art@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 213E9C14F5E6; Thu, 22 Feb 2024 12:02:40 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.313
X-Spam-Level:
X-Spam-Status: No, score=-1.313 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, RDNS_NONE=0.793, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (unsupported algorithm ed25519-sha256)" header.d=fifthhorseman.net header.b="RRG0zTxR"; dkim=pass (2048-bit key) header.d=fifthhorseman.net header.b="mXaVKiM3"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9OYaC-VHZvcL; Thu, 22 Feb 2024 12:02:35 -0800 (PST)
Received: from che.mayfirst.org (unknown [162.247.75.117]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D907FC180B41; Thu, 22 Feb 2024 12:00:54 -0800 (PST)
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/simple; d=fifthhorseman.net; i=@fifthhorseman.net; q=dns/txt; s=2019; t=1708632053; h=from : to : cc : subject : in-reply-to : references : date : message-id : mime-version : content-type : from; bh=BvEu8ZR92O5etnRwpvPElQSOtE8qGVDW54A+xR/2yKI=; b=RRG0zTxR42dpX//ZLWz1kLKoV5UHxNrV1dz7+5eWJevpszk4P0HFuVwV8DfjpWUe/yolK drDGT0MJOQZwFyoDw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=fifthhorseman.net; i=@fifthhorseman.net; q=dns/txt; s=2019rsa; t=1708632053; h=from : to : cc : subject : in-reply-to : references : date : message-id : mime-version : content-type : from; bh=BvEu8ZR92O5etnRwpvPElQSOtE8qGVDW54A+xR/2yKI=; b=mXaVKiM3jW4df+x7DAlvbbl2RWf4E/rKdXMcrmeuM/LV+cRN+loNqNy+jPRDjjsANkUm1 ztATRNgO1TL6yvtcemNrzHUCpNd9ChBEuKIisDnWWZHK/wFhicHta427dX2kMoaN1KCLPDN Jx9v59oZyTkxiWvb/JHp3SJI6JjBXk6X+ep5tCmj7DdgVBVYearWCbPXzejVQQlRfVM7cfy fdkHB9Nrkt4nBBmZ6nzjbZT0KLegW1Ro8t14Rg6A5qWbRhtPlI8wo5NcO88OkZ2I/n41WOO anUjHz4CTUXZMcN6XSJN7STYheQGdyBsLkBZCAZKTgeHiW2g867BEWDHk3lg==
Received: from fifthhorseman.net (AMERICAN-CI.ear2.NewYork6.Level3.net [4.59.214.2]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by che.mayfirst.org (Postfix) with ESMTPSA id 8E0F4F9DB; Thu, 22 Feb 2024 15:00:53 -0500 (EST)
Received: by fifthhorseman.net (Postfix, from userid 1000) id 6DADE20671; Thu, 22 Feb 2024 15:00:43 -0500 (EST)
From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>
To: Paul Kyzivat <pkyzivat@alum.mit.edu>, draft-ietf-lamps-e2e-mail-guidance.all@ietf.org
Cc: General Area Review Team <gen-art@ietf.org>, last-call@ietf.org, spasm@ietf.org
In-Reply-To: <1aa54ca6-d948-45d1-9963-4c1f5e878cdd@alum.mit.edu>
References: <1aa54ca6-d948-45d1-9963-4c1f5e878cdd@alum.mit.edu>
Autocrypt: addr=Daniel Kahn Gillmor; prefer-encrypt=mutual; keydata= xjMEZXEJyxYJKwYBBAHaRw8BAQdA5BpbW0bpl5qCng/RiqwhQINrplDMSS5JsO/YO+5Zi7HCi QQfFgoAMQWCZadnIAUJBdtHCwMLCQcDFQoIApsBAh4BFiEE1HcEDHDCFWpcKYVJu36RAUlea/ cACgkQu36RAUlea/edDQD+M2QjnoEyu/TjI+gRXBpXQ5jCsnnp9FdYhaSSUW/vZ8kBAJByWlj A9aMfVaVrmvgcYw7jzJz+gmZspBRB++5LZ20NzRc8ZGtnQGZpZnRoaG9yc2VtYW4ubmV0PsLA EQQTFgoAeQMLCQdHFAAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnEu/CS CeyWwC6j4ihJr2u/z6delsF1pvYW3ufgf1L538DFQoIApsBAh4BFiEE1HcEDHDCFWpcKYVJu3 6RAUlea/cFAmWnX5AFCQXZ8EUACgkQu36RAUlea/cjVwD+ONjdHM74rAa6EEiiqaPjlptiaZx CVqFYXnib6EbZARkBAPnnR8pW8vCBnDXHKu65jNqwF3aH761NaOqqMFfppg8GzjMEZXEJyxYJ KwYBBAHaRw8BAQdAjX25Fq2Q9IUFeHy6yByIQPBnFOedFliuEiCIUzJsENDCwMUEGBYKAS1HF AAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnwqKWsw56uoWVLIFcs7ZecJ gwpsSNevWCzbviKQ8yRLUCmwK+oAQZFgoAbwWCZXEJywkQdy0WHjXNS4FHFAAAAAAAHgAgc2F sdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnEIJSOxuw2y/UJmg5M3BLpN0JYjODZpXiEVFu 1byARzMWIQR0vATEPYYIS+hnLAZ3LRYeNc1LgQAAsH8BAKg1C5LK/D7pSkXCD+jfTSP+CqM58 iHLjh4vKhpOKsTJAQCHldtEjxJ1ksPTFgG9HihHH7qc6/wvvLw77ETMpwlrAxYhBNR3BAxwwh VqXCmFSbt+kQFJXmv3BQJlp1+rBQkCF4lgAAoJELt+kQFJXmv3ydsA/2roQZ2Jm/7iUrg/2C5 ClWA/xbvPC31LyMkGGH2/rq8tAP9BgqLuCPnNTVPqeX9+9qqMmaFq7wmvjq5I+yycAw9CDc44 BGVxCcsSCisGAQQBl1UBBQEBB0BZMsRrRaaeFSYMF1ZdfRmVgBriDUIr99eDQ085BK14DgMBC AfCwAYEGBYKAG5HFAAAAAAAHgAgc2FsdEBub3RhdGlvbnMuc2VxdW9pYS1wZ3Aub3JnsazAWX tEHUPmSTmcRZAIsAsNiO8k0hdjsfRlRVipgJgCmwwWIQTUdwQMcMIValwphUm7fpEBSV5r9wU CZadfqwUJAheJYAAKCRC7fpEBSV5r90AjAPwLgY1iKiFJEj32SVD5f721929l79VxQB5FlQss x1n5kQEA6Uct2tPvbB6T7p5KG3Gl+tbi7oJAuxFmpkpW5/N2Owg=
Date: Thu, 22 Feb 2024 15:00:41 -0500
Message-ID: <87jzmws1zq.fsf@fifthhorseman.net>
MIME-Version: 1.0
Content-Type: multipart/signed; boundary="=-=-="; micalg="pgp-sha512"; protocol="application/pgp-signature"
Archived-At: <https://mailarchive.ietf.org/arch/msg/gen-art/SQKxR4C1GuIL-7_TKgSK-ucScRU>
Subject: Re: [Gen-art] Gen-ART Last Call review of draft-ietf-lamps-e2e-mail-guidance-14
X-BeenThere: gen-art@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "GEN-ART: General Area Review Team" <gen-art.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/gen-art>, <mailto:gen-art-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/gen-art/>
List-Post: <mailto:gen-art@ietf.org>
List-Help: <mailto:gen-art-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/gen-art>, <mailto:gen-art-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 22 Feb 2024 20:02:40 -0000

Hi Paul--

Thanks for this review!  I've just staged some minor cleanup edits in
git (https://gitlab.com/dkg/e2e-mail-guidance/) that should address your
concerns.  After my co-editors have had a chance to review and discuss,
we'll probably roll them up with the suggestions from other reviewers
into a new draft.

More comments interleaved below:

On Sat 2024-02-17 18:31:18 -0500, Paul Kyzivat wrote:
> 1) NIT: Section 9.7.2:
>
> In the following:
>
> "If such a proxy handles certificate discovery in inbound messages (see 
> Appendix A.2.1), it will also need to communicate the results of that 
> discovery process to its corresponding proxy for message composition 
> (see Section 9.7.1)."
>
> I think there is a problem here with "... proxy ... communicate ... to 
> ... proxy". Shouldn't it communicate to the MUA?

In the transparent proxy scenario (which this section is warning about),
the proxy doesn't/can't communicate to the MUA about cryptographic
information, because the MUA is decidedly ignorant.  So the text here is
as intended -- it's about the inbound proxy talking to the outbound
proxy.  But i agree it could be clearer, the first proxy is now "inbound
proxy" and the second proxy is now "outbound proxy".

> 2) NIT: Section 2.2
>
> s/Implmenters/Implementers/

thanks, fixed.

> 3) NIT: Section 8.1.1
>
> s/rFC822Name/RFC822Name/

I think this should actually be rfc822Name (this is how it appears in
e.g., RFC 8705).  I'll fix both instances of the term.

> 4) NIT: Section 9.5
>
> s/(e.g. and IMAP mailbox)/(e.g. an IMAP mailbox)/

thanks, fixed.

> 5) NIT: IdNits:
>
> IdNits reports many things, most of them bogus. A couple of them look to 
> me like they deserve consideration:
>
>    -- Obsolete informational reference (is this intentional?): RFC 3501
>       (Obsoleted by RFC 9051)

good catch, updated.

>    -- Duplicate reference: draft-ietf-openpgp-crypto-refresh,
>       mentioned in 'I-D.ietf-openpgp-crypto-refresh', was also
>       mentioned in 'I-D.ietf-openpgp-crypto-refresh-13'.

Thanks, fixed by pointing to draft -13 uniformly.


> Other Comments/Questions:
>
> I found this document very informative. I wasn't aware how many issues 
> there are with this feature. The work required to make an MUA comply 
> with this document seems daunting. Is it expected that this will happen 
> for popular MUAs?

I agree that it is daunting.  My takeaway from working as an editor on
this document is that no one has really tried to make an e-mail client
that is natively secure and easy to use from an end-to-end cryptographic
perspective before.  In fact, in some of the testing i've done, i'm
reminded of the state of web browsers in about 1998, where some folks
had done some thinking about security, but what security mechanisms
existed were pretty haphazard and definitely not robust.

We've done a lot of work on web browsers since then, including work to
explicitly document and standardize what kinds of cryptographic state
are kept, how certain (cryptographic and non-cryptographic) features
interact, and how to mitigate risks from those interactions. Sadly, no
one ever seems to have done that work for MUAs that i've been able to
find.  This document can be read either as a foundation for that kind of
work, or as a wistful epistle from a future that might have been.  I'd
prefer the former, of course, but we'll see.

I don't know of any MUA that actually implements all of these
recommendations yet, though each recommendation is drawn from actual
behaviors of clients in the wild today.

I can't speak to the intent of popular MUA developers, thouh, sadly.

> Also, do you consider web server based implementations of email clients 
> (such as gmail) to be proxies? If so it might be good to say so 
> explicitly. If not, then should they be discussed separately?

Due to the operational model of the web, I think there are some pretty
fundamental challenges to a remotely-hosted webserver-based MUA that
wants to offer end-to-end cryptographic security.

In particular, if you assume that the webserver hosting the MUA itself
is part of the threat model, then there are many many additional
concerns that we did not include in this document.

> When composing a reply a user may find that desired parts of a 
> replied-to message have not been quoted by the MUA. (Due to the rules in 
> 5.4.) Such user is likely to curse and then simply copy/paste the 
> desired text. Is the MUA expected to detect this behavior and discourage it?

My experience is that most users (outside of peculiar types like IETF
participants) have no idea that there is any quoted and attributed text
pasted into their e-mails in the first place.  They simply type where
the cursor is placed ("top-posting"), and carry on, oblivious to
whatever stuff the MUA injected below their cursor.

Such a user will not curse if there is no quoted and attributed text;
they simply won't notice.  The MUAs job is to avoid accidentally leaking
the user's cleartext, not to prevent the user from deliberately leaking
cleartext.

If the user decides to paste sensitive material of any kind into a
cleartext message (e.g., credit card numbers, passwords, or cleartext
copies of other messages) there's really nothing that an MUA can do
about it (though i can imagine some fancier MUAs having a "it looks like
this cleartext e-mail contains a credit card number; are you sure you
want to send it?" feature, the same way that some MUAs capable of simple
sentiment analysis or word selection scoring might say "this e-mail
message looks rather heated; would you like to wait 10 minutes to cool
off and review before sending it?"

But that kind of work is pretty clearly outside the scope of
e2e-mail-guidance :)

I really appreciate the time you took to review the draft!

                  --dkg