Hide Forgot
+++ This bug was initially created as a clone of Bug #1417263 +++ OpenSSH on both RHEL 7 (openssh-6.6.1p1-31.el7) and RHEL 6 (openssh-5.3p1-118.1.el6_8) will by default negotiate an MD5 HMAC. MD5 has been considered insecure for quite some time now. C6 client, C7 server: (C in CentOS) debug2: mac_setup: found hmac-md5 debug1: kex: server->client aes128-ctr hmac-md5 none debug2: mac_setup: found hmac-md5 debug1: kex: client->server aes128-ctr hmac-md5 none C7 client & server: debug2: mac_setup: setup hmac-md5-etm@openssh.com debug1: kex: server->client aes128-ctr hmac-md5-etm@openssh.com none debug2: mac_setup: setup hmac-md5-etm@openssh.com debug1: kex: client->server aes128-ctr hmac-md5-etm@openssh.com none Default order on C7: debug2: kex_parse_kexinit: hmac-md5-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 Default order on C6: debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,hmac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 I would like to suggest to add the following line to both ssh_config and sshd_config: RHEL 7: MACs hmac-sha2-512-etm@openssh.com,hmac-sha2-512,hmac-sha2-256-etm@openssh.com,hmac-sha2-256,hmac-sha1-etm@openssh.com,hmac-sha1,hmac-ripemd160-etm@openssh.com,hmac-ripemd160@openssh.com,hmac-ripemd160,umac-128@openssh.com,umac-128-etm@openssh.com,hmac-sha1-96-etm@openssh.com,hmac-sha1-96,umac-64-etm@openssh.com,umac-64@openssh.com RHEL 6: MACS hmac-sha2-512,hmac-sha2-256,hmac-sha1,hmac-ripemd160@openssh.com,hmac-ripemd160,hmac-sha1-96,umac-64@openssh.com Even if this is not the desired order - note that the default order appears to be quite random itself - the fact that this option is available in the configuration files should give the administrator enough of a clue.
> MD5 has been considered insecure for quite some time now. That is true for cryptographic signature usage, but not for HMACs (integrity checks usage). Thank you for your input, but this is already handled in the bug #1373836, which will be out soon. Let me know if there is something more you would like to achieve or I can close the bug as a duplicate.
Even if HMACs are not quite as susceptible it's just plain stupid to keep known broken primitives around as defaults. As you are well aware attacks in crypto only ever get better, so over time things that were barely acceptable might very well become totally unsafe. NIST never even standardized MD5 as a HMAC for use in TLS, supposedly because of it utter brokenness. 10 years have gone by, and is quite possible that attacks that seemed infeasible 10 years ago are now quite possible seeing that state financed adversaries have budgets of billions of dollars per year. But I agree this is a dup of #1373836 so I'll hook on to that report.
*** This bug has been marked as a duplicate of bug 1373836 ***