MYS8-00-005300 - The MySQL Database Server 8.0 must obscure feedback of authentication information during the authentication process to protect the information from possible exploitation/use by unauthorized individuals.

Information

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

Normally, with PKI authentication, the interaction with the user for authentication will be handled by a software component separate from the Database Management System (DBMS), such as ActivIdentity ActivClient. However, in cases where the DBMS controls the interaction, this requirement applies.

To prevent the compromise of authentication information such as passwords and PINs during the authentication process, the feedback from the system must not provide any information that would allow an unauthorized user to compromise the authentication mechanism.

Obfuscation of user-provided authentication secrets when typed into the system is a method used in addressing this risk.

Displaying asterisks when a user types in a password or a smart card PIN is an example of obscuring feedback of authentication secrets.

For mysql tools, which can accept a plain-text password, and any other essential tool with the same limitation:
1) Document the need for it, who uses it, and any relevant mitigations, and obtain Authorizing Official (AO) approval
2) Train all users of the tool in the importance of not using the plain-text password option and in how to keep the password hidden by using the '-p' without the password option. The user will then be prompted and the password obfuscated.
3) Make use of OS pluggable password manager integration to protect passwords using keyrings

NOTE: Nessus has not performed this check. Please review the benchmark to ensure target compliance.

Solution

Modify and configure each non-compliant application, tool, or feature associated with the MySQL Database Server 8.0/database so that it does not display authentication secrets.

Use -p (--password) without providing a password for the mysql command line tool.

Configure or modify applications to prohibit display of passwords in clear text.

Use OS pluggable password manager integration to protect passwords using keyrings. Following is an example:
$ /usr/local/mysql/bin/mysql -uroot -p
Enter password:

$ mysqlsh --user=user --password
Please provide the password for 'user@localhost':

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_Oracle_MySQL_8-0_V2R1_STIG.zip

Item Details

Category: IDENTIFICATION AND AUTHENTICATION

References: 800-53|IA-6, CAT|I, CCI|CCI-000206, Rule-ID|SV-235140r961047_rule, STIG-ID|MYS8-00-005300, Vuln-ID|V-235140

Plugin: MySQLDB

Control ID: c07fcc51482484bf37d24b0822798947e19e6da852324e74dcc4ef08456503f7