diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-support/curl/curl/CVE-2017-1000100.patch | 50 | ||||
-rw-r--r-- | meta/recipes-support/curl/curl_7.53.1.bb | 4 |
2 files changed, 53 insertions, 1 deletions
diff --git a/meta/recipes-support/curl/curl/CVE-2017-1000100.patch b/meta/recipes-support/curl/curl/CVE-2017-1000100.patch new file mode 100644 index 0000000000..508df8c7db --- /dev/null +++ b/meta/recipes-support/curl/curl/CVE-2017-1000100.patch | |||
@@ -0,0 +1,50 @@ | |||
1 | From 358b2b131ad6c095696f20dcfa62b8305263f898 Mon Sep 17 00:00:00 2001 | ||
2 | From: Daniel Stenberg <daniel@haxx.se> | ||
3 | Date: Tue, 1 Aug 2017 17:16:46 +0200 | ||
4 | Subject: [PATCH] tftp: reject file name lengths that don't fit | ||
5 | |||
6 | ... and thereby avoid telling send() to send off more bytes than the | ||
7 | size of the buffer! | ||
8 | |||
9 | CVE-2017-1000100 | ||
10 | |||
11 | Bug: https://curl.haxx.se/docs/adv_20170809B.html | ||
12 | Reported-by: Even Rouault | ||
13 | |||
14 | Credit to OSS-Fuzz for the discovery | ||
15 | |||
16 | Upstream-Status: Backport | ||
17 | https://github.com/curl/curl/commit/358b2b131ad6c095696f20dcfa62b8305263f898 | ||
18 | |||
19 | CVE: CVE-2017-1000100 | ||
20 | Signed-off-by: Armin Kuster <akuster@mvista.com> | ||
21 | |||
22 | --- | ||
23 | lib/tftp.c | 7 ++++++- | ||
24 | 1 file changed, 6 insertions(+), 1 deletion(-) | ||
25 | |||
26 | Index: curl-7.53.1/lib/tftp.c | ||
27 | =================================================================== | ||
28 | --- curl-7.53.1.orig/lib/tftp.c | ||
29 | +++ curl-7.53.1/lib/tftp.c | ||
30 | @@ -5,7 +5,7 @@ | ||
31 | * | (__| |_| | _ <| |___ | ||
32 | * \___|\___/|_| \_\_____| | ||
33 | * | ||
34 | - * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al. | ||
35 | + * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al. | ||
36 | * | ||
37 | * This software is licensed as described in the file COPYING, which | ||
38 | * you should have received as part of this distribution. The terms | ||
39 | @@ -490,6 +490,11 @@ static CURLcode tftp_send_first(tftp_sta | ||
40 | if(result) | ||
41 | return result; | ||
42 | |||
43 | + if(strlen(filename) > (state->blksize - strlen(mode) - 4)) { | ||
44 | + failf(data, "TFTP file name too long\n"); | ||
45 | + return CURLE_TFTP_ILLEGAL; /* too long file name field */ | ||
46 | + } | ||
47 | + | ||
48 | snprintf((char *)state->spacket.data+2, | ||
49 | state->blksize, | ||
50 | "%s%c%s%c", filename, '\0', mode, '\0'); | ||
diff --git a/meta/recipes-support/curl/curl_7.53.1.bb b/meta/recipes-support/curl/curl_7.53.1.bb index a3d7cb949d..72828fe814 100644 --- a/meta/recipes-support/curl/curl_7.53.1.bb +++ b/meta/recipes-support/curl/curl_7.53.1.bb | |||
@@ -12,7 +12,9 @@ SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \ | |||
12 | # curl likes to set -g0 in CFLAGS, so we stop it | 12 | # curl likes to set -g0 in CFLAGS, so we stop it |
13 | # from mucking around with debug options | 13 | # from mucking around with debug options |
14 | # | 14 | # |
15 | SRC_URI += " file://configure_ac.patch" | 15 | SRC_URI += " file://configure_ac.patch \ |
16 | file://CVE-2017-1000100.patch \ | ||
17 | " | ||
16 | 18 | ||
17 | SRC_URI[md5sum] = "fb1f03a142236840c1a77c035fa4c542" | 19 | SRC_URI[md5sum] = "fb1f03a142236840c1a77c035fa4c542" |
18 | SRC_URI[sha256sum] = "1c7207c06d75e9136a944a2e0528337ce76f15b9ec9ae4bb30d703b59bf530e8" | 20 | SRC_URI[sha256sum] = "1c7207c06d75e9136a944a2e0528337ce76f15b9ec9ae4bb30d703b59bf530e8" |