UCF STIG Viewer Logo

If passwords are used for authentication, the EDB Postgres Advanced Server must transmit only encrypted representations of passwords.


Overview

Finding ID Version Rule ID IA Controls Severity
V-224168 EP11-00-004400 SV-224168r836876_rule High
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. DBMS 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.
STIG Date
EDB Postgres Advanced Server v11 on Windows Security Technical Implementation Guide 2022-06-13

Details

Check Text ( C-25841r495522_chk )
Verify that the pg_hba.conf is not using the "password" authentication method.

Note that the default location for the pg_hba.conf file is in the postgresql data directory. The location of the pg_hba.conf file for a running postgres instance can be found using the following command run from a Windows command prompt:

psql -d -U -c "SHOW hba_file"

where, is any database in the EDB postgres instance and is a database superuser. By default, a database named "edb" and a superuser named "enterprisedb" are installed with EDB Postgres Advanced Server (EPAS).

To verify that the pg_hba.conf file is not using the methods listed above, open the pg_hba.conf file in a text editor and inspect the contents of the file. If any uncommented lines have "password" specified for the "METHOD" column, this is a finding.

Optionally, the following command can be run from a Windows command prompt to identify any uncommented lines in the pg_hba.conf file that may be using these methods:

type \pg_hba.conf | findstr /N "password" | find /V /N "#"

Note: For the command above, if the path to the pg_hba.conf file contains spaces in it, the path to the file (including the file name) should be placed in double quotes.

If any uncommented lines showing that the "password" authentication method has been specified are reported via the above command, this is a finding.
Fix Text (F-25829r495523_fix)
Open "\pg_hba.conf" in an editor.

Note that the default location for the pg_hba.conf file is in the postgresql data directory. The location of the pg_hba.conf file for a running postgres instance can be found using the following command run from a Windows command prompt:

psql -d -U -c "SHOW hba_file"

where, is any database in the EDB postgres instance and is a database superuser. By default, a database named "edb" and a superuser named "enterprisedb" are installed with EDB Postgres Advanced Server (EPAS).

For any rows that have "password" specified for the "METHOD" column, change the value to "sha-256-scram" or "md5".