On Mon, May 14, 2018 at 08:45:44PM -0400, Bruce Momjian wrote: > What TLS does is to mix the offered ciphers into the negotiation hash so > a man-in-the-middle can't pretend it doesn't support something. Could > we do something like that here?
I have to admit that I don't quite follow here, the shape of channel binding data is decided by RFC 5929, so we need to stick with it. > I have to question the value of man-in-the-middle protection that is so > easily bypassed. Well, the backend does its job, and answers based on what the client wants to do. But what you are questioning here is the handling of authentication downgrade attempts from a server by libpq, which is a different problem, larger than just channel binding as it relates as well to MD5/SCRAM interactions. For example, it is perfectly possible to implement downgrade protections for any drivers which speak the protocol, like JDBC, even with a v11 backend. -- Michael
signature.asc
Description: PGP signature