Re: [jose] Use of ECDH-ES in JWE

Jim Schaad <ietf@augustcellars.com> Wed, 22 February 2017 03:33 UTC

Return-Path: <ietf@augustcellars.com>
X-Original-To: jose@ietfa.amsl.com
Delivered-To: jose@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id DD8C8129538 for <jose@ietfa.amsl.com>; Tue, 21 Feb 2017 19:33:42 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RP_MATCHES_RCVD=-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=augustcellars.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 ypxZxX2DHLJP for <jose@ietfa.amsl.com>; Tue, 21 Feb 2017 19:33:40 -0800 (PST)
Received: from mail4.augustcellars.com (augustcellars.com [50.45.239.150]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 8E66F129560 for <jose@ietf.org>; Tue, 21 Feb 2017 19:33:40 -0800 (PST)
Content-Type: multipart/alternative; boundary="----=_NextPart_000_03BF_01D28C79.4C6B0820"
Content-Language: en-us
DKIM-Signature: v=1; a=rsa-sha256; d=augustcellars.com; s=winery; c=simple/simple; t=1487734417; h=from:subject:to:date:message-id; bh=jC3HaKfMW/MgkEYkd+XAYJM18w5INAC6ISublvqseX4=; b=hMJ33bGRThXt0MVOYcEaKNZhb6pFImhhjlMGmzpHmPwI4KbrgaKbMjaGyy60pPIgHlYVPn6rSHG oa4J3iHhSDipvFcqijA2OVpKy+ZLoO9SyFSSF0xR5bhen66EOLAm8QAxcrYiihX7T7sDNE2mLFait E14BZh2VsBN9M4dXjhVuTGQ8x+qugruZgqbJZw9Y9jZfuQOpmsavCZRNQsWByLoYhhxlAjq3RG26t 6nhZxLf887fnifVuqBRdh/g8VhWQqWrNaIik5WUGdJTGmxqXpKjUXVdoY0ZeIAjJoLHC7QI/QPvFC sn5QdGdI0ggXC/dhfNfq9SsbBQswVBLky/Iw==
Received: from mail2.augustcellars.com (192.168.1.201) by mail4.augustcellars.com (192.168.1.153) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 21 Feb 2017 19:33:36 -0800
Received: from hebrews (24.21.96.37) by mail2.augustcellars.com (192.168.0.56) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Tue, 21 Feb 2017 19:31:22 -0800
From: Jim Schaad <ietf@augustcellars.com>
To: 'Brian Campbell' <bcampbell@pingidentity.com>, 'John Bradley' <ve7jtb@ve7jtb.com>
References: <7465DFB4-1F4E-4C8C-9BF9-6534EEC0AB1D@adobe.com> <9f370d1c-8258-7fbe-fd46-f8a7c4786900@connect2id.com> <24F1FEB8-5416-431A-AB7B-AC5C4B1D6CD1@adobe.com> <9DD23B00-17B0-4364-A9E5-FD4AA21F3648@ve7jtb.com> <CA+k3eCRVzLHhKfrgdDBgCFs_Q9Lt4-6cKXA-eU3wMzaa4O7QBw@mail.gmail.com>
In-Reply-To: <CA+k3eCRVzLHhKfrgdDBgCFs_Q9Lt4-6cKXA-eU3wMzaa4O7QBw@mail.gmail.com>
Date: Tue, 21 Feb 2017 19:32:49 -0800
Message-ID: <03be01d28cbc$5a8aecc0$0fa0c640$@augustcellars.com>
MIME-Version: 1.0
X-Mailer: Microsoft Outlook 16.0
Thread-Index: AQEOtRYAR38569LYKMnuGCxXT/A/RwIWlxfDAb9zTloBgQpM0wI58RhJor89BQA=
X-Originating-IP: [24.21.96.37]
Archived-At: <https://mailarchive.ietf.org/arch/msg/jose/abAecwaVxg4Mj4Kw1qmR6_6SBao>
Cc: 'Antonio Sanso' <asanso@adobe.com>, jose@ietf.org, 'Vladimir Dzhuvinov' <vladimir@connect2id.com>
Subject: Re: [jose] Use of ECDH-ES in JWE
X-BeenThere: jose@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Javascript Object Signing and Encryption <jose.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/jose>, <mailto:jose-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/jose/>
List-Post: <mailto:jose@ietf.org>
List-Help: <mailto:jose-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/jose>, <mailto:jose-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 22 Feb 2017 03:33:43 -0000

I would welcome an errata even for the people that might miss it from reading the documents.  If nothing else, it gives us some hints about what things need to be dealt with in the (presumably) next revisions of the documents.

 

Jim

 

 

From: jose [mailto:jose-bounces@ietf.org] On Behalf Of Brian Campbell
Sent: Tuesday, February 21, 2017 12:23 PM
To: John Bradley <ve7jtb@ve7jtb.com>
Cc: Antonio Sanso <asanso@adobe.com>; jose@ietf.org; Vladimir Dzhuvinov <vladimir@connect2id.com>
Subject: Re: [jose] Use of ECDH-ES in JWE

 

This seems similar in nature to some of the security consideration advice in JWE https://tools.ietf.org/html/rfc7516#section-11.4 and https://tools.ietf.org/html/rfc7516#section-11.5 and JWA https://tools.ietf.org/html/rfc7518#section-8.3 and https://tools.ietf.org/html/rfc7518#section-8.4 that an average implementer (like myself) would very likely not be aware of unless some attention is called to it.

The point about people missing the errata is totally legit. But in the absence of some other way to convey it, perhaps it'd be better to have it written down as errata than not at all? Maybe Antonio would be the one to submit an errata for RFC 7518 https://www.rfc-editor.org/errata.php ?

Certification for JOSE/JWT libraries sounds interesting. Having an errata for this would serve as a reminder for at least one negative test that should be done in that, if/when it comes to pass. 

 

On Mon, Feb 13, 2017 at 8:34 AM, John Bradley <ve7jtb@ve7jtb.com <mailto:ve7jtb@ve7jtb.com> > wrote:

An errata is possible.   There is no way to update the original RFC.

The problem tends to be that most developers miss the errata when reading specs if they ever look at the specs at all.

We probably also need a more direct way to communicate this to library developers as well.

In the OIDF we are talking about developing a certification for JOSE/JWT libraries like we have for overall server implementations.

John B.



> On Feb 13, 2017, at 7:57 AM, Antonio Sanso <asanso@adobe.com <mailto:asanso@adobe.com> > wrote:
>
> hi Vladimir,
>
> thanks a lot for taking the time and verifying.
> I really think it should be mentioned somewhere.
> The problem is that Elliptic Curves are over the head of many people/developer and it should be at least
> some reference on the JOSE spec about defending against this attack.
> Said that I have so far reviewed 3 implementations and all 3 were somehow vulnerable. And counting….
>
> regards
>
> antonio
>
> On Feb 13, 2017, at 7:41 AM, Vladimir Dzhuvinov <vladimir@connect2id.com <mailto:vladimir@connect2id.com> > wrote:
>
>> Hi Antonio,
>>
>> Thank you for making us aware of this.
>>
>> I just checked the ECDH-ES section in JWA, and the curve check
>> apparently hasn't been mentioned:
>>
>> https://tools.ietf.org/html/rfc7518#section-4.6
>>
>> It's not in the security considerations either:
>>
>> https://tools.ietf.org/html/rfc7518#section-8
>>
>>
>> Vladimir
>>
>> On 09/02/17 12:39, Antonio Sanso wrote:
>>> hi all,
>>>
>>> this mail is highly inspired from a research done by Quan Nguyen [0].
>>>
>>> As he discovered and mention in his talk there is an high chance the JOSE libraries implementing ECDH-ES in JWE are vulnerable to invalid curve attack.
>>> Now I read the JWA spec and I did not find any mention that the  ephemeral public key contained in the message should be validate in order to be on the curve.
>>> Did I miss this advice in the spec or is it just missing? If it is not clear enough the outcome of the attack will be the attacker completely recover the private static key of the receiver.
>>> Quan already found a pretty well known JOSE library vulnerable to it. So did I.
>>>
>>> WDYT?
>>>
>>> regards
>>>
>>> antonio
>>>
>>> [0] https://research.google.com/pubs/pub45790.html
>>> [1] https://tools.ietf.org/html/rfc7518
>>> _______________________________________________
>>> jose mailing list
>>> jose@ietf.org <mailto:jose@ietf.org> 
>>> https://www.ietf.org/mailman/listinfo/jose
>>
>>
>> _______________________________________________
>> jose mailing list
>> jose@ietf.org <mailto:jose@ietf.org> 
>> https://www.ietf.org/mailman/listinfo/jose
>
> _______________________________________________
> jose mailing list
> jose@ietf.org <mailto:jose@ietf.org> 
> https://www.ietf.org/mailman/listinfo/jose


_______________________________________________
jose mailing list
jose@ietf.org <mailto:jose@ietf.org> 
https://www.ietf.org/mailman/listinfo/jose