PGS9-00-000800 - If passwords are used for authentication, PostgreSQL must transmit only encrypted representations of passwords.

Information

The DoD standard for authentication is DoD-approved PKI certificates.

Authentication based on User ID and Password may be used only when it is not possible to employ a PKI certificate, and requires AO approval.

In such cases, passwords need to be protected at all times, and encryption is the standard method for protecting passwords during transmission.

PostgreSQL passwords sent in clear text format across the network are vulnerable to discovery by unauthorized users. Disclosure of passwords may easily lead to unauthorized access to the database.

Solution

Note: The following instructions use the PGDATA environment variable. See supplementary content APPENDIX-F for instructions on configuring PGDATA.

As the database administrator (shown here as 'postgres'), edit pg_hba.conf authentication file and change all entries of 'password' to 'md5':

$ sudo su - postgres
$ vi ${PGDATA?}/pg_hba.conf
host all all .example.com md5

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_PGS_SQL_9-x_V2R3_STIG.zip

Item Details

Category: IDENTIFICATION AND AUTHENTICATION

References: 800-53|IA-5(1)(c), CAT|I, CCI|CCI-000197, Rule-ID|SV-214056r836916_rule, STIG-ID|PGS9-00-000800, STIG-Legacy|SV-87509, STIG-Legacy|V-72857, Vuln-ID|V-214056

Plugin: Unix

Control ID: be6df4caa76fffa7671b2e73d37132c1572bb481389f0a5ef2fa91bb186b03bc