Hide Forgot
Description of problem: The default configuration of openssh-server 6.7 disables some of the supported Ciphers and MACs. "In particular, CBC ciphers and arcfour* are disabled by default." [1]. MACs that are disabled by default are *md5*, *ripemd160*, *sha1*96*. Version-Release number of selected component (if applicable): openssh-5.3p1-118.1.el6_8 How reproducible: always Steps to Reproduce: 1. yum distribution-synchronization # just to ensure the latest RHEL is installed 2. rm /etc/ssh/sshd_config 3. yum reinstall openssh-server # recreates default /etc/ssh/sshd_config 4. sshd -T | grep -i "Ciphers\|MACs" # lists currently enabled Ciphers and MACs Actual results: The default enabled Ciphers include *cbc*, *arcfour*. The default enabled MACs include *md5*, *ripemd160*, *sha1*96*. Actual results of the command sshd -T | grep -i "Ciphers\|MACs" ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc.se macs hmac-md5,hmac-sha1,umac-64,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160,hmac-sha1-96,hmac-md5-96 Expected results: Defaults follow recent OpenSSH upstream versions. These Ciphers are disabled by default: *cbc*, *arcfour*. These MACs are disabled by default: *md5*, *ripemd160*, *sha1*96*. Expected results of the command sshd -T | grep -i "Ciphers\|MACs" ciphers aes128-ctr,aes192-ctr,aes256-ctr macs hmac-sha1,umac-64,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160 Additional info: * Red Hat's KB article about insecure Ciphers and MACs recommends non-default values [3] * The latest RH-shipped version is 6.6.1p1 / 5.3p1; however it would be good to follow current security recommendations regarding the defaults. * We have a Red Hat Insights rule for OpenSSH hardening that would get activated once the defaults in the openssh-server package are fixed. Red Hat Insights is a service to notify enrolled customers about problems on their systems. It is best when customers are not alerted about RHEL-default values. * OpenSSH 6.7 through 7.1 disables hmac-sha1-etm and hmac-sha1 but OpenSSH 7.2 reenables it. References: [1] http://www.openssh.com/txt/release-6.7 [2] http://www.openssh.com/txt/release-7.2 [3] https://access.redhat.com/solutions/420283
Well ... my bad. You are right. It is a bug. The hmac-md5-96 should not be removed from the server list. Only from the default client list. I will need to fix this. The test was obviously right. Sorry for the confusion.
*** Bug 1417264 has been marked as a duplicate of this bug. ***
Probably best to only leave around sha2-512 and sha2-256 enabled by default, and sha1 as a legacy option for HMACs. Not just MD5 is considered broken, but also RIPEMD. See http://csrc.nist.gov/groups/ST/toolkit/documents/shs/hash_standards_comments.pdf . Note that this is a NIST statement from 2004, that is THIRTEEN YEARS AGO. Things have only deteriorated since then. I'm not so sure the hype against CBC is warranted. With proper padding CBC is perfectly usable. Counter modes like GCM and CTR have their own issues, like injecting known state (albeit hashed/crypted) which should not be brushed aside so easily. Such known state injection might well be successfully leveraged by future cryptanalitic progress. So personally I'm not entirely convinced GCM is that much more secure (or even more secure at all) than (properly implemented) CBC.
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-2017-0641.html