The OpenSSL project issued a Security Advisory on December 8, 2020, warning users of a high-severity vulnerability affecting all versions of OpenSSL 1.0.2 and 1.1.1 prior to version 1.1.1i. This vulnerability could potentially be exploited by an attacker in a denial of service (DoS) attack:
The X.509 GeneralName type is a generic type for representing different types of names. One of those name types is known as EDIPartyName. OpenSSL provides a function GENERAL_NAME_cmp which compares different instances of a GENERAL_NAME to see if they are equal or not. This function behaves incorrectly when both GENERAL_NAMEs contain an EDIPARTYNAME. A NULL pointer dereference and a crash may occur leading to a possible denial of service attack.
OpenSSL uses the
GENERAL_NAME_cmp function when verifying CRL distribution points and timestamp authority names. According to OpenSSL’s advisory, “If an attacker can control both items being compared then that attacker could trigger a crash. For example if the attacker can trick a client or server into checking a malicious certificate against a malicious CRL then this may occur.”
The vulnerability was initially reported to OpenSSL on November 9, 2020 by David Benjamin of Google. A fix was developed by Matt Caswell of OpenSSL and deployed in OpenSSL 1.1.1i on December 8, 2020.
OpenSSL users have two paths to apply the fix, depending on their OpenSSL version and support level:
- Users of OpenSSL 1.1.1 and unsupported 1.0.2 users should upgrade to 1.1.1i.
- Premium support customers of OpenSSL 1.0.2 should upgrade to 1.0.2x.
OpenSSL is currently installed on the majority of HTTPS web servers; for example, Apache’s
mod_ssl module uses the OpenSSL library to provide SSL/TLS support.
SSL.com urges all users of OpenSSL to update their installation as soon as possible. The U.S. Cybersecurity & Infrastructure Security Agency (CISA) has also encouraged “users and administrators to review the OpenSSL Security Advisory and apply the necessary update.”