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

Severity
Group ID
Group Title
Version
Rule ID
Date
STIG Version
mediumV-213699SRG-APP-000172-DB-000075DB2X-00-004100SV-213699r917664_rule2023-06-112
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.
ℹ️ Check
Run the following command to find the value of the authentication parameter: $db2 get dbm cfg If the AUTHENTICATION parameter is not set to SERVER_ENCRYPT, this is a finding. Run the following command to find the value of the registry variable DB2AUTH: $db2set -all If the value of DB2AUTH is not set to JCC_ENFORCE_SECMEC, or DB2AUTH is not set (i.e. a row is not returned for DB2AUTH from the above command), this is a finding.
✔️ Fix
Run the following command to set the value of the authentication encryption to SERVER_ENCRYPT: $db2 update dbm cfg using authentication server_encrypt Run the following db2set command to set the value of DB2AUTH to JCC_ENFORCE_SECMEC: $db2set DB2AUTH=JCC_ENFORCE_SECMEC Note: It is recommended to set the ALTERNATE_AUTH_ENC database manager configuration parameter to AES_ONLY to require that AES encryption be used.