Re: [Acme] Signature misuse vulnerability in draft-barnes-acme-04
yan <yan@eff.org> Thu, 13 August 2015 01:58 UTC
Return-Path: <yan@eff.org>
X-Original-To: acme@ietfa.amsl.com
Delivered-To: acme@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 510FD1B2F20 for <acme@ietfa.amsl.com>; Wed, 12 Aug 2015 18:58:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.012
X-Spam-Level:
X-Spam-Status: No, score=-7.012 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_HELO_PASS=-0.001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 jvCdVFBE-i6v for <acme@ietfa.amsl.com>; Wed, 12 Aug 2015 18:58:04 -0700 (PDT)
Received: from mail2.eff.org (mail2.eff.org [173.239.79.204]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 75B411B2F1E for <acme@ietf.org>; Wed, 12 Aug 2015 18:58:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=eff.org; s=mail2; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:References:Subject:CC:To:MIME-Version:From:Date:Message-ID; bh=ObGImkjqWExUnyNTQinQ5K4TSXqfdsPOZ8zZZEDbuLw=; b=Qs2kf4xtSL03nLmoTqy2jKh2eUmT14+M/WYkDqMkgTj1N/7D9Z5QEjX/7iQAIoiGjbU6OlM1bmeRf2NJd0c7+gMfb5Fn2QfE2hWeZYeQCcQkavGkZJvLGPVhmIOGCgHZXynqT4gmGRRxw69BCvtMDn+HRKVObS7hNyGtqCx/QnY=;
Received: ; Wed, 12 Aug 2015 18:58:04 -0700
Message-ID: <55CBF9AD.4040401@eff.org>
Date: Wed, 12 Aug 2015 18:58:05 -0700
From: yan <yan@eff.org>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.10; rv:31.0) Gecko/20100101 Thunderbird/31.7.0
MIME-Version: 1.0
To: Andrew Ayer <agwa@andrewayer.name>
References: <20150811085205.bbcd37b3b0bb0482f6522b1a@andrewayer.name> <CAL02cgRf2M0Gkqymif-=rmNG0v9hhaMC2SBiXf-n5aYiRKBnmQ@mail.gmail.com> <55CBB2D8.2080504@eff.org> <20150812161617.c777cb5bff60681afa43bedb@andrewayer.name>
In-Reply-To: <20150812161617.c777cb5bff60681afa43bedb@andrewayer.name>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
Archived-At: <http://mailarchive.ietf.org/arch/msg/acme/6MjQBNq9_HfegywroLshvbpmT_o>
Cc: Richard Barnes <rlb@ipv.sx>, "acme@ietf.org" <acme@ietf.org>
Subject: Re: [Acme] Signature misuse vulnerability in draft-barnes-acme-04
X-BeenThere: acme@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Automated Certificate Management Environment <acme.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/acme>, <mailto:acme-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/acme/>
List-Post: <mailto:acme@ietf.org>
List-Help: <mailto:acme-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/acme>, <mailto:acme-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 13 Aug 2015 01:58:07 -0000
On 8/12/15 4:16 PM, Andrew Ayer wrote: > On Wed, 12 Aug 2015 13:55:52 -0700 > yan <yan@eff.org> wrote: > >> On 8/11/15 10:52 PM, Richard Barnes wrote: >> >>> Smallest diff change from the current document would be simply to >>> explicitly require validation value bound to account key that >>> created it -- not the one the signs the response. Since the attack >>> requires that the attacker change keys (using recovery) after >>> receiving the token, the attack only works if the validation is >>> done against the new public key. This option introduces >>> non-trivial implementation complexity, though, since the server now >>> has to remember what key signed the new-authorization request that >>> caused the challenges to be issued. >> >> Doesn't it already have to remember this? The current instructions >> for verifying a DNS challenge says: "1. Verify the validation JWS >> using the account key for which this challenge was issued." >> >> Since the challenge was issued before the attacker initiated account >> recovery to do the key change, the wording implies that the server >> remembers the original key at validation time. > > That wording is bound to trip up implementers - in fact, a quick look > at the Boulder source indicates it validates against the current account > key, not the account key at the time the challenge was issued[1] Consider us tripped. :) > > I think this would be a pretty fragile way to work around what is > fundamentally a crypto problem. Agree, I like Barnes' proposal above. > > Also, only DVSNI and DNS currently use this language - the wording for > the Simple HTTP challenge is "Verify that the body of the response is > [...] signed with the client's account key". The wording should > probably be clarified and made consistent among the challenges. I see James is already fixing this: https://github.com/letsencrypt/acme-spec/pull/217/files. Thanks, Yan > > Regards, > Andrew > > [1] > https://github.com/letsencrypt/boulder/blob/7eae93873d394c359c371621c4e9064c9e780f19/va/validation-authority.go#L381, > which is ultimately called from > https://github.com/letsencrypt/boulder/blob/7eae93873d394c359c371621c4e9064c9e780f19/ra/registration-authority.go#L380, > where the account key comes from the registration object. > > _______________________________________________ > Acme mailing list > Acme@ietf.org > https://www.ietf.org/mailman/listinfo/acme >
- [Acme] Signature misuse vulnerability in draft-ba… Andrew Ayer
- Re: [Acme] Signature misuse vulnerability in draf… Jacob Hoffman-Andrews
- Re: [Acme] Signature misuse vulnerability in draf… Richard Barnes
- Re: [Acme] Signature misuse vulnerability in draf… yan
- Re: [Acme] Signature misuse vulnerability in draf… Richard Barnes
- Re: [Acme] Signature misuse vulnerability in draf… Andrew Ayer
- Re: [Acme] Signature misuse vulnerability in draf… Andrew Ayer
- Re: [Acme] Signature misuse vulnerability in draf… yan
- Re: [Acme] Signature misuse vulnerability in draf… Richard Barnes
- Re: [Acme] Signature misuse vulnerability in draf… Eric Mill
- Re: [Acme] Signature misuse vulnerability in draf… Richard Barnes
- Re: [Acme] Signature misuse vulnerability in draf… Eric Mill
- Re: [Acme] Signature misuse vulnerability in draf… Rob Stradling
- Re: [Acme] Signature misuse vulnerability in draf… Stephen Farrell
- Re: [Acme] Signature misuse vulnerability in draf… Phillip Hallam-Baker
- Re: [Acme] Signature misuse vulnerability in draf… Ilari Liusvaara
- Re: [Acme] Signature misuse vulnerability in draf… Phillip Hallam-Baker
- Re: [Acme] Signature misuse vulnerability in draf… Richard Barnes
- Re: [Acme] Signature misuse vulnerability in draf… Simon Josefsson
- Re: [Acme] Signature misuse vulnerability in draf… Jacob Hoffman-Andrews
- Re: [Acme] Signature misuse vulnerability in draf… Tony Arcieri
- Re: [Acme] Signature misuse vulnerability in draf… Phillip Hallam-Baker
- Re: [Acme] Signature misuse vulnerability in draf… Tony Arcieri
- Re: [Acme] Signature misuse vulnerability in draf… Simon Josefsson
- Re: [Acme] Signature misuse vulnerability in draf… Phillip Hallam-Baker