Re: SCRAM with channel binding downgrade attack

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Postgres hackers <pgsql-hackers(at)postgresql(dot)org>
Cc: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Robert Haas <robertmhaas(at)gmail(dot)com>, Magnus Hagander <magnus(at)hagander(dot)net>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>, Stephen Frost <sfrost(at)snowman(dot)net>, Bruce Momjian <bruce(at)momjian(dot)us>
Subject: Re: SCRAM with channel binding downgrade attack
Date: 2018-05-28 01:23:28
Message-ID: 20180528012328.GA5093@paquier.xyz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers pgsql-www

On Sat, May 26, 2018 at 11:42:38PM +0900, Michael Paquier wrote:
> On Sat, May 26, 2018 at 09:08:50AM -0400, Bruce Momjian wrote:
>> On Sat, May 26, 2018 at 08:32:20AM +0900, Michael Paquier wrote:
>>>
>>> OK, I can live with that as well. So we'll go in the direction of two
>>> parameters then:
>>> - scram_channel_binding, which can use "prefer" (default), "require" or
>>> "disable".
>>> - scram_channel_binding_name, developer option to choose the type of
>>> channel binding, with "tls-unique" (default) and "tls-server-end-point".
>>> We could also remove the prefix "scram_". Ideas of names are welcome.
>>
>> scram_channel_binding_method?
>
> Or scram_channel_binding_type. The first sentence of RFC 5929 uses this
> term.

I just went with scram_channel_binding_mode (require, disable and
prefer) and scram_channel_binding_type as parameter names, in the shape
of the attached patch.

>> Do we really know someone is going to want to actually specify the
>> channel binding type? If it is only testing, maybe we don't need to
>> document this parameter.
>
> Keeping everything documented is useful as well for new developers, as
> they need to guess less from the code. So I would prefer seeing both
> connection parameters documented, and mentioning directly in the docs if
> a parameter is for developers or not.

So done this way. Feel free to pick me up at PGcon this week if you
wish to discuss this issue. Docs, tests and a commit message are
added.
--
Michael

Attachment Content-Type Size
0001-Rework-scram_channel_binding-to-protect-from-downgra.patch text/x-diff 24.0 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Yuriy Zhuravlev 2018-05-28 02:30:32 Re: Is a modern build system acceptable for older platforms
Previous Message Peter Geoghegan 2018-05-28 00:46:33 Re: SP-GiST failing to complete SP-GiST index build

Browse pgsql-www by date

  From Date Subject
Next Message Heikki Linnakangas 2018-05-28 09:00:33 Re: SCRAM with channel binding downgrade attack
Previous Message Michael Paquier 2018-05-26 14:42:38 Re: SCRAM with channel binding downgrade attack