diff options
author | Yue Tao <Yue.Tao@windriver.com> | 2014-03-26 17:08:45 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-03-27 09:42:04 +0000 |
commit | f6548c56cbbcbcab7ad214f51b065487c62e2311 (patch) | |
tree | 49230161d2624ece01d68148df61333a0fbf13b7 | |
parent | 61fd2e4a2b0ab21eabbc1da13a221bf18ac5f0cf (diff) | |
download | poky-f6548c56cbbcbcab7ad214f51b065487c62e2311.tar.gz |
Security Advisory - openssl - CVE-2013-6449
The ssl_get_algorithm2 function in ssl/s3_lib.c in OpenSSL before 1.0.2
obtains a certain version number from an incorrect data structure, which
allows remote attackers to cause a denial of service (daemon crash) via
crafted traffic from a TLS 1.2 client.
(From OE-Core rev: 3e0ac7357a962e3ef6595d21ec4843b078a764dd)
Signed-off-by: Yue Tao <Yue.Tao@windriver.com>
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-connectivity/openssl/openssl-1.0.1e/0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch | 33 | ||||
-rw-r--r-- | meta/recipes-connectivity/openssl/openssl_1.0.1e.bb | 1 |
2 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-connectivity/openssl/openssl-1.0.1e/0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch b/meta/recipes-connectivity/openssl/openssl-1.0.1e/0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch new file mode 100644 index 0000000000..e5a8ade936 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-1.0.1e/0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch | |||
@@ -0,0 +1,33 @@ | |||
1 | From ca989269a2876bae79393bd54c3e72d49975fc75 Mon Sep 17 00:00:00 2001 | ||
2 | From: "Dr. Stephen Henson" <steve@openssl.org> | ||
3 | Date: Thu, 19 Dec 2013 14:37:39 +0000 | ||
4 | Subject: [PATCH] Use version in SSL_METHOD not SSL structure. | ||
5 | |||
6 | Upstream-Status: Backport | ||
7 | commit ca989269a2876bae79393bd54c3e72d49975fc75 upstream | ||
8 | |||
9 | When deciding whether to use TLS 1.2 PRF and record hash algorithms | ||
10 | use the version number in the corresponding SSL_METHOD structure | ||
11 | instead of the SSL structure. The SSL structure version is sometimes | ||
12 | inaccurate. Note: OpenSSL 1.0.2 and later effectively do this already. | ||
13 | (CVE-2013-6449) | ||
14 | --- | ||
15 | ssl/s3_lib.c | 2 +- | ||
16 | 1 files changed, 1 insertions(+), 1 deletions(-) | ||
17 | |||
18 | diff --git a/ssl/s3_lib.c b/ssl/s3_lib.c | ||
19 | index bf832bb..c4ef273 100644 | ||
20 | --- a/ssl/s3_lib.c | ||
21 | +++ b/ssl/s3_lib.c | ||
22 | @@ -4286,7 +4286,7 @@ need to go to SSL_ST_ACCEPT. | ||
23 | long ssl_get_algorithm2(SSL *s) | ||
24 | { | ||
25 | long alg2 = s->s3->tmp.new_cipher->algorithm2; | ||
26 | - if (TLS1_get_version(s) >= TLS1_2_VERSION && | ||
27 | + if (s->method->version == TLS1_2_VERSION && | ||
28 | alg2 == (SSL_HANDSHAKE_MAC_DEFAULT|TLS1_PRF)) | ||
29 | return SSL_HANDSHAKE_MAC_SHA256 | TLS1_PRF_SHA256; | ||
30 | return alg2; | ||
31 | -- | ||
32 | 1.7.5.4 | ||
33 | |||
diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb b/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb index 4b9fd369de..4787c67fff 100644 --- a/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb +++ b/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb | |||
@@ -37,6 +37,7 @@ SRC_URI += "file://configure-targets.patch \ | |||
37 | file://find.pl \ | 37 | file://find.pl \ |
38 | file://0001-Fix-for-TLS-record-tampering-bug-CVE-2013-4353.patch \ | 38 | file://0001-Fix-for-TLS-record-tampering-bug-CVE-2013-4353.patch \ |
39 | file://0001-Fix-DTLS-retransmission-from-previous-session.patch \ | 39 | file://0001-Fix-DTLS-retransmission-from-previous-session.patch \ |
40 | file://0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch \ | ||
40 | " | 41 | " |
41 | 42 | ||
42 | SRC_URI[md5sum] = "66bf6f10f060d561929de96f9dfe5b8c" | 43 | SRC_URI[md5sum] = "66bf6f10f060d561929de96f9dfe5b8c" |