OpenSSL Patches 8 Security Flaws

Written by

It’s not anything like the Heartbleed debacle, but eight new flaws have been disclosed and patched within the OpenSSL open-source software code.

The group responsible for the biggest vulnerability story of 2014 has released a detailed security advisory covering the issues. None of the flaws allow remote code execution, but there are two moderate flaws, both around DTLS and denial of service.

In the first one, detailed in a security advisory, a carefully crafted DTLS message can cause a segmentation fault in OpenSSL due to a NULL pointer dereference, which could open the door to a denial of service attack.

Also, a memory leak can occur in the dtls1_buffer_record function under certain conditions. In particular this could occur if an attacker sent repeated DTLS records with the same sequence number but for the next epoch. The memory leak could also be exploited by an attacker in a DoS attack, through memory exhaustion.

The rest of the updates address low-severity issues, including a range of certificate and key issues. For instance, the OpenSSL server will accept a DH certificate for client authentication without the certificate verify message. This effectively allows a client to authenticate without the use of a private key.

“This only affects servers which trust a client certificate authority which issues certificates containing DH keys: these are extremely rare and hardly ever encountered,” OpenSSL said in the advisory.

OpenSSL also was found to accept several non-DER-variations of certificate signature algorithm and signature encodings. It does not enforce a match between the signature algorithm between the signed and unsigned portions of the certificate, so by modifying the contents of the signature algorithm or the encoding of the signature, it is possible to check the certificate's fingerprint.

And, an OpenSSL client will accept the use of an RSA temporary key in a non-export RSA key exchange ciphersuite. A server could present a weak temporary key and downgrade the security of the session.

“This does not allow an attacker to forge certificates, and does not affect certificate verification or OpenSSL servers/clients in any other way,” OpenSSL said. “It also does not affect common revocation mechanisms. Only custom applications that rely on the uniqueness of the fingerprint (e.g. certificate blacklists) may be affected.”

Also, an OpenSSL client will accept a handshake using an ephemeral ECDH ciphersuite using an ECDSA certificate, if the server key exchange message is omitted. This effectively removes forward secrecy from the ciphersuite.

The remainder of the flaws are a mixed bag, like the fact that when OpenSSL is built with the no-ssl3 option and an SSL v3 ClientHello is received, the SSL method would be set to NULL, which could later result in a NULL pointer dereference. And, bignum squaring (BN_sqr) may produce incorrect results on some platforms, including x86_64.

“This bug occurs at random with a very low probability, and is not known to be exploitable in any way, though its exact impact is difficult to determine,” the group said.

What’s hot on Infosecurity Magazine?