Re: [Emu] POST WGLC Comments draft-ietf-emu-eap-tls13

"Owen Friel (ofriel)" <ofriel@cisco.com> Wed, 18 September 2019 21:42 UTC

Return-Path: <ofriel@cisco.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 EDC4D120052; Wed, 18 Sep 2019 14:42:14 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.5
X-Spam-Level:
X-Spam-Status: No, score=-14.5 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.com header.b=JMXAjcug; dkim=pass (1024-bit key) header.d=cisco.onmicrosoft.com header.b=FpCG/B9O
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 JNa5jSvYHtVU; Wed, 18 Sep 2019 14:42:12 -0700 (PDT)
Received: from alln-iport-3.cisco.com (alln-iport-3.cisco.com [173.37.142.90]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2FB46120043; Wed, 18 Sep 2019 14:42:12 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=5434; q=dns/txt; s=iport; t=1568842932; x=1570052532; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=6UzfB5oLh/QqTHQpcRO/f943/UDRr+y9yd1wPnX9QVM=; b=JMXAjcugoSkLF0ClJQ0+F/3HwFVw5sMGBYAi5HWayPDQflj1rlegGg5l 8179y5nSXPPMrAfK9Xop5OME/Ihhhd/84FD4GTT4GCjLkUQRqMWnx3xbT J8dnAN2wWSHPSSt2Gl1S/782SCGa3vXF5MHoNCU+90q8JHhUOE7XTy/fm k=;
IronPort-PHdr: 9a23:070jLRZ+/oX1pbNej3yL6OP/LSx94ef9IxIV55w7irlHbqWk+dH4MVfC4el20Q6bRp3VvvRDjeee87vtX2AN+96giDgDa9QNMn1NksAKh0olCc+BB1f8KavtYTY7EcBqX15+9Hb9Ok9QS47z
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0AeAADCo4Jd/5ldJa1cCRkBAQEBAQEBAQEBAQEHAQEBAQEBgVYBAQEBAQELAYFEUANtViAECyoKh18DinuCXJdzglIDVAkBAQEMAQEnBgIBAYQ/AoMDIzcGDgIDAQMCAwEBBAEBAQIBBQRthS0MhUoBAQEBAgESKAYBATcBCwQCAQgRBAEBARgGEDIdCAIEAQ0FCBqDAYFqAw4PAQ6lPAKBOIhhgiWCfQEBBYEzAYNRGIIXAwaBNAGJP4IsHRiBQD+BEUaCTD6CYQEBAgGBNBQGEk2CboImrBNuCoIihwWOGpkhjhCID5B7AgQCBAUCDgEBBYFoIkSBFHAVgydQEBSBTgkag0+FFIU/cwEJgR+NHYENAYEiAQE
X-IronPort-AV: E=Sophos;i="5.64,522,1559520000"; d="scan'208";a="340477279"
Received: from rcdn-core-2.cisco.com ([173.37.93.153]) by alln-iport-3.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 18 Sep 2019 21:42:11 +0000
Received: from XCH-RCD-009.cisco.com (xch-rcd-009.cisco.com [173.37.102.19]) by rcdn-core-2.cisco.com (8.15.2/8.15.2) with ESMTPS id x8ILgBBi021469 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 18 Sep 2019 21:42:11 GMT
Received: from xhs-rcd-002.cisco.com (173.37.227.247) by XCH-RCD-009.cisco.com (173.37.102.19) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 18 Sep 2019 16:42:10 -0500
Received: from xhs-rtp-001.cisco.com (64.101.210.228) by xhs-rcd-002.cisco.com (173.37.227.247) with Microsoft SMTP Server (TLS) id 15.0.1473.3; Wed, 18 Sep 2019 16:42:09 -0500
Received: from NAM01-SN1-obe.outbound.protection.outlook.com (64.101.32.56) by xhs-rtp-001.cisco.com (64.101.210.228) with Microsoft SMTP Server (TLS) id 15.0.1473.3 via Frontend Transport; Wed, 18 Sep 2019 17:42:10 -0400
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Ty2hRIuFDnyT4BYpard/ljKhcfxYAvYAu0D7b/5pz+OjPuqFO8MB0AVqeY4PN2dJvejyPQRqKUhBrDflnw0lbkZcUOBkRzveloG+Ii6n3Ydy/PHqGA1f9DoXDOhCrI86B8lXAmy7otq/iFcOn4vH9lzC0AE3CWeqnrnvZx7HAT655lbSuFpLGWyhROTxDc03x7auxTpdfrDfEKufN14GyWI85x0zJCyOyyT3frKEvdkav57eY0YyjTrWyiWgJWbHSzd6asnJXoojtU9WMD1se0LoG1SgChwwBgzOoFVXO5XydWBerJvVHv67yo8hJiUfENgHaCDMCgsJTMxFVEGN9g==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vcWzQ/kJAgaxUL50ySfjzTffOs+iX9cueA+qfugNzXo=; b=nLBfeNpxYKwX++KtbNduK7Q2dvpK3KBbqDYDv/xmldPcr3YsjzLYvHzlr4f2wVoHVoyDwgZuadXMyU270XfU8n8U0fIGCK6+mdN6qf4OQkmRP8x1FPgHzEB2+jQ+8e/rQmzTTuu4/EQX6opk3MECcP2NJm9+SgGWWNuhNiC+GDPFUdKvVeW8hKfYMNrlfLOK0/L8t4D8FwN5azUSiB+sQahu/NH7UYcthwG1dL2xbnoIVMmRrhHy7XVHFJO/QSlEl7Gq8cSa6oYIJNK72jbwx5Do7C4yJHIDozJX6ESePcliRy1cIHxgqQ3V6dfxnp4nvTqAcLdKn2/g9Eya0zfgfQ==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cisco.com; dmarc=pass action=none header.from=cisco.com; dkim=pass header.d=cisco.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cisco.onmicrosoft.com; s=selector2-cisco-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=vcWzQ/kJAgaxUL50ySfjzTffOs+iX9cueA+qfugNzXo=; b=FpCG/B9OimR3b0C7M41rKw5BJO3Y0oZz83A8qGG6/LxbTO+UPvj9i1exifWSj7/YUPjGhBI0PFl9jz1zVP508YgPgAj+y9jZuFl3GKFxCv00xooyTVkopfNafZRhic5OMN+X2/aRQf93b9pAsKV/gw4qirtJzKPGLZOFKosUSsI=
Received: from CY4PR1101MB2278.namprd11.prod.outlook.com (10.172.76.13) by CY4PR1101MB2312.namprd11.prod.outlook.com (10.172.78.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2263.26; Wed, 18 Sep 2019 21:42:08 +0000
Received: from CY4PR1101MB2278.namprd11.prod.outlook.com ([fe80::686a:2f6e:32c2:5127]) by CY4PR1101MB2278.namprd11.prod.outlook.com ([fe80::686a:2f6e:32c2:5127%9]) with mapi id 15.20.2263.023; Wed, 18 Sep 2019 21:42:08 +0000
From: "Owen Friel (ofriel)" <ofriel@cisco.com>
To: Alan DeKok <aland@deployingradius.com>, John Mattsson <john.mattsson@ericsson.com>
CC: "draft-ietf-emu-eap-tls13@ietf.org" <draft-ietf-emu-eap-tls13@ietf.org>, EMU WG <emu@ietf.org>
Thread-Topic: [Emu] POST WGLC Comments draft-ietf-emu-eap-tls13
Thread-Index: AdVKJoKyKr1G5+9hQuKLAEK5rLYqPgfSdnOQAABeFAAABkCJgP//55mA//bAJjCAEoZ6AIAAJXeA///jpID//4j+YA==
Date: Wed, 18 Sep 2019 21:42:08 +0000
Message-ID: <CY4PR1101MB2278103D6B59896837905DC2DB8E0@CY4PR1101MB2278.namprd11.prod.outlook.com>
References: <7828_1564869242_5D46027A_7828_348_1_02e001d54a45$e92ae900$bb80bb00$@augustcellars.com> <20b118932a4843b6b88e605799fafea8@aalto.fi> <211AD83C-D111-4EEB-AAF0-D9B5E521F4CF@deployingradius.com> <8F355C6F-DF1E-4E03-B75E-0F1D2508B9D4@ericsson.com> <246280B8-6E5C-484B-95BD-9C940C98C507@deployingradius.com> <CY4PR1101MB22781AB8C8982ACF99B61544DB8E0@CY4PR1101MB2278.namprd11.prod.outlook.com> <DAE24683-2B66-40F1-AFC6-77250113B204@deployingradius.com> <1FD26215-86AF-4C64-83ED-AB1D67D1937B@ericsson.com> <DB61AD67-77D5-4EF9-9207-4CD20C3B61C7@deployingradius.com>
In-Reply-To: <DB61AD67-77D5-4EF9-9207-4CD20C3B61C7@deployingradius.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
authentication-results: spf=none (sender IP is ) smtp.mailfrom=ofriel@cisco.com;
x-originating-ip: [173.38.220.48]
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 4db347e1-cc64-441e-78f7-08d73c810e8f
x-microsoft-antispam: BCL:0; PCL:0; RULEID:(2390118)(7020095)(4652040)(8989299)(5600167)(711020)(4605104)(1401327)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(2017052603328)(7193020); SRVR:CY4PR1101MB2312;
x-ms-traffictypediagnostic: CY4PR1101MB2312:
x-ms-exchange-purlcount: 3
x-microsoft-antispam-prvs: <CY4PR1101MB2312EDE12F10078607E598C5DB8E0@CY4PR1101MB2312.namprd11.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:9508;
x-forefront-prvs: 01644DCF4A
x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(136003)(376002)(396003)(366004)(39860400002)(199004)(189003)(13464003)(6506007)(316002)(71200400001)(99286004)(256004)(14444005)(6246003)(446003)(476003)(4326008)(7696005)(5660300002)(6116002)(486006)(86362001)(76176011)(11346002)(71190400001)(55016002)(186003)(2906002)(9686003)(102836004)(6306002)(6436002)(33656002)(26005)(478600001)(81166006)(81156014)(8676002)(966005)(3846002)(7736002)(54906003)(64756008)(66556008)(66066001)(66446008)(229853002)(53546011)(110136005)(66476007)(76116006)(66946007)(8936002)(14454004)(305945005)(74316002)(52536014)(25786009); DIR:OUT; SFP:1101; SCL:1; SRVR:CY4PR1101MB2312; H:CY4PR1101MB2278.namprd11.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1;
received-spf: None (protection.outlook.com: cisco.com does not designate permitted sender hosts)
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam-message-info: On70GtNLSTaIdo85v1o49bqHPmwVx3uvEK1kZCQfpaYmvCg6t1NCiNnAW46l38TmHtCZx3x74YdjR/6oIlcoP/mkqvud/ltAzRh+20RKd2TvBPoaDmY7QJdygk7tx7851ZB04+iRnINdpFD+VmLbdTOxsxcRGar+6M9uDvKBC70vtuc5hIgACapkUjN/A3hrCSawscWJPZpmN/9B0rcVdSqItPMEc+9Ar9ym0b4L4N7gANIJSwZXirL70ZhRIw6bkh/ji2Gq16fRDXIlyCIkOb+7K5DUr9JJk7xoTH6AojrwHfjByakX+gC2IcJxvAevFsk1n1BJEwA4021uSIoFDlxlLVHVE0Tvzp31942Z7qt7fI/wTg878cIHm7v95G5CAlaHeBAghDh4qymBuycrntalZh3Q2c9xKe9aH2FpImo=
x-ms-exchange-transport-forked: True
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-Network-Message-Id: 4db347e1-cc64-441e-78f7-08d73c810e8f
X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Sep 2019 21:42:08.6042 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5ae1af62-9505-4097-a69a-c1553ef7840e
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: FZlkE+nJCdKtVh5xFFqI6gSGCExNG9RNOqKtdAhba1VC231/mVAoUEMXrscyvgc0cBL2TA/qMmgAcZ/5RyB56w==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY4PR1101MB2312
X-OriginatorOrg: cisco.com
X-Outbound-SMTP-Client: 173.37.102.19, xch-rcd-009.cisco.com
X-Outbound-Node: rcdn-core-2.cisco.com
Archived-At: <https://mailarchive.ietf.org/arch/msg/emu/k9JdSHSIvj7NlW4lwNmV2TFumrY>
Subject: Re: [Emu] POST WGLC Comments draft-ietf-emu-eap-tls13
X-BeenThere: emu@ietf.org
X-Mailman-Version: 2.1.29
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: Wed, 18 Sep 2019 21:42:15 -0000


> -----Original Message-----
> From: Alan DeKok <aland@deployingradius.com>
> Sent: 18 September 2019 14:40
> To: John Mattsson <john.mattsson@ericsson.com>
> Cc: Owen Friel (ofriel) <ofriel@cisco.com>; draft-ietf-emu-eap-
> tls13@ietf.org; EMU WG <emu@ietf.org>
> Subject: Re: [Emu] POST WGLC Comments draft-ietf-emu-eap-tls13
> 
> 
> 
> > On Sep 18, 2019, at 9:21 AM, John Mattsson
> <john.mattsson@ericsson.com> wrote:
> >
> > If I understand you correctly Alan, your implementation would have
> different databases (one resumption DB and one external PSK DB) and you
> do not want to do two database lookups.
> 
>   It's more about what *can* be done.  RFC 8446 Section 8.1 and 8.2 talk
> about using multiple DBs, too.
> 
> > The format of the PSKidentities is free for the deployment to decide upon
> and the resumption PSKs can be completely be determined by the EAP-TLS
> implementation. Your implementation could for example put a message
> authentication code inside the PSK identity. The MAC would be calculated
> with a symmetric key the EAP server has randomly generated by itself. I think
> that would solve your problem.
> 
>   I suggest giving guidance to implementors.  Otherwise the issue is open to
> implementation-defined behaviour, which is problematic.

Giving some implementation guidance seems appropriate here. Naively, one could envisage the implementation simply having a DB table for extern PSKs and a table that holds NewSessionTickets. An implementation could simply check the extern PSK table using the PskIdentity.identity, and if no match is found then check the NewSessionTickets table. The default OpenSSL NSK ticketId is 32 bytes long https://github.com/openssl/openssl/blob/558ea84743918f7a93bfbfc259f86ad1fa4c8de9/include/openssl/ssl3.h#L127 so something has gone seriously wrong if there is a clash (poor randoms, etc.). An additional layer of protection is provided by the PskBinderEntry as this is a HMAC derived using the PSK as one input, so the server even if there happened to be an identity clash, the binders will not match.

Implementations should also note https://tools.ietf.org/html/rfc8446#appendix-E.6. 

> 
>   If PSKs are used only for resumption, the the format doesn't matter.  If PSKs
> are used for both authentication *and* resumption, then I strongly
> recommend giving guidance.
> 
>   For example, RFC 8446 Section 4.1.2 says:
> 
>       struct {
>           opaque identity<1..2^16-1>;
>           uint32 obfuscated_ticket_age;
>       } PskIdentity;
> 
>   i.e. the PSK identity is an opaque binary string.  How is the user supposed to
> enter a binary string into a "username" field in their GUI?  What are the
> recommended formats?
> 
>   If the ClientHello isn't encrypted, then the PSK is visible to anyone (I
> believe).  

Well, more precisely, the PSK identity is visible in the ClientHello, not the actual PSK of course.

And the PSK *must not* be a user-manageable string such as the
> NAI.  On the other hand, if the PSK is sent after encryption begins, then the
> PSK *should* be a user-manageable string such as an NAI.

https://tools.ietf.org/html/rfc8446#section-2.2 also states:

"   Note:  When using an out-of-band provisioned pre-shared secret, a
      critical consideration is using sufficient entropy during the key
      generation, as discussed in [RFC4086].  Deriving a shared secret
      from a password or other low-entropy sources is not secure.  A
      low-entropy secret, or password, is subject to dictionary attacks
      based on the PSK binder.  The specified PSK authentication is not
      a strong password-based authenticated key exchange even when used
      with Diffie-Hellman key establishment.  Specifically, it does not
      prevent an attacker that can observe the handshake from performing
      a brute-force attack on the password/pre-shared key. "

so TLS-PSK is not suitable for a user entered low entropy password. We need a PAKE for that (c.f. the ongoing CFRG PAKE assessment)


> 
>   I see it being useful for EAP-TLS to allow PSK authentication.  I just want to
> be sure I know what that means, and what the impacts are.

There are some use cases Eliot and I are looking at related to IoT onboarding where a TLS-PSK authentication has definite value, and we really don't want to see this avenue closed off in EAP. Happy to provide any suggestions on Implementation Notes to your draft.

> 
> > I do not see how an attacker could do anything..... an attacker can
> definitely reuse any PSK identity, but would not have the corresponding PSK
> and the ClientHello would therefore not be accepted. The worst thing an
> attacker could do is to replay a ClientHello, then the handshake would fail
> then the EAP server verifies the Finished message.

And note https://tools.ietf.org/html/rfc8446#appendix-E.6 where there is guidance on how to protect from an attacker determining a valid PSK identity.
> 
>   I agree.  My larger point was that in the absence of guidance, it's impossible
> to know what to do with a PSK identity.
> 
> > I don't see why this would be more of a problem in EAP-TLS with TLS 1.3
> that in any other application of EAP-TLS.
> 
>   I agree.
> 
>   Alan DeKok.