summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTanu Kaskinen <tanuk@iki.fi>2018-03-31 05:21:30 (GMT)
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-04-02 16:06:25 (GMT)
commit20d103d88179e2c46e9e014eb629db411d4544f3 (patch)
treee2fca21b072ea8c8d7cc6054a546eb84c0e15877
parente04867e26fd30ad4f30000a69d27f0ba7d76df89 (diff)
downloadpoky-20d103d88179e2c46e9e014eb629db411d4544f3.tar.gz
libvorbis: CVE-2017-14633
In Xiph.Org libvorbis 1.3.5, an out-of-bounds array read vulnerability exists in the function mapping0_forward() in mapping0.c, which may lead to DoS when operating on a crafted audio file with vorbis_analysis(). References: https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-14633 (From OE-Core rev: 3ea65ee8b31a16a20f5c28c19f4c758f8deabf6e) Signed-off-by: Tanu Kaskinen <tanuk@iki.fi> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-multimedia/libvorbis/libvorbis/CVE-2017-14633.patch42
-rw-r--r--meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb1
2 files changed, 43 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/libvorbis/libvorbis/CVE-2017-14633.patch b/meta/recipes-multimedia/libvorbis/libvorbis/CVE-2017-14633.patch
new file mode 100644
index 0000000..9c9e688
--- /dev/null
+++ b/meta/recipes-multimedia/libvorbis/libvorbis/CVE-2017-14633.patch
@@ -0,0 +1,42 @@
1From 07eda55f336e5c44dfc0e4a1e21628faed7255fa Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org>
3Date: Tue, 31 Oct 2017 18:32:46 +0100
4Subject: [PATCH] CVE-2017-14633: Don't allow for more than 256 channels
5
6Otherwise
7
8 for(i=0;i<vi->channels;i++){
9 /* the encoder setup assumes that all the modes used by any
10 specific bitrate tweaking use the same floor */
11 int submap=info->chmuxlist[i];
12
13overreads later in mapping0_forward since chmuxlist is a fixed array of
14256 elements max.
15
16Upstream-Status: Backport
17CVE: CVE-2017-14633
18
19Reference to upstream patch:
20https://git.xiph.org/?p=vorbis.git;a=commitdiff;h=667ceb4aab60c1f74060143bb24e5f427b3cce5f
21
22Signed-off-by: Tanu Kaskinen <tanuk@iki.fi>
23---
24 lib/info.c | 2 +-
25 1 file changed, 1 insertion(+), 1 deletion(-)
26
27diff --git a/lib/info.c b/lib/info.c
28index e447a0c..81b7557 100644
29--- a/lib/info.c
30+++ b/lib/info.c
31@@ -583,7 +583,7 @@ int vorbis_analysis_headerout(vorbis_dsp_state *v,
32 oggpack_buffer opb;
33 private_state *b=v->backend_state;
34
35- if(!b||vi->channels<=0){
36+ if(!b||vi->channels<=0||vi->channels>256){
37 ret=OV_EFAULT;
38 goto err_out;
39 }
40--
412.16.2
42
diff --git a/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb b/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
index 56c5b0a..73f9d1a 100644
--- a/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
+++ b/meta/recipes-multimedia/libvorbis/libvorbis_1.3.5.bb
@@ -12,6 +12,7 @@ DEPENDS = "libogg"
12 12
13SRC_URI = "http://downloads.xiph.org/releases/vorbis/${BP}.tar.xz \ 13SRC_URI = "http://downloads.xiph.org/releases/vorbis/${BP}.tar.xz \
14 file://0001-configure-Check-for-clang.patch \ 14 file://0001-configure-Check-for-clang.patch \
15 file://CVE-2017-14633.patch \
15 " 16 "
16SRC_URI[md5sum] = "28cb28097c07a735d6af56e598e1c90f" 17SRC_URI[md5sum] = "28cb28097c07a735d6af56e598e1c90f"
17SRC_URI[sha256sum] = "54f94a9527ff0a88477be0a71c0bab09a4c3febe0ed878b24824906cd4b0e1d1" 18SRC_URI[sha256sum] = "54f94a9527ff0a88477be0a71c0bab09a4c3febe0ed878b24824906cd4b0e1d1"