A vulnerability that can be exploited for denial-of-service (DoS) attacks and possibly even for remote code execution has been uncovered in the cryptographic library PolarSSL.
PolarSSL is used in several major projects, including OpenVPN, OpenVPN-NL (a version of OpenVPN made by Fox-IT for the Dutch government), PowerDNS, the Hiawatha and Monkey HTTP Server web servers, and various commercial products. In November 2014, PolarSSL became part of the semiconductor and software design company ARM.
The high severity vulnerability (CVE-2015-1182) was discovered by PolarSSL developers during an internal audit, but it was also identified independently by Netherlands-based Certified Secure. The flaw affects PolarSSL 1.0 through 1.3.9 in certain configurations. Servers that don’t ask for client certificates are not impacted, PolarSSL said.
“During the parsing of a ASN.1 sequence, a pointer in the linked list of asn1_sequence is not initialized by asn1_get_sequence_of(). In case an error occurs during parsing of the list, a situation is created where the uninitialized pointer is passed to polarssl_free(),” PolarSSL wrote in an advisory published on Monday.
“This sequence can be triggered when a PolarSSL entity is parsing a certificate. So practically this means clients when receiving a certificate from the server or servers in case they are actively asking for a client certificate,” the advisory continues.
Users are advised to apply a patch developed by PolarSSL for version 1.3.9 or wait for the upcoming release, which will include the fix.
According to Certified Secure, the most common attack scenario is one in which the attacker exploits the server by presenting it a specially crafted X.509 certificate. This results in a DoS state, but it can also lead to remote code execution.
The vulnerability has been confirmed to impact OpenVPN-NL 2.3.5-nl2 and prior. OpenVPN-NL 2.3.5-nl3 was released on Monday to address the PolarSSL vulnerability.
OpenVPN Connect for Android version 1.1.14 and earlier, and OpenVPN Connect for iOS version 1.0.5 and earlier are also vulnerable. However, Certified Secure has pointed out that in order to exploit a client, the attacker needs to perform a successful man-in-the-middle (MitM) attack or gain control of the server.
OpenVPN might be vulnerable in certain situations, but this hasn’t been confirmed. PowerDNS is not affected.
Cryptographic libraries took center stage last year after the discovery of Heartbleed, a critical vulnerability affecting OpenSSL. In October, the SSL protocol itself came into the spotlight when researchers discovered a design flaw in SSL 3.0 (POODLE) that can be exploited to extract information from encrypted communications.