diff options
author | Chen Qi <Qi.Chen@windriver.com> | 2019-02-25 10:37:08 -0600 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-03-24 16:49:54 +0000 |
commit | b3ed759360c8f5c4e4bf9eb939dd6617448d6bd7 (patch) | |
tree | 8da3e48ffb67f71d200866a70104d61a8c48bdfc | |
parent | 0e63d91b2b6c8a9afaec1988d8845643e3787af0 (diff) | |
download | poky-b3ed759360c8f5c4e4bf9eb939dd6617448d6bd7.tar.gz |
systemd: fix CVE-2018-15688
Backport patch to fix the following CVE.
CVE: CVE-2018-15688
(From OE-Core rev: d490839e881f3ff30a4bde8137cb04cb0fd37acd)
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Cherry-picked from thud 13591d7224393dc0ae529a03cdf74aceb3540ce9
Signed-off-by: George McCollister <george.mccollister@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-core/systemd/systemd/0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch | 39 | ||||
-rw-r--r-- | meta/recipes-core/systemd/systemd_237.bb | 1 |
2 files changed, 40 insertions, 0 deletions
diff --git a/meta/recipes-core/systemd/systemd/0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch b/meta/recipes-core/systemd/systemd/0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch new file mode 100644 index 0000000000..0c912f25df --- /dev/null +++ b/meta/recipes-core/systemd/systemd/0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch | |||
@@ -0,0 +1,39 @@ | |||
1 | From a2622b8398ba026faf481f5eddeb53231d9de4a7 Mon Sep 17 00:00:00 2001 | ||
2 | From: Lennart Poettering <lennart@poettering.net> | ||
3 | Date: Fri, 19 Oct 2018 12:12:33 +0200 | ||
4 | Subject: [PATCH] dhcp6: make sure we have enough space for the DHCP6 option | ||
5 | header | ||
6 | |||
7 | Fixes a vulnerability originally discovered by Felix Wilhelm from | ||
8 | Google. | ||
9 | |||
10 | CVE-2018-15688 | ||
11 | LP: #1795921 | ||
12 | https://bugzilla.redhat.com/show_bug.cgi?id=1639067 | ||
13 | |||
14 | (cherry picked from commit 4dac5eaba4e419b29c97da38a8b1f82336c2c892) | ||
15 | |||
16 | CVE: CVE-2018-15688 | ||
17 | Upstream-Status: Backport | ||
18 | |||
19 | Signed-off-by: Chen Qi <Qi.Chen@windriver.com> | ||
20 | --- | ||
21 | src/libsystemd-network/dhcp6-option.c | 2 +- | ||
22 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
23 | |||
24 | diff --git a/src/libsystemd-network/dhcp6-option.c b/src/libsystemd-network/dhcp6-option.c | ||
25 | index c4b402b..dcbaad0 100644 | ||
26 | --- a/src/libsystemd-network/dhcp6-option.c | ||
27 | +++ b/src/libsystemd-network/dhcp6-option.c | ||
28 | @@ -103,7 +103,7 @@ int dhcp6_option_append_ia(uint8_t **buf, size_t *buflen, DHCP6IA *ia) { | ||
29 | return -EINVAL; | ||
30 | } | ||
31 | |||
32 | - if (*buflen < len) | ||
33 | + if (*buflen < offsetof(DHCP6Option, data) + len) | ||
34 | return -ENOBUFS; | ||
35 | |||
36 | ia_hdr = *buf; | ||
37 | -- | ||
38 | 2.7.4 | ||
39 | |||
diff --git a/meta/recipes-core/systemd/systemd_237.bb b/meta/recipes-core/systemd/systemd_237.bb index 244776f0b6..0296174b09 100644 --- a/meta/recipes-core/systemd/systemd_237.bb +++ b/meta/recipes-core/systemd/systemd_237.bb | |||
@@ -56,6 +56,7 @@ SRC_URI += "file://touchscreen.rules \ | |||
56 | file://0035-Define-glibc-compatible-basename-for-non-glibc-syste.patch \ | 56 | file://0035-Define-glibc-compatible-basename-for-non-glibc-syste.patch \ |
57 | file://0001-core-when-deserializing-state-always-use-read_line-L.patch \ | 57 | file://0001-core-when-deserializing-state-always-use-read_line-L.patch \ |
58 | file://0001-chown-recursive-let-s-rework-the-recursive-logic-to-.patch \ | 58 | file://0001-chown-recursive-let-s-rework-the-recursive-logic-to-.patch \ |
59 | file://0001-dhcp6-make-sure-we-have-enough-space-for-the-DHCP6-o.patch \ | ||
59 | " | 60 | " |
60 | SRC_URI_append_qemuall = " file://0001-core-device.c-Change-the-default-device-timeout-to-2.patch" | 61 | SRC_URI_append_qemuall = " file://0001-core-device.c-Change-the-default-device-timeout-to-2.patch" |
61 | 62 | ||