Re: [OAUTH-WG] authorization code injection - draft-ietf-oauth-security-topics-13

Aaron Parecki <aaron@parecki.com> Mon, 25 November 2019 15:22 UTC

Return-Path: <aaron@parecki.com>
X-Original-To: oauth@ietfa.amsl.com
Delivered-To: oauth@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 58C3312004D for <oauth@ietfa.amsl.com>; Mon, 25 Nov 2019 07:22:13 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=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=parecki-com.20150623.gappssmtp.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 mXIOcNZVWiy1 for <oauth@ietfa.amsl.com>; Mon, 25 Nov 2019 07:22:11 -0800 (PST)
Received: from mail-io1-xd2e.google.com (mail-io1-xd2e.google.com [IPv6:2607:f8b0:4864:20::d2e]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4A5ED120989 for <oauth@ietf.org>; Mon, 25 Nov 2019 07:22:11 -0800 (PST)
Received: by mail-io1-xd2e.google.com with SMTP id k13so16614517ioa.9 for <oauth@ietf.org>; Mon, 25 Nov 2019 07:22:11 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=parecki-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=KuW1n7FpnPJvS4RlC3lPFogpR0C7ax/nFr2SO1pEtHs=; b=gDmrS9AAExGcjOc6Wnhd58udV3pH51CcE0AEUdTh4UVysf5Ql1dpuxyMd/Bwhyirbt 0Zx0sXuWBvh2u9Wvd94ITkn1ngI5ZGO08rjAVYFFL3Y2gvD323V7kt7bGkvG6nUqLilx C+DVSbqLV7qiia/yefWArjhStDsOtf/RtVV7+zzgIngsVSaaAOD5MzUh4d8vLpIM83/W 48cnwekjMksX+pmg+ZsClvjVvU+N/G9tEimwk/l0BHk/K9nLM55/6buSWSpBLXbpDmIH TAzR443fSAsrSdL9e3XKdZI9/iBnTKRhgxSL02hSsoDCzNKXinSmq5sK2K86jlBrdLeh paTQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=KuW1n7FpnPJvS4RlC3lPFogpR0C7ax/nFr2SO1pEtHs=; b=kJum/rykyYrIS7EDaSdYzJUS5AU6of/WDClHWEsx9DS2IULwCKfHt72XwD9XpsUZjp w/Z8X8klCVx7EZzaUeUsAelenRc+MyIYE/A4CU2tSIMGKzaoaXqicrEN9Ai5+oqfBGmp MjH3zjhZA4v1DAvDaCOcWOS7CE5Xylvdo6afc0cKtDXmhHQdXqukiJFCixsApQ2KlDYb dnsyS9E7MipvNilZ/AznlRsnlHAHuLyOiJEduOL607fyCOMjaCsV40mODADHlwpZNBGR WNIJGerDHS4YreFQBuoxtZ2Qla1pohVFjNN7pXFPG5N2rdFRT2EUn8fI97VGhU4qWGKb TMTg==
X-Gm-Message-State: APjAAAUzbHomc3MSbN80oEwqod8SK+ND7/ObRGVpWErD61XW1shqHsTJ mIw9CE+imo1682aL4fHanLQQ5MBJP5o=
X-Google-Smtp-Source: APXvYqzwjKJBzbD7iGmm1naxq7SYj+N7GcgufVhf+uW/hFOfJCjMXxlspGgx2fNWk66SwycDynqjzA==
X-Received: by 2002:a6b:fc09:: with SMTP id r9mr27628080ioh.176.1574695330148; Mon, 25 Nov 2019 07:22:10 -0800 (PST)
Received: from mail-io1-f51.google.com (mail-io1-f51.google.com. [209.85.166.51]) by smtp.gmail.com with ESMTPSA id k18sm1943780ios.31.2019.11.25.07.22.08 for <oauth@ietf.org> (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 25 Nov 2019 07:22:09 -0800 (PST)
Received: by mail-io1-f51.google.com with SMTP id u24so14921584iob.5 for <oauth@ietf.org>; Mon, 25 Nov 2019 07:22:08 -0800 (PST)
X-Received: by 2002:a02:a995:: with SMTP id q21mr29162655jam.27.1574695328726; Mon, 25 Nov 2019 07:22:08 -0800 (PST)
MIME-Version: 1.0
References: <CAGBSGjqpXjXDMH-YMap5kEeWg4qA0R447nNK9zjLUP+mJ=XT2w@mail.gmail.com> <97C1CF0C-451E-430F-8B35-AF8B5A4D2E2D@lodderstedt.net> <CAGBSGjpOoTKEqHEgpGP3zn4B1tzQ6Ez2e2VMANn1wn1x6bxv5w@mail.gmail.com> <2e928a72-e058-5744-f604-ccc55625164e@danielfett.de>
In-Reply-To: <2e928a72-e058-5744-f604-ccc55625164e@danielfett.de>
From: Aaron Parecki <aaron@parecki.com>
Date: Mon, 25 Nov 2019 07:21:57 -0800
X-Gmail-Original-Message-ID: <CAGBSGjqPNiyKy-X15jP+xi4=uCMnKc_KeC8CpvPrM42_mpK51Q@mail.gmail.com>
Message-ID: <CAGBSGjqPNiyKy-X15jP+xi4=uCMnKc_KeC8CpvPrM42_mpK51Q@mail.gmail.com>
To: Daniel Fett <fett@danielfett.de>
Cc: oauth@ietf.org
Content-Type: multipart/alternative; boundary="000000000000b2c3c405982d533b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/oauth/bcKjVbCoUOcbr0raxFtXQGfdR80>
Subject: Re: [OAUTH-WG] authorization code injection - draft-ietf-oauth-security-topics-13
X-BeenThere: oauth@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: OAUTH WG <oauth.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/oauth>, <mailto:oauth-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/oauth/>
List-Post: <mailto:oauth@ietf.org>
List-Help: <mailto:oauth-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/oauth>, <mailto:oauth-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Nov 2019 15:22:13 -0000

Works for me, sounds like that clears up the confusion I am worried about.

Aaron


On Mon, Nov 25, 2019 at 7:12 AM Daniel Fett <fett@danielfett.de> wrote:

> Am 16.11.19 um 14:28 schrieb Aaron Parecki:
>
> Thanks for the reply. You're right, PKCE requires maintaining
> application state as well, and does solve the main worry I have.
>
> However I think there is still something more. I guess my concern is
> around the specific wording:
>
>
> in this case, 'state' may be used again for its original purpose...
>
> My concern is if people see this recommendation, (even though it's
> clarified that it only applies if the authorization server supports
> PKCE), they may revert back to static "state" values *regardless* of
> whether the server supports PKCE, opening up a security hole again.
> This is especially problematic because of the way PKCE works where
> clients have no indication as to whether the server supports PKCE if
> the whole flow is successful.
>
> I guess I just would rather not mention the possibility of using
> static state values again.
>
> I would like to keep this note. We could change the wording, however. How
> about this:
>
>
> "If PKCE [RFC7636] is used by the client and the client *has ensured*
> that the authorization server supports PKCE, the client MAY opt to not use
> "state" for CSRF protection".
>
>
> -Daniel
> _______________________________________________
> OAuth mailing list
> OAuth@ietf.org
> https://www.ietf.org/mailman/listinfo/oauth
>
-- 
----
Aaron Parecki
aaronparecki.com
@aaronpk <http://twitter.com/aaronpk>