Host Hardening

To ensure secure operation of Archer, the underlying components of the host must be hardened so that the server functions properly and opportunities for vulnerabilities are removed.

Archer recommends hardening the host system under it to only allow TLS 1.2 on all Archer supported clients and servers. 

  • Make sure that SQL servers, Web Services, and clients have the latest service packs using TLS 1.2.
  • Make sure that all security updates are applied before additional hardening is performed on all underlying components, including, but not limited to, the Operating System, SQL, and IIS.

Recommendations for TLS/SSL cipher hardening

Once all underlying components are up-to-date, TLS/SSL cipher hardening can be applied. A cipher suite is a set of algorithms that help secure a network connection using Transport Layer Security (TLS). Cipher hardening prevents known cipher attacks in TLS/SSL (for example, Sweet32, BEAST, POODLE, or ROBOT). Cipher hardening also ensures that data is kept secure and encrypted in transit, per industry best practices. To ensure encryption configuration is secure for all Archer communication, the apply the changes below to both Server and Client communications. As such, you must update these settings on your entire environment uniformly otherwise communication errors may occur.

Configuration changes

Note: For the registry changes below, many of these registry paths will not exist by default. You will need to create the registry paths.

Disable Multi-Protocol Unified Hello

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\Multi-Protocol Unified Hello\Client

DisabledByDefault

DWord

1

Disable PCT 1.0

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\PCT 1.0\Client

DisabledByDefault

DWord

1

Disable SSL 2.0

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 2.0\Client

DisabledByDefault

DWord

1

Disable SSL 3.0

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\SSL 3.0\Client

DisabledByDefault

DWord

1

Note: If you disable SSL 3.0, you may lock out some users still using Windows XP with IE 6 or IE 7. Without SSL 3.0 enabled, there is no protocol available for those users to fall back. Safer shopping certifications may require that you disable SSLv3.

Disable TLS 1.0

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.0\Client

DisabledByDefault

DWord

1

Disable TLS 1.1

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server

DisabledByDefault

DWord

1

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client

DisabledByDefault

DWord

1

Enable TLS 1.2

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server

DisabledByDefault

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client

DisabledByDefault

DWord

0

Disable insecure ciphers

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\DES 56/56

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\NULL

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 128/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 40/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC2 56/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 40/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 56/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 64/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\RC4 128/128

Enabled

DWord

0

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\Triple DES 168

Enabled

DWord

0

Enable secure ciphers

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\AES 128/128

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Ciphers\AES 256/256

Enabled

DWord

0xffffffff

Disable insecure hashing algorithms

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\MD5

Enabled

DWord

0

Enable secure hashing algorithms

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA256

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA384

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA512

Enabled

DWord

0xffffffff

Disable insecure key exchange algorithms

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\Diffie-Hellman

Enabled

DWord

0

Enable secure key exchange algorithms

 

Registry Path

KeyName Property Type Value

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\ECDH

Enabled

DWord

0xffffffff

HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\KeyExchangeAlgorithms\PKCS

Enabled

DWord

0xffffffff

Configure cipher suite order for Strength-Preference and Perfect-Forward Secrecy

 

Registry Path

KeyName Property Type Value

HKLM:\SOFTWARE\Policies\Microsoft\Cryptography\Configuration\SSL\00010002

Functions

String

TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA

Enforce TLS 1.2 for .NET

 

Registry Path

KeyName Property Type Value

HKLM:\SOFTWARE\Microsoft.NETFramework\v2.0.50727

SystemDefaultTlsVersions

DWord

1

HKLM:\SOFTWARE\Microsoft.NETFramework\v2.0.50727

SchUseStrongCrypto

DWord

1

HKLM:\SOFTWARE\Microsoft.NETFramework\v4.0.30319

SystemDefaultTlsVersions

DWord

1

HKLM:\SOFTWARE\Microsoft.NETFramework\v4.0.30319

SchUseStrongCrypto

DWord

1

HKLM:\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v2.0.50727

SystemDefaultTlsVersions

DWord

1

HKLM:\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v2.0.50727

SchUseStrongCrypto

DWord

1

HKLM:\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v4.0.30319

SystemDefaultTlsVersions

DWord

1

HKLM:\SOFTWARE\Wow6432Node\Microsoft.NETFramework\v4.0.30319

SchUseStrongCrypto

DWord

1

Set TLS 1.2 as default for outbound communications

 

Registry Path

KeyName Property Type Value

HKCU:\Software\Microsoft\Windows\CurrentVersion\Internet Settings

SecureProtocols

DWord

2048

HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings

SecureProtocols

DWord

2048

Supported clients

 

Client

TLS Version

Android 4.4.2

TLS 1.2

Android 5.0.0

TLS 1.2

Android 6.0

TLS 1.2 > http/1.1

Android 7.0

TLS 1.2 > h2

Android 8.0

TLS 1.2 > h2

Android 8.1

TLS 1.2 > h2

Android 9.0

TLS 1.2 > h2

BingPreview Jan 2015

TLS 1.2

Chrome 49 / XP SP3

TLS 1.2 > h2

Chrome 69 / Windows 7 R

TLS 1.2 > h2

Chrome 70 / Windows 10

TLS 1.2 > h2

Chrome 80 / Windows 10 R

TLS 1.2 > h2

Firefox 31.3.0 ESR / Windows 7

TLS 1.2

Firefox 47 / Windows 7 R

TLS 1.2 > h2

Firefox 49 / XP SP3

TLS 1.2 > h2

Firefox 62 / Windows 7 R

TLS 1.2 > h2

Firefox 73 / Windows 10 R

TLS 1.2 > h2

Googlebot Feb 2018

TLS 1.2

IE 11 / Windows 10 R

TLS 1.2 > h2

Edge 15 / Windows 10 R

TLS 1.2 > h2

Edge 16 / Windows 10 R

TLS 1.2 > h2

Edge 18 / Windows 10 R

TLS 1.2 > h2

Edge 13 / Windows Phone 10 R

TLS 1.2 > h2

Java 8u161

TLS 1.2

Java 11.0.3

TLS 1.2

Java 12.0.1

TLS 1.2

OpenSSL 1.0.1l R

TLS 1.2

OpenSSL 1.0.2s R

TLS 1.2

OpenSSL 1.1.0k R

TLS 1.2

OpenSSL 1.1.1c R

TLS 1.2

Safari 9 / iOS 9 R

TLS 1.2 > h2

Safari 9 / OS X 10.11 R

TLS 1.2 > h2

Safari 10 / iOS 10 R

TLS 1.2 > h2

Safari 10 / OS X 10.12 R

TLS 1.2 > h2

Safari 12.1.2 / MacOS 10.14.6 Beta R

TLS 1.2 > h2

Safari 12.1.1 / iOS 12.3.1 R

TLS 1.2 > h2

Apple ATS 9 / iOS 9 R

TLS 1.2 > h2

Yahoo Slurp Jan 2015

TLS 1.2

YandexBot Jan 2015

TLS 1.2

Note: You can achieve additional security by removing the CBC mode ciphers listed in the section “Configure Cipher Suite Order for Strength-Preference and Perfect-Forward Secrecy." However, the following clients would no longer be supported.

 

Client

TLS Version Cipher Suite

IE 11 / Windows 7 R

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

IE 11 / Windows 8.1 R

TLS 1.2 > http/1.1

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

IE 11 / Windows Phone 8.1 R

TLS 1.2 > http/1.1

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

IE 11 / Windows Phone 8.1 Update R

TLS 1.2 > http/1.1

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Safari 6 / iOS 6.0.1

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Safari 7 / iOS 7.1 R

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Safari 7 / OS X 10.9 R

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Safari 8 / iOS 8.4 R

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Safari 8 / OS X 10.10 R

TLS 1.2

TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256

Verifying cipher configuration

You can use various tools to verify the Cipher Suite hardening that you have configured. Cipher Suite hardening may lead to limited connectivity, as older clients cannot connect to servers with strong security requirements. Some tools will provide further details on these limitations.

For public facing servers, it is recommended to test using the Qualys SSL Labs test: SSL Server Test (Powered by Qualys SSL Labs).

For private servers, it is recommended to test using TestSSL: /bin/bash based SSL/TLS tester: testssl.sh.