Re: [Tsv-art] Tsvart telechat review of draft-ietf-uta-rfc7525bis-09

Peter Saint-Andre <stpeter@stpeter.im> Thu, 14 July 2022 01:19 UTC

Return-Path: <stpeter@stpeter.im>
X-Original-To: tsv-art@ietfa.amsl.com
Delivered-To: tsv-art@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 6C85EC14CF13; Wed, 13 Jul 2022 18:19:29 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.128
X-Spam-Level:
X-Spam-Status: No, score=-7.128 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, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RCVD_IN_ZEN_BLOCKED_OPENDNS=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=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=stpeter.im header.b=C9TJ1Sqh; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=uEk+8DiN
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 NAd2vG1OCD_d; Wed, 13 Jul 2022 18:19:25 -0700 (PDT)
Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) (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 083C4C14CF10; Wed, 13 Jul 2022 18:19:24 -0700 (PDT)
Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 3D8855C00CD; Wed, 13 Jul 2022 21:19:24 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163]) by compute4.internal (MEProxy); Wed, 13 Jul 2022 21:19:24 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=stpeter.im; h=cc :cc:content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm1; t=1657761564; x= 1657847964; bh=eGdx8sCXNwOkRM+GBB1digFEDITKjFJdTUF3ni9RaAU=; b=C 9TJ1SqhHbv27ZwP5V/2yaP8PsHpSaU84IdcXRH9fJtoBnDGG+Lg8vOROoANydeKT hanHuN8R4gpNLVCYQld8pGnb2b8Lunnn04czMr2kZAZYROYs8At4IhI6p7FcfzEd ObmrM/7EhcmW7IFFGa+UMHgRb4nLTlw47tNIvx4rGuAz7rf0WplPXWi8XZlaCeQz 5hvhQnsNeZKvNeBs/gIv58BORCkGNHswbxzMPXCOG+JqRr1kktx0rKflXPI18C8U 6qCiBzYnpN6Lm4cKp3NvxxZwyhjf0GjUypjgkGaHs/z+roNPh7yYDK5FAfpdpTTM qjjNoxty7o/6crqTEi6fw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to:x-me-proxy:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm3; t=1657761564; x= 1657847964; bh=eGdx8sCXNwOkRM+GBB1digFEDITKjFJdTUF3ni9RaAU=; b=u Ek+8DiNuWeTIV3Pjh4uJuHSr8M7L+Rxy8ElB3BMrxYZusqhX0TPWXC555xfMifv1 svG8C4uePBL+VtL6ZW+LocVFbt14QP42ciRst0HZINKml2FhDjQIgJP8+U9gM5QR xwtVk3nMeBIsTmLk5bjusYNm6fiz/q3rJZ4B8lO/Vr1KcV3XJi254eFs4ozvOPj9 4PSLg8WBv1Rzmktq0uuNPlX8f5fFlIIG7wSyEKJWB/vg32DLpErJkBmzJuvGbor7 K8j4J2z+TwrQI2zhuVMFPALGPZLh0ncvx5bUGBn7Z0ecsqaTmxv5jjLLRL2VbqHh eF3fdT2e2uEMSOSciQ0kA==
X-ME-Sender: <xms:G2_PYlOV6wQ5i3z3JMwJmZ8rjt385LDs0oHwtimnYYM5HRwLJxA77g> <xme:G2_PYn9C8aqoZatbpPRjb6VnkZ3SUWCbOTkspSWynIX-qdKdO8BZkcMnPOEILEaTR Qj2vVz4U7qEYW4pqg>
X-ME-Received: <xmr:G2_PYkTC6_D-PIKNc2SNzs8yvYEkbXv9D68LtpvrP2wbY28WPNAgtbqIsaQR>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudejkedggeehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhepkfffgggfvfevfhfhufgjtgfgsehtkeertddtfeejnecuhfhrohhmpefrvght vghrucfurghinhhtqdetnhgurhgvuceoshhtphgvthgvrhesshhtphgvthgvrhdrihhmqe enucggtffrrghtthgvrhhnpefhieehffeghfevveeukedujeeuiefffeefjeehfeevjeej gefhudfhiedvgfehleenucffohhmrghinhepghhithhhuhgsrdgtohhmpdhivghtfhdroh hrghenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehs thhpvghtvghrsehsthhpvghtvghrrdhimh
X-ME-Proxy: <xmx:G2_PYhs7frh9RijIZXhW_iUJTVZKVQBQr_EA3KyIjJS4NAZ_nCXXGA> <xmx:G2_PYtcwARrVtleInQuO8X2GdFtdzcFkSXf374eMXoA8RVteCKM0PQ> <xmx:G2_PYt2RfR21Lx9a6UUAUi9R87Kdf7w7Jfrw7i_jEsOF0N7iIKo5lQ> <xmx:HG_PYk7e2eGzI6NLYgkDL9qbPDnV7O0cxfiHZV2gmAn3374VjI5yhQ>
Feedback-ID: i24394279:Fastmail
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 13 Jul 2022 21:19:23 -0400 (EDT)
Message-ID: <3f0c3919-385a-558c-581a-72fc01820ec1@stpeter.im>
Date: Wed, 13 Jul 2022 19:19:22 -0600
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:91.0) Gecko/20100101 Thunderbird/91.11.0
Content-Language: en-US
To: Magnus Westerlund <magnus.westerlund@ericsson.com>, tsv-art@ietf.org
Cc: draft-ietf-uta-rfc7525bis.all@ietf.org, last-call@ietf.org, uta@ietf.org
References: <165771265249.6415.15334363478505429325@ietfa.amsl.com>
From: Peter Saint-Andre <stpeter@stpeter.im>
In-Reply-To: <165771265249.6415.15334363478505429325@ietfa.amsl.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/tsv-art/jJIr1CFVLZN6B4buAt_wxAwDyiI>
Subject: Re: [Tsv-art] Tsvart telechat review of draft-ietf-uta-rfc7525bis-09
X-BeenThere: tsv-art@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Transport Area Review Team <tsv-art.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tsv-art/>
List-Post: <mailto:tsv-art@ietf.org>
List-Help: <mailto:tsv-art-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tsv-art>, <mailto:tsv-art-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 14 Jul 2022 01:19:29 -0000

Hi Magnus, thanks for completing this review on short notice. Comments 
inline.

On 7/13/22 5:44 AM, Magnus Westerlund via Datatracker wrote:
> Reviewer: Magnus Westerlund
> Review result: Ready with Issues
> 
> This document has been reviewed as part of the transport area review team's
> ongoing effort to review key IETF documents. These comments were written
> primarily for the transport area directors, but are copied to the document's
> authors and WG to allow them to address any issues raised and also to the IETF
> discussion list for information.
> 
> When done at the time of IETF Last Call, the authors should consider this
> review as part of the last-call comments they receive. Please always CC
> tsv-art@ietf.org if you reply to or forward this review.
> 
> So this review is not really a IETF last call review. It was initiated on the
> request of the transport AD in preparation for the IESG review. Looking on the
> below I would note that this was likely an error on my part in the triaging of
> this document in TSV-ART. So please do what you find appropriate to do with
> this information.
> 
> 1) Section 3.1.1:
> "Implementations MUST support TLS 1.2 [RFC5246] and MUST prefer to negotiate
> TLS version 1.2 over earlier versions of TLS."
> 
> Considering that no earlier version MUST be negotiated, the second part of
> above sentence appears redundant.

I think we have a fix for this:

https://github.com/yaronf/I-D/pull/447

> 2) Section 3.1.1:
> "Rationale: Several stronger cipher suites are available only with TLS 1.2
> (published in 2008). In fact, the cipher suites recommended by this document
> for TLS 1.2 (Section 4.2 below) are not available in older versions of the
> protocol."
> 
> Are they not available in newer versions either? If they are not then please be
> explicit, if not, then the rationale would be to consider to go to never
> versions. I think the main reason for staying on 1.2 is if you need other
> features not available in TLS 1.3 like mutual re-authentication. 

 From a security perspective, TLS 1.3 is preferable of course. The 
authors and UTA WG are not ready to deprecate TLS 1.2 yet (IMHO that 
should be done in an RFC along the lines of RFC 8996) and we believe 
that the best *current* practice at this time is to continue supporting 
TLS 1.2. That will likely change in 7525ter whenever it is published.

> So maybe this
> rational should be updated to indicate more like why 1.2 may be preferred over
> 1.3 than why it is preferred over the earlier version which shall not be used.

We do say:

    *  Implementations SHOULD support TLS 1.3 [RFC8446] and, if
       implemented, MUST prefer to negotiate TLS 1.3 over earlier
       versions of TLS.

(There is also discussion <https://github.com/yaronf/I-D/issues/446> 
about changing that SHOULD to MUST.)

> Based on our work on DTLS/SCTP
> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-dtls-over-sctp-bis/ really
> the issue we found with using (D)TLS 1.3 have been related to long lived
> sessions and how TLS 1.3 keyUpdate works. I think three aspects we found in the
> DTLS/SCTP work is relevant here for consideration and do affect applications in
> their choice.
> 
> • Periodic re-authentication and transfer of revocation information of both
> endpoints (not only the DTLS client).
> 
> • Periodic rerunning of Diffie-Hellman key-exchange to provide forward secrecy
> and mitigate static key exfiltration attacks.
> 
> • When using keyUpdate the master secret isn't impacted, which results in
> applications using TLS exporter to derive key material are not getting new keys
> if re-envoking the exporter after a keyUpdate. Thus, application protocols
> using the TLS exporter needs to take this into account to include epoch
> counters or similar in the key-derivation process and it will not result in
> forward secrecy. I would note that QUIC v1 uses its own key update mechanism as
> defined in Section 6 of RFC 9001 that I think illustrates this.
> 
> For DTLS/SCTP we did go with a more complex method based on creating new DTLS
> connections and dealing with handling of two connections in parallel due to
> SCTPs capability for parallel transmission of data. That also avoided use to
> have to rely solely on DTLS 1.2 to handle these issues and we can use DTLS 1.3
> and likely any future DTLS version too.

This is interesting and helpful. Can you suggest any text for rfc7525bis 
along these lines? Or should we simply point to 
draft-ietf-tsvwg-dtls-over-sctp-bis for the relevant considerations?

> Section 4.4:
> 
> When a sender is approaching CL, the implementation SHOULD initiate a new
> handshake (or in TLS 1.3, a Key Update) to rotate the session key. When a
> receiver has reached IL, the implementation SHOULD close the connection.
> 
> These are clearly the right advice. However, depending on your protocol this
> might be far from easy to accomplish without tearing down the whole protocol
> session or context. 

Good point.

> I would actually add some wording here about the need to
> consider how that can be accomplished in the protocol protected by (D)TLS. If
> you want an example I would recommend to point to DTLS/SCTP as the protocols
> multi-stream non head of line blocking nature makes a clean cut over difficult
> and instead results in a fairly complex mechanism to handle parallel DTLS
> connections while one ensure that all data protected by the old connection is
> drained out of the lower layers. Also as noted above RFC 9001 section 6
> indicates yet another way of doing it. However, I think it is a method that has
> the downside of creating key derivation and signalling in an application
> protocol. There are some potential gremlins here that might be worth at least
> warning application protocol writers about.

Indeed. We (the authors) will discuss potential text and reply again in 
this thread when we have a proposal.

Peter