summaryrefslogtreecommitdiffstats
path: root/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch')
-rw-r--r--meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch51
1 files changed, 51 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch b/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch
new file mode 100644
index 0000000000..088b357b25
--- /dev/null
+++ b/meta/recipes-multimedia/ffmpeg/ffmpeg/CVE-2017-14056.patch
@@ -0,0 +1,51 @@
1From 96f24d1bee7fe7bac08e2b7c74db1a046c9dc0de Mon Sep 17 00:00:00 2001
2From: =?UTF-8?q?=E5=AD=99=E6=B5=A9=20and=20=E5=BC=A0=E6=B4=AA=E4=BA=AE=28?=
3 =?UTF-8?q?=E6=9C=9B=E5=88=9D=29?= <tony.sh and wangchu.zhl@alibaba-inc.com>
4Date: Fri, 25 Aug 2017 01:15:29 +0200
5Subject: [PATCH] avformat/rl2: Fix DoS due to lack of eof check
6
7Fixes: loop.rl2
8
9Found-by: Xiaohei and Wangchu from Alibaba Security Team
10Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
11
12CVE: CVE-2017-14056
13Upstream-Status: Backport
14
15Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
16---
17 libavformat/rl2.c | 15 ++++++++++++---
18 1 file changed, 12 insertions(+), 3 deletions(-)
19
20diff --git a/libavformat/rl2.c b/libavformat/rl2.c
21index 0bec8f1..eb1682d 100644
22--- a/libavformat/rl2.c
23+++ b/libavformat/rl2.c
24@@ -170,12 +170,21 @@ static av_cold int rl2_read_header(AVFormatContext *s)
25 }
26
27 /** read offset and size tables */
28- for(i=0; i < frame_count;i++)
29+ for(i=0; i < frame_count;i++) {
30+ if (avio_feof(pb))
31+ return AVERROR_INVALIDDATA;
32 chunk_size[i] = avio_rl32(pb);
33- for(i=0; i < frame_count;i++)
34+ }
35+ for(i=0; i < frame_count;i++) {
36+ if (avio_feof(pb))
37+ return AVERROR_INVALIDDATA;
38 chunk_offset[i] = avio_rl32(pb);
39- for(i=0; i < frame_count;i++)
40+ }
41+ for(i=0; i < frame_count;i++) {
42+ if (avio_feof(pb))
43+ return AVERROR_INVALIDDATA;
44 audio_size[i] = avio_rl32(pb) & 0xFFFF;
45+ }
46
47 /** build the sample index */
48 for(i=0;i<frame_count;i++){
49--
502.1.0
51