summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>2018-08-22 17:30:31 +0530
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-08-23 07:50:01 +0100
commit79c8c364719440bc42f551a14b40bb7bae8901dd (patch)
tree41fe7c265d15921b5e9eb9110c1bd37de6e63d2d
parent2128c21a0cffea13c36f0c4453213e005cfb0a60 (diff)
downloadpoky-79c8c364719440bc42f551a14b40bb7bae8901dd.tar.gz
libarchive: CVE-2017-14503
Reject LHA archive entries with negative size. Affects libarchive = 3.3.2 (From OE-Core rev: d6479f5d2e6de17bac8662f5057d87176524c6fa) Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch33
-rw-r--r--meta/recipes-extended/libarchive/libarchive_3.3.2.bb1
2 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch b/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch
new file mode 100644
index 0000000000..779ca854eb
--- /dev/null
+++ b/meta/recipes-extended/libarchive/libarchive/CVE-2017-14503.patch
@@ -0,0 +1,33 @@
1From 2c8c83b9731ff822fad6cc8c670ea5519c366a14 Mon Sep 17 00:00:00 2001
2From: Joerg Sonnenberger <joerg@bec.de>
3Date: Thu, 19 Jul 2018 21:14:53 +0200
4Subject: [PATCH] Reject LHA archive entries with negative size.
5
6CVE: CVE-2017-14503
7Upstream-Status: Backport [https://github.com/libarchive/libarchive/commit/2c8c83b9731ff822fad6cc8c670ea5519c366a14]
8
9Signed-off-by: Jagadeesh Krishnanjanappa <jkrishnanjanappa@mvista.com>
10---
11 libarchive/archive_read_support_format_lha.c | 6 ++++++
12 1 file changed, 6 insertions(+)
13
14diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c
15index b8ef4ae1..95c99bb1 100644
16--- a/libarchive/archive_read_support_format_lha.c
17+++ b/libarchive/archive_read_support_format_lha.c
18@@ -701,6 +701,12 @@ archive_read_format_lha_read_header(struct archive_read *a,
19 * Prepare variables used to read a file content.
20 */
21 lha->entry_bytes_remaining = lha->compsize;
22+ if (lha->entry_bytes_remaining < 0) {
23+ archive_set_error(&a->archive,
24+ ARCHIVE_ERRNO_FILE_FORMAT,
25+ "Invalid LHa entry size");
26+ return (ARCHIVE_FATAL);
27+ }
28 lha->entry_offset = 0;
29 lha->entry_crc_calculated = 0;
30
31--
322.13.3
33
diff --git a/meta/recipes-extended/libarchive/libarchive_3.3.2.bb b/meta/recipes-extended/libarchive/libarchive_3.3.2.bb
index 5daca2731e..3269716473 100644
--- a/meta/recipes-extended/libarchive/libarchive_3.3.2.bb
+++ b/meta/recipes-extended/libarchive/libarchive_3.3.2.bb
@@ -36,6 +36,7 @@ SRC_URI = "http://libarchive.org/downloads/libarchive-${PV}.tar.gz \
36 file://CVE-2017-14166.patch \ 36 file://CVE-2017-14166.patch \
37 file://CVE-2017-14502.patch \ 37 file://CVE-2017-14502.patch \
38 file://non-recursive-extract-and-list.patch \ 38 file://non-recursive-extract-and-list.patch \
39 file://CVE-2017-14503.patch \
39 " 40 "
40 41
41SRC_URI[md5sum] = "4583bd6b2ebf7e0e8963d90879eb1b27" 42SRC_URI[md5sum] = "4583bd6b2ebf7e0e8963d90879eb1b27"