From 381c6b89574df10411fa28a593a5c02cd169bf46 Mon Sep 17 00:00:00 2001 From: Yue Tao Date: Mon, 9 Jun 2014 16:53:48 +0100 Subject: [PATCH] openssl: fix for CVE-2010-5298 Race condition in the ssl3_read_bytes function in s3_pkt.c in OpenSSL through 1.0.1g, when SSL_MODE_RELEASE_BUFFERS is enabled, allows remote attackers to inject data across sessions or cause a denial of service (use-after-free and parsing error) via an SSL connection in a multithreaded environment. http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-5298 (From OE-Core master rev: 751f81ed8dc488c500837aeb3eb41ebf3237e10b) (From OE-Core rev: 3cc799213e6528fc9fb4a0c40a01a1817484f499) Signed-off-by: Yue Tao Signed-off-by: Roy Li Signed-off-by: Saul Wold Signed-off-by: Richard Purdie Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- .../openssl-CVE-2010-5298.patch | 24 +++++++++++++++++++ .../openssl/openssl_1.0.1e.bb | 1 + 2 files changed, 25 insertions(+) create mode 100644 meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-CVE-2010-5298.patch diff --git a/meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-CVE-2010-5298.patch b/meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-CVE-2010-5298.patch new file mode 100644 index 0000000000..417a774ba2 --- /dev/null +++ b/meta/recipes-connectivity/openssl/openssl-1.0.1e/openssl-CVE-2010-5298.patch @@ -0,0 +1,24 @@ +openssl fix for CVE-2010-5298 + +Upstream-Status: Backport + +Race condition in the ssl3_read_bytes function in s3_pkt.c in OpenSSL +through 1.0.1g, when SSL_MODE_RELEASE_BUFFERS is enabled, allows remote +attackers to inject data across sessions or cause a denial of service +(use-after-free and parsing error) via an SSL connection in a +multithreaded environment. + +http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2010-5298 + +Signed-off-by: Yue Tao +--- a/ssl/s3_pkt.c ++++ b/ssl/s3_pkt.c +@@ -1013,7 +1013,7 @@ start: + { + s->rstate=SSL_ST_READ_HEADER; + rr->off=0; +- if (s->mode & SSL_MODE_RELEASE_BUFFERS) ++ if (s->mode & SSL_MODE_RELEASE_BUFFERS && s->s3->rbuf.left == 0) + ssl3_release_read_buffer(s); + } + } diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb b/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb index 65083fb8bf..d639d0a6ad 100644 --- a/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb +++ b/meta/recipes-connectivity/openssl/openssl_1.0.1e.bb @@ -43,6 +43,7 @@ SRC_URI += "file://configure-targets.patch \ file://openssl-1.0.1e-cve-2014-0221.patch \ file://openssl-1.0.1e-cve-2014-0224.patch \ file://openssl-1.0.1e-cve-2014-3470.patch \ + file://openssl-CVE-2010-5298.patch \ " SRC_URI[md5sum] = "66bf6f10f060d561929de96f9dfe5b8c"