doc: Add note to prevent server spoofing with SCRAM
authorMichael Paquier
Sat, 3 Jun 2023 21:44:09 +0000 (17:44 -0400)
committerMichael Paquier
Sat, 3 Jun 2023 21:44:09 +0000 (17:44 -0400)
The set of recommendations added in the documentation with this commit
helps in avoiding SCRAM exchanges with untrusted servers.

Author: Jacob Champion, Jonathan Katz
Reviewed-by: Stephen Frost, Daniel Gustafsson, Michael Paquier
Discussion: https://postgr.es/m/CAAWbhmg5Gh0JetNbQi7z0yOsdsN9YECv8GoY-QBGBBiip9+JOw@mail.gmail.com

doc/src/sgml/runtime.sgml

index dbe23db54f05b0628007fca975b4d480b41d0b02..64753d9c014ad4cbbb1719b3edd9d73c9a8d6dd9 100644 (file)
@@ -2014,6 +2014,19 @@ pg_dumpall -p 5432 | psql -d postgres -p 5433
    CA.
   
 
+  
+   To prevent server spoofing from occurring when using
+   scram-sha-256 password authentication
+   over a network, you should ensure that you connect to the server using SSL
+   and with one of the anti-spoofing methods described in the previous
+   paragraph. Additionally, the SCRAM implementation in
+   libpq cannot protect the entire authentication
+   exchange, but using the channel_binding=require connection
+   parameter provides a mitigation against server spoofing. An attacker that
+   uses a rogue server to intercept a SCRAM exchange can use offline analysis to
+   potentially determine the hashed password from the client.
+  
+
   
     To prevent spoofing with GSSAPI, the server must be configured to accept
     only hostgssenc connections