Rule ID
SV-286222r1292249_rule
Version
V1R1
CCIs
Use of weak or untested encryption algorithms undermines the purposes of using encryption to protect data. The application must implement cryptographic modules adhering to the higher standards approved by the federal government since this provides assurance they have been tested and validated. It is the responsibility of the data owner to assess the cryptography requirements in light of applicable federal laws, Executive Orders, directives, policies, regulations, and standards. NSA-approved cryptography for classified networks is hardware based. This requirement addresses the compatibility of MariaDB with the encryption devices.
Run the following SQL as a DBA: SHOW GLOBAL VARIABLES LIKE 'have_ssl'; Expected result: have_ssl | YES If the value is not "YES", this is a finding. Verify that TLS is enabled for the server. SHOW GLOBAL VARIABLES LIKE 'ssl_%'; Confirm that the following variables are populated with valid certificate paths: ssl_ca ssl_cert ssl_key If these variables are empty or TLS is not configured, this is a finding. Verify that client connections are capable of using SSL/TLS: SHOW GLOBAL VARIABLES LIKE 'require_secure_transport'; If secure transport is not enabled or TLS is not enforced for connections that require protection, this is a finding. For environments processing classified information, consult network administration personnel to determine whether the database server is protected by NSA-approved cryptographic devices or solutions in accordance with applicable federal regulations and security policies. If the server or network path is not protected by NSA-approved cryptographic mechanisms where required, this is a finding.
Enable TLS support in the MariaDB configuration file. Edit the "mariadb-enterprise.cnf "configuration file located in "/etc/my.cnf.d/". Under [mariadb], add/edit the following: [mariadb] ssl-ca=/etc/my.cnf.d/certs/ca-cert.pem ssl-cert=/etc/my.cnf.d/certs/server-cert.pem ssl-key=/etc/my.cnf.d/certs/server-key.pem Restart the MariaDB service for the configuration changes to take effect. Verify TLS support is enabled: SHOW GLOBAL VARIABLES LIKE 'have_ssl'; SHOW GLOBAL VARIABLES LIKE 'ssl_%'; Enforce encrypted connections, where required: SET GLOBAL require_secure_transport=ON; Ensure that database users requiring encrypted connections are configured accordingly: ALTER USER 'username'@'host' REQUIRE SSL; or ALTER USER 'username'@'host' REQUIRE X509; In classified environments, ensure the database server or network communications are protected using NSA-approved cryptographic mechanisms in accordance with applicable federal laws, directives, and security policies.