CVE-2012-2333: Medium severity openssl vulnerability
Integer underflow in OpenSSL before 0.9.8x, 1.0.0 before 1.0.0j, and 1.0.1 before 1.0.1c, when TLS 1.1, TLS 1.2, or DTLS is used with CBC encryption, allows remote attackers to cause a denial of service (buffer over-read) or possibly have unspecified other impact via a crafted TLS packet that is not properly handled during a certain explicit IV calculation.
Other sources
It was discovered that OpenSSL did not properly handle TLS record length values from the received TLS packets. After subtracting the number of padding bytes from the record length value, it did not check the resulting record length before subtracting the size of explicit IV (initialization vector for CBC encryption modes). This could result in an integer underflow of the record length value, leading to a buffer over-read and out-of-bounds access. A remote TLS peer could use this to crash an application using OpenSSL (usually a TLS or DTLS server) by sending a specially TLS packet.
Explicit IV is used in TLS 1.2, 1.1 and DTLS. The openssl packages in Red Hat Enterprise Linux 3, 4, 5, and 6 only support TLS 1.0 and do not support TLS 1.1 and 1.2 and hence are not affected by the TLS part of this problem. TLS versions 1.1 and 1.2 support was introduced upstream in OpenSSL version 1.0.1. That version is currently only available in Fedora Rawhide/18.
The support for DTLS (Datagram Transport Layer Security) is enabled in openssl packages in Red Hat Enterprise Linux 5 and 6 and those versions are affected by the DTLS part of this problem. Applications using openssl packages in Red Hat Enterprise Linux 5 and 6 to provide TLS/SSL service (such as httpd) are not affected by this issue.
Upstream fix: http://cvs.openssl.org/chngview?cn=22538 (0.9.8) http://cvs.openssl.org/chngview?cn=22547 (1.0.1)
This was fixed upstream in versions: 0.9.8x, 1.0.0j and 1.0.1c
Acknowledgement:
Red Hat would like to thank the OpenSSL project for reporting this issue. Upstream acknowledges Codenomicon as the original reporter.
— Red Hat
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2012-2333?
The severity of CVE-2012-2333 is critical as it allows remote attackers to cause a denial of service through buffer over-read.
How do I fix CVE-2012-2333?
To fix CVE-2012-2333, upgrade OpenSSL to version 0.9.8x, 1.0.0j, or 1.0.1c or later.
What versions of OpenSSL are affected by CVE-2012-2333?
CVE-2012-2333 affects OpenSSL versions prior to 0.9.8x, 1.0.0 before 1.0.0j, and 1.0.1 before 1.0.1c.
What types of attacks are possible due to CVE-2012-2333?
CVE-2012-2333 allows attackers to cause a denial of service or potentially lead to unspecified other impacts via crafted TLS packets.
Is CVE-2012-2333 relevant for TLS 1.1 and TLS 1.2 users?
Yes, CVE-2012-2333 is particularly relevant for users of TLS 1.1 and TLS 1.2 with CBC encryption.