Date: Fri, 3 Oct 2003 15:49:33 -0700 (PDT)
From: FreeBSD Security Advisories <security-advisories@freebsd.org.>
To: Bugtraq <bugtraq@securityfocus.com.>
Subject: FreeBSD Security Advisory FreeBSD-SA-03:18.openssl
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
FreeBSD-SA-03:18.openssl Security Advisory
The FreeBSD Project
Topic: OpenSSL vulnerabilities in ASN.1 parsing
Category: crypto
Module: openssl
Announced: 2003-10-03
Credits: NISCC <URL:http://www.niscc.gov.uk>
Dr. Stephen Henson <steve@openssl.org.>
Affects: FreeBSD versions 4.0-RELEASE through 4.8-RELEASE,
5.0-RELEASE, and 5.1-RELEASE
4-STABLE prior to the correction date
Corrected: 2003-10-03 01:32:13 UTC (RELENG_4, 4.9-RC)
2003-10-03 18:13:19 UTC (RELENG_5_1, 5.1-RELEASE-p10)
2003-10-03 20:22:27 UTC (RELENG_5_0, 5.0-RELEASE-p18)
2003-10-03 18:14:26 UTC (RELENG_4_8, 4.8-RELEASE-p13)
2003-10-03 20:24:31 UTC (RELENG_4_7, 4.7-RELEASE-p23)
2003-10-03 20:24:59 UTC (RELENG_4_6, 4.6.2-RELEASE-p26)
FreeBSD only: NO
I. Background
FreeBSD includes software from the OpenSSL Project. The OpenSSL
Project is a collaborative effort to develop a robust, commercial-
grade, full-featured, and Open Source toolkit implementing the Secure
Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1)
protocols as well as a full-strength general purpose cryptography
library.
II. Problem Description
This advisory addresses four separate flaws recently fixed in OpenSSL.
The flaws are described in the following excerpt from the OpenSSL.org
advisory (see references):
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.
2. Unusual ASN.1 tag values can cause an out of bounds read
under certain circumstances, resulting in a denial of service
vulnerability.
3. A malformed public key in a certificate will crash the verify
code if it is set to ignore public key decoding errors. Public
key decode errors are not normally ignored, except for
debugging purposes, so this is unlikely to affect production
code. Exploitation of an affected application would result in a
denial of service vulnerability.
4. Due to an error in the SSL/TLS protocol handling, a server
will parse a client certificate when one is not specifically
requested. This by itself is not strictly speaking a vulnerability
but it does mean that *all* SSL/TLS servers that use OpenSSL can be
attacked using vulnerabilities 1, 2 and 3 even if they don't enable
client authentication.
III. Impact
A remote attacker may create a malicious ASN.1 encoded message that
will cause an OpenSSL-using application to crash, or even perhaps
execute arbitrary code with the privileges of the application.
Only applications that use OpenSSL's ASN.1 or X.509 handling code
are affected. Applications that use other portions of OpenSSL
are unaffected (e.g. Apache+mod_ssl is affected, while OpenSSH is
unaffected).
IV. Workaround
No workaround is available.
V. Solution
Perform one of the following:
1) Upgrade your vulnerable system to 4-STABLE; or to the RELENG_5_1,
RELENG_4_8, or RELENG_4_7 security branch dated after the correction
date.
2) To patch your present system:
The following patches have been verified to apply to FreeBSD 4.6, 4.7,
4.8, 5.0, and 5.1 systems.
a) Download the relevant patch from the location below, and verify the
detached PGP signature using your PGP utility.
[FreeBSD 4.6, 4.7, 5.0 -- be sure you have previously applied the
patches for advisories FreeBSD-SA-03:02 and FreeBSD-SA-03:06 before
applying this patch.]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:18/openssl96.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:18/openssl96.patch.asc
[FreeBSD 4.8, 5.1]
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:18/openssl97.patch
# fetch ftp://ftp.FreeBSD.org/pub/FreeBSD/CERT/patches/SA-03:18/openssl97.patch.asc
b) Execute the following commands as root:
# cd /usr/src
# patch < /path/to/patch
c) Recompile the operating system as described in
<URL: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/makeworld.html >.
Note that any statically linked applications that are not part of the
base system (i.e. from the Ports Collection or other 3rd-party sources)
must be recompiled.
All affected applications must be restarted for them to use the
corrected library. Though not required, rebooting may be the easiest
way to accomplish this.
VI. Correction details
The following list contains the revision numbers of each file that was
corrected in FreeBSD.
Branch Revision
Path
- -------------------------------------------------------------------------
RELENG_5_1
src/UPDATING 1.251.2.12
src/crypto/openssl/crypto/asn1/asn1_lib.c 1.1.1.8.2.1
src/crypto/openssl/crypto/asn1/tasn_dec.c 1.1.1.1.4.1
src/crypto/openssl/crypto/x509/x509_vfy.c 1.1.1.5.2.1
src/crypto/openssl/ssl/s3_srvr.c 1.1.1.11.2.1
src/sys/conf/newvers.sh 1.50.2.12
RELENG_5_0
src/UPDATING 1.229.2.24
src/crypto/openssl/crypto/asn1/asn1_lib.c 1.1.1.7.2.1
src/crypto/openssl/crypto/x509/x509_vfy.c 1.1.1.4.2.2
src/crypto/openssl/ssl/s3_srvr.c 1.1.1.9.2.3
src/sys/conf/newvers.sh 1.48.2.19
RELENG_4_8
src/UPDATING 1.73.2.80.2.15
src/crypto/openssl/crypto/asn1/asn1_lib.c 1.1.1.1.2.7.2.1
src/crypto/openssl/crypto/asn1/tasn_dec.c 1.1.1.1.2.1.2.1
src/crypto/openssl/crypto/x509/x509_vfy.c 1.1.1.1.2.4.2.1
src/crypto/openssl/ssl/s3_srvr.c 1.1.1.1.2.7.2.1
src/sys/conf/newvers.sh 1.44.2.29.2.14
RELENG_4_7
src/UPDATING 1.73.2.74.2.26
src/crypto/openssl/crypto/asn1/asn1_lib.c 1.1.1.1.2.6.2.1
src/crypto/openssl/crypto/x509/x509_vfy.c 1.1.1.1.2.3.2.2
src/crypto/openssl/ssl/s3_srvr.c 1.1.1.1.2.5.2.3
src/sys/conf/newvers.sh 1.44.2.26.2.25
RELENG_4_6
src/UPDATING 1.73.2.68.2.55
src/crypto/openssl/crypto/asn1/asn1_lib.c 1.1.1.1.2.3.6.4
src/crypto/openssl/crypto/x509/x509_vfy.c 1.1.1.1.2.2.8.3
src/crypto/openssl/ssl/s3_srvr.c 1.1.1.1.2.3.6.4
src/sys/conf/newvers.sh 1.44.2.23.2.43
- -------------------------------------------------------------------------
VII. References
<URL: http://www.openssl.org/news/secadv_20030930.txt >
<URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0545 >
<URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0543 >
<URL: http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2003-0544 >
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (FreeBSD)
iD4DBQE/fe+bFdaIBMps37IRAmp8AKCDqpNf+MCJ6K1eFyWPul/cnjSzTgCY8hd6
IIOxA/5Hl4quuh64va5/5A==
=1DI+
-----END PGP SIGNATURE-----