OpenSSL 0.9.6k does not properly handle ASN.1 sequences

2003-11-04T00:00:00
ID VU:412478
Type cert
Reporter CERT
Modified 2003-11-05T00:00:00

Description

Overview

A vulnerability in the way OpenSSL handles ASN.1 elements could allow a remote attacker to cause a denial of service on systems running Microsoft Windows.

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).

OpenSSL 0.9.6k does not properly handle certain ASN.1 sequences. As a result, OpenSSL performs a recursive function call that could exhaust system resources and crash the process using the OpenSSL library. This denial-of-service condition has only been observed on Microsoft Windows platforms. OpenSSL 0.9.7 is not affected.

From the OpenSSL advisory:

> > A bug in OpenSSL 0.9.6 would cause certain ASN.1 sequences to trigger > a large recursion. On platforms such as Windows this large recursion > cannot be handled correctly and so the bug causes OpenSSL to crash. A > remote attacker could exploit this flaw if they can send arbitrary > ASN.1 sequences which would cause OpenSSL to crash. This could be > performed for example by sending a client certificate to a SSL/TLS > enabled server which is configured to accept them. >

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


Impact

By providing specially crafted ASN.1 encoded data to a vulnerable system, a remote attacker could cause a denial of service by consuming system resources. This has only been observed on Microsoft Windows systems. One potential attack vector is a client certificate message containing specially crafted X.509 certificates. Note that OpenSSL versions 0.9.7c or 0.9.6k and above do not accept unsolicited client certificates (VU#732952).


Solution

Upgrade or Patch
Upgrade to OpenSSL 0.9.7c or 0.9.6l. Alternatively, upgrade 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

Vendor| Status| Date Notified| Date Updated
---|---|---|---
OpenSSL| | 04 Nov 2003| 04 Nov 2003
Alcatel| | 04 Nov 2003| 04 Nov 2003
Cisco Systems Inc.| | 04 Nov 2003| 04 Nov 2003
Hewlett-Packard Company| | 04 Nov 2003| 04 Nov 2003
Microsoft Corporation| | -| 04 Nov 2003
SuSE Inc.| | 04 Nov 2003| 04 Nov 2003
If you are a vendor and your product is affected, let us know.

CVSS Metrics

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

References

  • <http://www.openssl.org/news/secadv_20031104.txt>
  • <http://www.uniras.gov.uk/vuls/2003/006489/openssl2.htm>
  • <http://www.itu.int/ITU-T/asn1/>
  • <http://www.itu.int/ITU-T/studygroups/com10/languages/>

Credit

This vulnerability was discoverd by NISCC and Novell. Thanks to NISCC and OpenSSL for information used in this document.

This document was written by Art Manion.

Other Information

  • CVE IDs: CAN-2003-0851
  • Date Public: 04 Nov 2003
  • Date First Published: 04 Nov 2003
  • Date Last Updated: 05 Nov 2003
  • Severity Metric: 3.23
  • Document Revision: 20