Re: [Emu] draft-ietf-emu-rfc7170bis-00.txt Review

Alan DeKok <aland@deployingradius.com> Sun, 01 January 2023 18:41 UTC

Return-Path: <aland@deployingradius.com>
X-Original-To: emu@ietfa.amsl.com
Delivered-To: emu@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 94172C14F746 for <emu@ietfa.amsl.com>; Sun, 1 Jan 2023 10:41:51 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.896
X-Spam-Level:
X-Spam-Status: No, score=-1.896 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
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 Y3hNb4fBlvYd for <emu@ietfa.amsl.com>; Sun, 1 Jan 2023 10:41:46 -0800 (PST)
Received: from mail.networkradius.com (mail.networkradius.com [62.210.147.122]) (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 5AF1AC14F743 for <emu@ietf.org>; Sun, 1 Jan 2023 10:41:45 -0800 (PST)
Received: from smtpclient.apple (135-23-95-173.cpe.pppoe.ca [135.23.95.173]) by mail.networkradius.com (Postfix) with ESMTPSA id 15175263; Sun, 1 Jan 2023 18:41:39 +0000 (UTC)
Authentication-Results: NetworkRADIUS; dmarc=none (p=none dis=none) header.from=deployingradius.com
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\))
From: Alan DeKok <aland@deployingradius.com>
In-Reply-To: <CABXxEz9LxQaih4oc9kvyiMdpDf-eYs6hMOWmXfRNsfWMxBAB4g@mail.gmail.com>
Date: Sun, 01 Jan 2023 13:41:38 -0500
Cc: EMU WG <emu@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <5D86DEFC-7CE1-481D-90F0-E5A18B1BC657@deployingradius.com>
References: <167224489569.23388.9442266431540455034@ietfa.amsl.com> <CABXxEz9LxQaih4oc9kvyiMdpDf-eYs6hMOWmXfRNsfWMxBAB4g@mail.gmail.com>
To: Oleg Pekar <oleg.pekar.2017@gmail.com>
X-Mailer: Apple Mail (2.3696.120.41.1.1)
Archived-At: <https://mailarchive.ietf.org/arch/msg/emu/Tcvk3mQB7X8i1IWsDMvYHShHUM0>
Subject: Re: [Emu] draft-ietf-emu-rfc7170bis-00.txt Review
X-BeenThere: emu@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "EAP Methods Update \(EMU\)" <emu.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/emu>, <mailto:emu-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/emu/>
List-Post: <mailto:emu@ietf.org>
List-Help: <mailto:emu-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/emu>, <mailto:emu-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 01 Jan 2023 18:41:51 -0000

On Dec 31, 2022, at 12:14 PM, Oleg Pekar <oleg.pekar.2017@gmail.com> wrote:
> 
> Hi all, 
> Few initial comments:

  

> 1)  Section "3.3.1.  EAP Sequences" 
> It says "Upon completion of each EAP method in the tunnel, the server MUST send an Intermediate-Result TLV...". We have discussed previously that:
> a) EAP RFC 3748 calls EAP types 1..3 also "EAP methods":

  This is address with discussion in commit https://github.com/emu-wg/rfc7170bis/commit/57b157e748603b282f3fb1c50cea3598587c490e

  In short, RFC 3748 uses "EAP method" everywhere to mean "EAP authentication method",

  I'm OK with changing it, but I don't think it's a large source of confusion.

> 2) Regarding using both password authentication and EAP authentication method inside the same TEAP tunnel - should we merge the explanation on what to do after completion of each EAP authentication method and password authentication into a common section since the completion is the same?

  Perhaps.  I'm trying to keep it close to RFC 7170, as minimal changes may help it get published more quickly.

> 3) If we explicitly mention that password authentication can be used for pin operations and thus multiple round trips are supported - should we also allow passing user prompt and other pin related things?

  Yes.  The Basic-Password-Auth-Req TLV already allows for a prompt field, so that seems to be sufficient.

> 4) Since multiple roundtrips of password authentication are allowed - we should specify what exactly to consider a "completion" of it since it induces the finalization flow

  The completion should just be sending a Result TLV?

  The final paragraph of 3.3.2 says:

Multiple round trips of password authentication requests and responses MAY be used to support some "housecleaning" functions such as a password or pin change before a user is authenticated.

  Perhaps it's best to add some clarifying text:


* the EAP server decides (somehow, implementation-defined) when it should stop sending Basic-Password-Auth-Req

* there is a limit on the number of round trips which can be made

* Using this method to change passwords is NOT RECOMMENDED

> 5) Regarding "3.3.3.  EAP-MSCHAPv2" I would suggest to explicitly mention the document where EAP-MSCHAPv2 MSK 16-octets blocks order is defined (the order that is different from EAP-FAST-MSCHAPv2). We should also mention that in PEAP and maybe some other protocols the original (non EAP-FAST-MSCHAPv2) order is used.

  I can add a reference to https://datatracker.ietf.org/doc/html/draft-kamath-pppext-eap-mschapv2-02 for EAP-MSCHAPv2.

  I'm less sure that it's useful to re-iterate that PEAP uses the "normal" version.  I think it's best to just discuss TEAP, and how TEAP is different from everything else.

  Also for basic password, the  Basic-Password-Auth-Req TLV is *not* marked mandatory.  It should probably be marked mandatory to match the use of the "mandatory" bit:

If the peer wishes to participate in password
authentication, then it responds with a Basic-Password-Auth-Resp TLV
as defined in Section 4.2.15 that contains the username and password.
If it does not wish to perform password authentication, then it
responds with a NAK TLV indicating the rejection of the Basic-Password-Auth-Req TLV.

  Whereas the later text in Section 4.2 says:

The mandatory bit in a TLV indicates whether
support of the TLV is required.  If the peer or server does not
support a TLV marked mandatory, then it MUST send a NAK TLV in the
response, and all the other TLVs in the message MUST be ignored.

 It MUST NOT send a NAK
TLV for a TLV that is not marked mandatory


  Alan DeKok.