Bug 1117979 - harden the list of ciphers available by default
Summary: harden the list of ciphers available by default
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: 389-ds-base
Version: 7.0
Hardware: Unspecified
OS: Unspecified
high
unspecified
Target Milestone: rc
: ---
Assignee: Noriko Hosoi
QA Contact: Viktor Ashirov
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-07-09 18:42 UTC by Noriko Hosoi
Modified: 2018-12-06 17:15 UTC (History)
2 users (show)

Fixed In Version: 389-ds-base-1.3.3.1-4.el7
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-03-05 09:35:44 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:0416 normal SHIPPED_LIVE Important: 389-ds-base security, bug fix, and enhancement update 2015-03-05 14:26:33 UTC

Description Noriko Hosoi 2014-07-09 18:42:10 UTC
This bug is created as a clone of upstream ticket:
https://fedorahosted.org/389/ticket/47838

ds sets the list of supported ciphers to what is available in nss. The list of used ciphers can be overwritten in cn=config, eg 
nsSSL3Ciphers: -rsa_null_md5,-rsa_null_sha,+rsa_rc4_128_md5,+rsa_rc4_40_md5,+r
  sa_rc2_40_md5,+rsa_des_sha,+rsa_fips_des_sha,+rsa_3des_sha,+rsa_fips_3des_sh
  a,+fortezza,+fortezza_rc4_128_sha,+fortezza_null,+tls_rsa_export1024_with_rc
  4_56_sha

This RFE requests to:

- exclude weak ciphers from the ciphers available by default, for legacy applications they will be still available, but hat to be explicitely turned on
- support keywords "-all" (+all ?) to ensure all ciphers except the specifically set with + are excluded, eg
nsSSL3Ciphers: -all,+rsa_rc4_128_md5,+rsa_rc4_40_md5,+rsa_rc2_40_md5,   +rsa_des_sha,+rsa_fips_des_sha

Comment 3 Sankar Ramalingam 2014-11-21 14:47:25 UTC
By default the latest 389-ds-base of RHEL7.1 sets the value of nsSSL3: off.
Even when I change the value to on, it throws "SSL alert: Found unsecure configuration: nsSSL3: on; We strongly recommend to disable nsSSL3 in cn=encryption,cn=config" error.

The default cipher value is...

[root@vm-idm-035 ~]# ldapsearch -x -p 1189 -h localhost -D "cn=Directory Manager" -w Secret123 -b "cn=encryption,cn=config" |grep -i nsSSL3Ciphers:
nsSSL3Ciphers: +rsa_rc4_128_md5,+rsa_rc4_40_md5,+rsa_rc2_40_md5,+rsa_des_sha,+

Which doesn't allow the default weak ciphers. Then, I changed the value of nsSSL3Ciphers with "-all". With this change its backward compatible. No error messages in the logs and nsSSL3 worked just fine. Hence, marking the bug as verified.

[root@vm-idm-035 ~]# ldapmodify -x -p 1189 -h localhost -D "cn=Directory Manager" -w Secret123 << EOF
> dn: cn=encryption,cn=config
> changetype: modify
> replace: nsSSL3Ciphers
> nsSSL3Ciphers: -all,+rsa_rc4_128_md5,+rsa_rc4_40_md5,+rsa_rc2_40_md5,+rsa_des_sha,+rsa_fips_des_sha
> EOF
modifying entry "cn=encryption,cn=config"


Restarted the server after removing "-all" from the "nsSSL3Ciphers" attribute. Then, the error messages displayed as "We strongly recommend to disable nsSSL3"


[root@vm-idm-035 ~]# ldapmodify -x -p 1189 -h localhost -D "cn=Directory Manager" -w Secret123 << EOF
dn: cn=encryption,cn=config
changetype: modify
replace: nsSSL3Ciphers
nsSSL3Ciphers: +rsa_rc4_128_md5,+rsa_rc4_40_md5,+rsa_rc2_40_md5,+rsa_des_sha,+rsa_fips_des_sha
EOF

modifying entry "cn=encryption,cn=config"


==> /var/log/dirsrv/slapd-M1/errors <==
[21/Nov/2014:20:05:21 +051800] - slapd shutting down - signaling operation threads - op stack size 0 max work q size 0 max work q stack size 0
[21/Nov/2014:20:05:23 +051800] - slapd shutting down - closing down internal subsystems and plugins
[21/Nov/2014:20:05:23 +051800] - Waiting for 4 database threads to stop
[21/Nov/2014:20:05:25 +051800] - All database threads now stopped
[21/Nov/2014:20:05:25 +051800] - slapd shutting down - freed 0 work q stack objects - freed 0 op stack objects
[21/Nov/2014:20:05:25 +051800] - slapd stopped.
[21/Nov/2014:20:05:39 +051800] config - Unknown attribute nsslapd-return-default-opattr will be ignored
[21/Nov/2014:20:05:40 +051800] - SSL alert: Found unsecure configuration: nsSSL3: on; We strongly recommend to disable nsSSL3 in cn=encryption,cn=config.
[21/Nov/2014:20:05:41 +051800] - SSL alert: Configured range: min: TLS1.0, max: TLS1.2; but both nsSSL3 and nsTLS1 are on. Respect the supported range.
[21/Nov/2014:20:05:41 +051800] SSL Initialization - Configured SSL version range: min: TLS1.0, max: TLS1.2
[21/Nov/2014:20:05:41 +051800] - SSL alert: Cipher rsa_rc4_128_md5 is weak. It is enabled since allowWeakCipher is "on" (default setting for the backward compatibility). We strongly recommend to set it to "off".  Please replace the value of allowWeakCipher with "off" in the encryption config entry cn=encryption,cn=config and restart the server.
[21/Nov/2014:20:05:42 +051800] - SSL alert: Cipher rsa_rc4_40_md5 is weak. It is enabled since allowWeakCipher is "on" (default setting for the backward compatibility). We strongly recommend to set it to "off".  Please replace the value of allowWeakCipher with "off" in the encryption config entry cn=encryption,cn=config and restart the server.
[21/Nov/2014:20:05:42 +051800] - SSL alert: Cipher rsa_rc2_40_md5 is weak. It is enabled since allowWeakCipher is "on" (default setting for the backward compatibility). We strongly recommend to set it to "off".  Please replace the value of allowWeakCipher with "off" in the encryption config entry cn=encryption,cn=config and restart the server.
[21/Nov/2014:20:05:42 +051800] - SSL alert: Cipher rsa_des_sha is weak. It is enabled since allowWeakCipher is "on" (default setting for the backward compatibility). We strongly recommend to set it to "off".  Please replace the value of allowWeakCipher with "off" in the encryption config entry cn=encryption,cn=config and restart the server.
[21/Nov/2014:20:05:42 +051800] - SSL alert: Cipher rsa_fips_des_sha is weak. It is enabled since allowWeakCipher is "on" (default setting for the backward compatibility). We strongly recommend to set it to "off".  Please replace the value of allowWeakCipher with "off" in the encryption config entry cn=encryption,cn=config and restart the server.
[21/Nov/2014:20:05:42 +051800] - SSL alert: Configured NSS Ciphers
[21/Nov/2014:20:05:42 +051800] - SSL alert: 	TLS_RSA_WITH_RC4_128_MD5: enabled, (WEAK CIPHER)
[21/Nov/2014:20:05:42 +051800] - SSL alert: 	SSL_RSA_FIPS_WITH_DES_CBC_SHA: enabled, (WEAK CIPHER)
[21/Nov/2014:20:05:43 +051800] - SSL alert: 	TLS_RSA_WITH_DES_CBC_SHA: enabled, (WEAK CIPHER)
[21/Nov/2014:20:05:43 +051800] - SSL alert: 	TLS_RSA_EXPORT_WITH_RC4_40_MD5: enabled, (WEAK CIPHER)
[21/Nov/2014:20:05:43 +051800] - SSL alert: 	TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5: enabled, (WEAK CIPHER)
[21/Nov/2014:20:05:43 +051800] - 389-Directory/1.3.3.1 B2014.317.2357 starting up

Comment 5 errata-xmlrpc 2015-03-05 09:35:44 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-0416.html


Note You need to log in before you can comment on or make changes to this bug.