Vulnerability Note VU#935264

OpenSSL ASN.1 parser insecure memory deallocation

Original Release date: 30 Sep 2003 | Last revised: 01 Oct 2003

Overview

A vulnerability in the way OpenSSL deallocates memory used to store ASN.1 structures could allow a remote attacker to execute arbitrary code with the privileges of the process using the OpenSSL library.

Description

OpenSSL implements the Secure Sockets Layer (SSL) and Transport Layer Security (TLS) protocols and includes a general purpose cryptographic library. SSL and TLS are commonly used to provide authentication, encryption, integrity, and non-repudiation services to network applications such as HTTP, IMAP, POP3, LDAP, and others. Clients and servers exchange authentication information in X.509 certificates. While the SSL and TLS protocols are not directly based on ASN.1, they do rely on ASN.1 objects used in X.509 certificates and other cryptographic elements (e.g. PKCS#1 encoded RSA values). The ASN.1 parser in OpenSSL is also used to handle non-SSL/TLS elements such as PKCS#7 encoded S/MIME parts.

There is a vulnerability in the way OpenSSL deallocates memory used to store ASN.1 structures (ASN1_TYPE). Parsing specially crafted ASN.1 encoded structures that OpenSSL determines to be invalid could cause memory to be deallocated insecurely, corrupting the stack.

From the OpenSSL advisory:


1. Certain ASN.1 encodings that are rejected as invalid by the parser
can trigger a bug in the deallocation of the corresponding data
structure, corrupting the stack. This can be used as a denial of service
attack. It is currently unknown whether this can be exploited to run
malicious code. This issue does not affect OpenSSL 0.9.6.

All versions of SSLeay and versions of OpenSSL prior to 0.9.7c are vulnerable, as are operating systems and applications that use vulnerable SSLeay or OpenSSL libraries. The OpenSSL advisory describes as vulnerable "Any application that makes use of OpenSSL's ASN1 library to parse untrusted data. This includes all SSL or TLS applications, those using S/MIME (PKCS#7) or certificate generation routines." OpenSSL 0.9.6 is not affected.

The U.K. National Infrastructure Security Co-ordination Centre (NISCC) is tracking this vulnerability as NISCC/006489/openssl/3.

Impact

By providing specially crafted data to the vulnerable ASN.1 parser, a remote attacker could cause a denial of service. It may be possible to execute arbitrary code with the privileges of the process using the vulnerable library. One potential attack vector is a client certificate message containing specially crafted X.509 certificates.

Solution

Upgrade or Patch
Upgrade to OpenSSL 0.9.7c. Alternatively, upgrade OpenSSL or apply a patch as specified by your vendor. Further information is available in an advisory from OpenSSL. Note that it is necessary to recompile any applications that are statically linked to OpenSSL libraries.

Systems Affected (Learn More)

VendorStatusDate NotifiedDate Updated
OpenSSLAffected-30 Sep 2003
If you are a vendor and your product is affected, let us know.

CVSS Metrics (Learn More)

Group Score Vector
Base N/A N/A
Temporal N/A N/A
Environmental N/A N/A

References

Credit

This vulnerability was discovered and researched by NISCC.

This document was written by Art Manion.

Other Information

  • CVE IDs: CAN-2003-0545
  • CERT Advisory: CA-2003-26
  • Date Public: 30 Sep 2003
  • Date First Published: 30 Sep 2003
  • Date Last Updated: 01 Oct 2003
  • Severity Metric: 21.52
  • Document Revision: 56

Feedback

If you have feedback, comments, or additional information about this vulnerability, please send us email.