summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLee Chee Yang <chee.yang.lee@intel.com>2020-02-21 21:57:23 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2020-04-08 23:07:12 (GMT)
commitb83baaf23d1e7b2e24dddc8b5efec0d0e4c9780e (patch)
treec3a5ad6d886b3373440d996ca0f681463e6b7d6b
parentca1f5181476bd3066e159a3cf16dffb645dd9457 (diff)
downloadpoky-b83baaf23d1e7b2e24dddc8b5efec0d0e4c9780e.tar.gz
libxml2: Fix CVE-2019-20388
see: https://gitlab.gnome.org/GNOME/libxml2/merge_requests/68 (From OE-Core rev: 6c4477563bc418ec215671d6960e6e8d6bdd074b) Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Adrian Bunk <bunk@stusta.de> Signed-off-by: Armin Kuster <akuster808@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-core/libxml/libxml2/CVE-2019-20388.patch37
-rw-r--r--meta/recipes-core/libxml/libxml2_2.9.8.bb1
2 files changed, 38 insertions, 0 deletions
diff --git a/meta/recipes-core/libxml/libxml2/CVE-2019-20388.patch b/meta/recipes-core/libxml/libxml2/CVE-2019-20388.patch
new file mode 100644
index 0000000..4ee2d4f
--- /dev/null
+++ b/meta/recipes-core/libxml/libxml2/CVE-2019-20388.patch
@@ -0,0 +1,37 @@
1From 7ffcd44d7e6c46704f8af0321d9314cd26e0e18a Mon Sep 17 00:00:00 2001
2From: Zhipeng Xie <xiezhipeng1@huawei.com>
3Date: Tue, 20 Aug 2019 16:33:06 +0800
4Subject: [PATCH] Fix memory leak in xmlSchemaValidateStream
5
6When ctxt->schema is NULL, xmlSchemaSAXPlug->xmlSchemaPreRun
7alloc a new schema for ctxt->schema and set vctxt->xsiAssemble
8to 1. Then xmlSchemaVStart->xmlSchemaPreRun initialize
9vctxt->xsiAssemble to 0 again which cause the alloced schema
10can not be freed anymore.
11
12Found with libFuzzer.
13
14Upstream-Status: Accepted [https://gitlab.gnome.org/GNOME/libxml2/commit/7ffcd44d7e6c46704f8af0321d9314cd26e0e18a]
15CVE: CVE-2019-20388
16
17Signed-off-by: Zhipeng Xie <xiezhipeng1@huawei.com>
18Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
19---
20 xmlschemas.c | 1 -
21 1 file changed, 1 deletion(-)
22
23diff --git a/xmlschemas.c b/xmlschemas.c
24index 301c8449..39d92182 100644
25--- a/xmlschemas.c
26+++ b/xmlschemas.c
27@@ -28090,7 +28090,6 @@ xmlSchemaPreRun(xmlSchemaValidCtxtPtr vctxt) {
28 vctxt->nberrors = 0;
29 vctxt->depth = -1;
30 vctxt->skipDepth = -1;
31- vctxt->xsiAssemble = 0;
32 vctxt->hasKeyrefs = 0;
33 #ifdef ENABLE_IDC_NODE_TABLES_TEST
34 vctxt->createIDCNodeTables = 1;
35--
362.24.1
37
diff --git a/meta/recipes-core/libxml/libxml2_2.9.8.bb b/meta/recipes-core/libxml/libxml2_2.9.8.bb
index 618f307..ab47a50 100644
--- a/meta/recipes-core/libxml/libxml2_2.9.8.bb
+++ b/meta/recipes-core/libxml/libxml2_2.9.8.bb
@@ -25,6 +25,7 @@ SRC_URI = "http://www.xmlsoft.org/sources/libxml2-${PV}.tar.gz;name=libtar \
25 file://0001-Fix-infinite-loop-in-LZMA-decompression.patch \ 25 file://0001-Fix-infinite-loop-in-LZMA-decompression.patch \
26 file://fix-CVE-2019-19956.patch \ 26 file://fix-CVE-2019-19956.patch \
27 file://CVE-2020-7595.patch \ 27 file://CVE-2020-7595.patch \
28 file://CVE-2019-20388.patch \
28 " 29 "
29 30
30SRC_URI[libtar.md5sum] = "b786e353e2aa1b872d70d5d1ca0c740d" 31SRC_URI[libtar.md5sum] = "b786e353e2aa1b872d70d5d1ca0c740d"