Skip to content

If passwords are used for authentication, PostgreSQL must transmit only encrypted representations of passwords.

An XCCDF Rule

Description

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.

ID
SV-214056r879609_rule
Version
PGS9-00-000800
Severity
High
References
Updated

Remediation Templates

A Manual Procedure

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