diff options
author | Zhixiong Chi <zhixiong.chi@windriver.com> | 2016-11-28 16:12:04 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-11-30 15:48:08 +0000 |
commit | 8a1dfae55b0239a233193d384ec1de2798446d3d (patch) | |
tree | c66d669f266942629a67b7a8d8e838f7ea91e7c6 | |
parent | 066ac716e397e685e429095e2899227c89852122 (diff) | |
download | poky-8a1dfae55b0239a233193d384ec1de2798446d3d.tar.gz |
tiff: Security fix CVE-2016-9540
tools/tiffcp.c in libtiff 4.0.6 has an out-of-bounds write on tiled
images with odd tile width versus image width. Reported as MSVR 35103,
aka "cpStripToTile heap-buffer-overflow."
External References:
https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-9540
Patch from:
https://github.com/vadz/libtiff/commit/5ad9d8016fbb60109302d558f7edb2cb2a3bb8e3
(From OE-Core rev: cc97dc66006c7892473e3b4790d05e12445bb927)
Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/recipes-multimedia/libtiff/files/CVE-2016-9540.patch | 60 | ||||
-rw-r--r-- | meta/recipes-multimedia/libtiff/tiff_4.0.6.bb | 1 |
2 files changed, 61 insertions, 0 deletions
diff --git a/meta/recipes-multimedia/libtiff/files/CVE-2016-9540.patch b/meta/recipes-multimedia/libtiff/files/CVE-2016-9540.patch new file mode 100644 index 0000000000..dddaa0c87e --- /dev/null +++ b/meta/recipes-multimedia/libtiff/files/CVE-2016-9540.patch | |||
@@ -0,0 +1,60 @@ | |||
1 | From 5ad9d8016fbb60109302d558f7edb2cb2a3bb8e3 Mon Sep 17 00:00:00 2001 | ||
2 | From: erouault <erouault> | ||
3 | Date: Sat, 8 Oct 2016 15:54:56 +0000 | ||
4 | Subject: [PATCH] fix CVE-2016-9540 | ||
5 | * tools/tiffcp.c: fix out-of-bounds write on tiled images with odd | ||
6 | tile width vs image width. Reported as MSVR 35103 | ||
7 | by Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities & | ||
8 | Mitigations team. | ||
9 | |||
10 | CVE: CVE-2016-9540 | ||
11 | |||
12 | Upstream-Status: Backport | ||
13 | https://github.com/vadz/libtiff/commit/5ad9d8016fbb60109302d558f7edb2cb2a3bb8e3 | ||
14 | |||
15 | Signed-off-by: Zhixiong Chi <zhixiong.chi@windriver.com> | ||
16 | --- | ||
17 | ChangeLog | 7 +++++++ | ||
18 | tools/tiffcp.c | 4 ++-- | ||
19 | 2 files changed, 9 insertions(+), 2 deletions(-) | ||
20 | |||
21 | Index: tiff-4.0.4/ChangeLog | ||
22 | =================================================================== | ||
23 | --- tiff-4.0.4.orig/ChangeLog 2016-11-24 14:40:43.046867737 +0800 | ||
24 | +++ tiff-4.0.4/ChangeLog 2016-11-28 14:38:01.681276171 +0800 | ||
25 | @@ -17,6 +17,13 @@ | ||
26 | Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2500 | ||
27 | (CVE-2014-8127, duplicate: CVE-2016-3658) | ||
28 | |||
29 | +2016-10-08 Even Rouault <even.rouault at spatialys.com> | ||
30 | + | ||
31 | + * tools/tiffcp.c: fix out-of-bounds write on tiled images with odd | ||
32 | + tile width vs image width. Reported as MSVR 35103 | ||
33 | + by Axel Souchet and Vishal Chauhan from the MSRC Vulnerabilities & | ||
34 | + Mitigations team. | ||
35 | + | ||
36 | 2016-09-24 Bob Friesenhahn <bfriesen@simple.dallas.tx.us> | ||
37 | |||
38 | * libtiff/tif_getimage.c (TIFFRGBAImageOK): Reject attempts to | ||
39 | Index: tiff-4.0.4/tools/tiffcp.c | ||
40 | =================================================================== | ||
41 | --- tiff-4.0.4.orig/tools/tiffcp.c 2015-06-21 09:09:10.000000000 +0800 | ||
42 | +++ tiff-4.0.4/tools/tiffcp.c 2016-11-28 14:41:02.221277430 +0800 | ||
43 | @@ -1338,7 +1338,7 @@ | ||
44 | uint32 colb = 0; | ||
45 | uint32 col; | ||
46 | |||
47 | - for (col = 0; col < imagewidth; col += tw) { | ||
48 | + for (col = 0; col < imagewidth && colb < imagew; col += tw) { | ||
49 | if (TIFFReadTile(in, tilebuf, col, row, 0, 0) < 0 | ||
50 | && !ignore) { | ||
51 | TIFFError(TIFFFileName(in), | ||
52 | @@ -1523,7 +1523,7 @@ | ||
53 | uint32 colb = 0; | ||
54 | uint32 col; | ||
55 | |||
56 | - for (col = 0; col < imagewidth; col += tw) { | ||
57 | + for (col = 0; col < imagewidth && colb < imagew; col += tw) { | ||
58 | /* | ||
59 | * Tile is clipped horizontally. Calculate | ||
60 | * visible portion and skewing factors. | ||
diff --git a/meta/recipes-multimedia/libtiff/tiff_4.0.6.bb b/meta/recipes-multimedia/libtiff/tiff_4.0.6.bb index 9b4aff3f28..3057121e7c 100644 --- a/meta/recipes-multimedia/libtiff/tiff_4.0.6.bb +++ b/meta/recipes-multimedia/libtiff/tiff_4.0.6.bb | |||
@@ -17,6 +17,7 @@ SRC_URI = "http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \ | |||
17 | file://CVE-2016-3622.patch \ | 17 | file://CVE-2016-3622.patch \ |
18 | file://CVE-2016-3658.patch \ | 18 | file://CVE-2016-3658.patch \ |
19 | file://CVE-2016-3632.patch \ | 19 | file://CVE-2016-3632.patch \ |
20 | file://CVE-2016-9540.patch \ | ||
20 | " | 21 | " |
21 | 22 | ||
22 | SRC_URI[md5sum] = "d1d2e940dea0b5ad435f21f03d96dd72" | 23 | SRC_URI[md5sum] = "d1d2e940dea0b5ad435f21f03d96dd72" |