The macOS system must limit SSH to FIPS-compliant connections.

STIG ID: APPL-14-000057  |  SRG: SRG-OS-000033-GPOS-00014 |  Severity: high |  CCI: CCI-000068,CCI-000803,CCI-001453,CCI-002421,CCI-002450 |  Vulnerability Id: V-259439 | 

Vulnerability Discussion

SSH must be configured to limit the Ciphers, HostbasedAcceptedAlgorithms,
HostKeyAlgorithms, KexAlgorithms, MACs, PubkeyAcceptedAlgorithms, CASignatureAlgorithms to algorithms
that are FIPS 140 validated.

FIPS 140-2 is the current standard for validating that mechanisms used to access cryptographic modules
utilize authentication that meet federal requirements.

Operating systems utilizing encryption must use FIPS-validated mechanisms for authenticating to
cryptographic modules.

Note: For more information on FIPS compliance with the version of SSH included in the macOS, the manual
page apple_ssh_and_fips has additional information.

Satisfies:
SRG-OS-000033-GPOS-00014,SRG-OS-000120-GPOS-00061,SRG-OS-000250-GPOS-00093,SRG-OS-000396-GPOS-00176,SRG-OS-000424-GPOS-00188,SRG-OS-000478-GPOS-00223

Check

Verify the macOS system is configured to limit SSH to FIPS-compliant connections with the
following command:

fips_ssh_config="Host *
Ciphers [email protected]
HostbasedAcceptedAlgorithms ecdsa-sha2-nistp256,[email protected]
HostKeyAlgorithms ecdsa-sha2-nistp256,[email protected]
KexAlgorithms ecdh-sha2-nistp256
MACs hmac-sha2-256
PubkeyAcceptedAlgorithms ecdsa-sha2-nistp256,[email protected]
CASignatureAlgorithms ecdsa-sha2-nistp256"
/usr/bin/grep -c "$fips_ssh_config" /etc/ssh/ssh_config.d/fips_ssh_config

If the result is not "8", this is a finding.

Fix

Configure the macOS system to limit SSH to FIPS-compliant connections
with the following command:

fips_ssh_config="Host *
Ciphers [email protected]
HostbasedAcceptedAlgorithms ecdsa-sha2-nistp256,[email protected]
HostKeyAlgorithms ecdsa-sha2-nistp256,[email protected]
KexAlgorithms ecdh-sha2-nistp256
MACs hmac-sha2-256
PubkeyAcceptedAlgorithms ecdsa-sha2-nistp256,[email protected]
CASignatureAlgorithms ecdsa-sha2-nistp256"
/bin/echo "${fips_ssh_config}" > /etc/ssh/ssh_config.d/fips_ssh_config