Skip to content

If passwords are used for authentication, the EDB Postgres Advanced Server must store only hashed, salted representations of passwords.

An XCCDF Rule

Description

<VulnDiscussion>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, database passwords stored in clear text, using reversible encryption, or using unsalted hashes would be vulnerable to unauthorized disclosure. Database passwords must always be in the form of one-way, salted hashes when stored internally or externally to the DBMS. In Postgres, encrypted passwords may be generated and stored using either MD5 or SRAM-SHA-256 encryption algorithms. The Postgres password_encryption parameter identifies which algorithm is being used by the Postgres cluster (i.e., instance). In general, MD5 is not approved for use within DoD systems. However, SCRAM-SHA-256 is approved for use within the DoD.</VulnDiscussion><FalsePositives></FalsePositives><FalseNegatives></FalseNegatives><Documentable>false</Documentable><Mitigations></Mitigations><SeverityOverrideGuidance></SeverityOverrideGuidance><PotentialImpacts></PotentialImpacts><ThirdPartyTools></ThirdPartyTools><MitigationControl></MitigationControl><Responsibility></Responsibility><IAControls></IAControls>

ID
SV-224167r879608_rule
Severity
High
References
Updated



Remediation - Manual Procedure

Execute the following SQL as enterprisedb:

 ALTER SYSTEM SET password_encryption = "scram-sha-256";
 SELECT pg_reload_conf();