SQL6-D0-008200 - If passwords are used for authentication, SQL Server must transmit only encrypted representations of passwords.

Information

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.

SQL Server 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.

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

Solution

Configure SQL Server to encrypt authentication data for remote connections using DoD-approved cryptography.

Deploy encryption to the SQL Server Network Connections.

From a command prompt, open SQL Server Configuration Manager by typing 'sqlservermanager13.msc', and pressing 'ENTER'.

Navigate to SQL Server Configuration Manager >> SQL Server Network Configuration. Right-click on Protocols for, where is a placeholder for the SQL Server instance name, and click on 'Properties'.

In the 'Protocols for Properties' dialog box, on the 'Certificate' tab, select the DOD certificate from the drop down for the Certificate box, and then click 'OK'. On the 'Flags' tab, in the 'ForceEncryption' box, select 'Yes', and then click 'OK' to close the dialog box. Then Restart the SQL Server service.

For clustered instances install the certificate after setting 'Force Encryption' to 'Yes' in SQL Server Configuration Manger.

1. Navigate to the certificate store where the FQDN certificate is stored, by typing 'certlm.msc' and pressing 'ENTER'.

2. On the 'Properties' page for the certificate, go to the 'Details' tab and copy the 'thumbprint' value of the certificate to a 'Notepad' window.

3. Remove the spaces between the hex characters in the 'thumbprint' value in Notepad.

4. Start regedit, navigate to the following registry key, and copy the value from step 2: HKLM\SOFTWARE\Microsoft\Microsoft SQL Server\<instance>\MSSQLServer\SuperSocketNetLib\Certificate

5. If the SQL virtual server is currently on this node, failover to another node in your cluster, and then reboot the node where the registry change occurred.

6. Repeat this procedure on all the nodes.

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_MS_SQL_Server_2016_Y24M01_STIG.zip

Item Details

Category: IDENTIFICATION AND AUTHENTICATION

References: 800-53|IA-5(1)(c), CAT|I, CCI|CCI-000197, Rule-ID|SV-213966r879609_rule, STIG-ID|SQL6-D0-008200, STIG-Legacy|SV-93901, STIG-Legacy|V-79195, Vuln-ID|V-213966

Plugin: MS_SQLDB

Control ID: efac81e4ca67eefbe9c1ad41113536e6ec19d7fb726e031cfca370830ff539b2