summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSona Sarmadi <sona.sarmadi@enea.com>2016-11-15 10:08:11 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-05-18 13:14:20 +0100
commit9a72d46aed32181b8863a407fb936df4e97f1282 (patch)
tree5c2507a61218fa0b5f77b3ed6fbfb778d29c9df8
parentad2cce0f1ecdb8c4f75f32c04d132d0eea076bb5 (diff)
downloadpoky-9a72d46aed32181b8863a407fb936df4e97f1282.tar.gz
curl: CVE-2016-8616
case insensitive password comparison Affected versions: curl 7.7 to and including 7.50.3 Reference: https://curl.haxx.se/docs/adv_20161102B.html (From OE-Core rev: 0bec84bd79b9e96500f304dec9eecaf7b11424f5) Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-support/curl/curl/CVE-2016-8616.patch49
-rw-r--r--meta/recipes-support/curl/curl_7.47.1.bb1
2 files changed, 50 insertions, 0 deletions
diff --git a/meta/recipes-support/curl/curl/CVE-2016-8616.patch b/meta/recipes-support/curl/curl/CVE-2016-8616.patch
new file mode 100644
index 0000000000..d5d78fc73f
--- /dev/null
+++ b/meta/recipes-support/curl/curl/CVE-2016-8616.patch
@@ -0,0 +1,49 @@
1From b3ee26c5df75d97f6895e6ec4538894ebaf76e48 Mon Sep 17 00:00:00 2001
2From: Daniel Stenberg <daniel@haxx.se>
3Date: Tue, 27 Sep 2016 18:01:53 +0200
4Subject: [PATCH] connectionexists: use case sensitive user/password
5 comparisons
6
7CVE: CVE-2016-8616
8Upstream-Status: Backport
9
10Bug: https://curl.haxx.se/docs/adv_20161102B.html
11Reported-by: Cure53
12Signed-off-by: Sona Sarmadi <sona.sarmadi@enea.com>
13
14diff -ruN a/lib/url.c b/lib/url.c
15--- a/lib/url.c 2016-11-07 08:50:23.030126833 +0100
16+++ b/lib/url.c 2016-11-07 09:16:20.459836564 +0100
17@@ -3305,8 +3305,8 @@
18 if(!(needle->handler->flags & PROTOPT_CREDSPERREQUEST)) {
19 /* This protocol requires credentials per connection,
20 so verify that we're using the same name and password as well */
21- if(!strequal(needle->user, check->user) ||
22- !strequal(needle->passwd, check->passwd)) {
23+ if(strcmp(needle->user, check->user) ||
24+ strcmp(needle->passwd, check->passwd)) {
25 /* one of them was different */
26 continue;
27 }
28@@ -3369,8 +3369,8 @@
29 possible. (Especially we must not reuse the same connection if
30 partway through a handshake!) */
31 if(wantNTLMhttp) {
32- if(!strequal(needle->user, check->user) ||
33- !strequal(needle->passwd, check->passwd))
34+ if(strcmp(needle->user, check->user) ||
35+ strcmp(needle->passwd, check->passwd))
36 continue;
37 }
38 else if(check->ntlm.state != NTLMSTATE_NONE) {
39@@ -3380,8 +3380,8 @@
40
41 /* Same for Proxy NTLM authentication */
42 if(wantProxyNTLMhttp) {
43- if(!strequal(needle->proxyuser, check->proxyuser) ||
44- !strequal(needle->proxypasswd, check->proxypasswd))
45+ if(strcmp(needle->proxyuser, check->proxyuser) ||
46+ strcmp(needle->proxypasswd, check->proxypasswd))
47 continue;
48 }
49 else if(check->proxyntlm.state != NTLMSTATE_NONE) {
diff --git a/meta/recipes-support/curl/curl_7.47.1.bb b/meta/recipes-support/curl/curl_7.47.1.bb
index 1f2758c9c5..20c3721d53 100644
--- a/meta/recipes-support/curl/curl_7.47.1.bb
+++ b/meta/recipes-support/curl/curl_7.47.1.bb
@@ -16,6 +16,7 @@ SRC_URI += " file://configure_ac.patch \
16 file://CVE-2016-5421.patch \ 16 file://CVE-2016-5421.patch \
17 file://CVE-2016-7141.patch \ 17 file://CVE-2016-7141.patch \
18 file://CVE-2016-8615.patch \ 18 file://CVE-2016-8615.patch \
19 file://CVE-2016-8616.patch \
19 " 20 "
20 21
21SRC_URI[md5sum] = "9ea3123449439bbd960cd25cf98796fb" 22SRC_URI[md5sum] = "9ea3123449439bbd960cd25cf98796fb"