From 7423b8318a381d139590f6ab2c50874d0eb775a6 Mon Sep 17 00:00:00 2001 From: Rajkumar Veer Date: Fri, 3 Nov 2017 22:31:50 -0700 Subject: tiff: Security fix for CVE-2017-7601 Signed-off-by: Rajkumar Veer Signed-off-by: Armin Kuster --- .../libtiff/files/CVE-2017-7601.patch | 52 ++++++++++++++++++++++ meta/recipes-multimedia/libtiff/tiff_4.0.7.bb | 1 + 2 files changed, 53 insertions(+) create mode 100644 meta/recipes-multimedia/libtiff/files/CVE-2017-7601.patch diff --git a/meta/recipes-multimedia/libtiff/files/CVE-2017-7601.patch b/meta/recipes-multimedia/libtiff/files/CVE-2017-7601.patch new file mode 100644 index 0000000000..1b3c6c879f --- /dev/null +++ b/meta/recipes-multimedia/libtiff/files/CVE-2017-7601.patch @@ -0,0 +1,52 @@ +From 0a76a8c765c7b8327c59646284fa78c3c27e5490 Mon Sep 17 00:00:00 2001 +From: erouault +Date: Wed, 11 Jan 2017 16:13:50 +0000 +Subject: [PATCH] * libtiff/tif_jpeg.c: validate BitsPerSample in + JPEGSetupEncode() to avoid undefined behaviour caused by invalid shift + exponent. Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2648 + +Upstream-Status: Backport + +CVE: CVE-2017-7601 +Signed-off-by: Rajkumar Veer +Index: tiff-4.0.7/ChangeLog +=================================================================== +--- tiff-4.0.7.orig/ChangeLog 2017-04-25 18:21:32.856116417 +0530 ++++ tiff-4.0.7/ChangeLog 2017-04-25 18:35:31.904129477 +0530 +@@ -1,4 +1,3 @@ +- + 2017-01-12 Even Rouault + + * libtiff/tif_ojpeg.c: fix leak in OJPEGReadHeaderInfoSecTablesQTable, +@@ -9,6 +8,12 @@ + + 2017-01-11 Even Rouault + ++ * libtiff/tif_jpeg.c: validate BitsPerSample in JPEGSetupEncode() to avoid ++ undefined behaviour caused by invalid shift exponent. ++ Fixes http://bugzilla.maptools.org/show_bug.cgi?id=2648 ++ ++2017-01-11 Even Rouault ++ + * libtiff/tif_dirread.c: avoid division by floating point 0 in + TIFFReadDirEntryCheckedRational() and TIFFReadDirEntryCheckedSrational(), + and return 0 in that case (instead of infinity as before presumably) +Index: tiff-4.0.7/libtiff/tif_jpeg.c +=================================================================== +--- tiff-4.0.7.orig/libtiff/tif_jpeg.c 2017-04-25 18:21:32.744116415 +0530 ++++ tiff-4.0.7/libtiff/tif_jpeg.c 2017-04-25 18:38:02.200131817 +0530 +@@ -1632,7 +1632,13 @@ + "Invalig horizontal/vertical sampling value"); + return (0); + } +- ++ if( td->td_bitspersample > 16 ) ++ { ++ TIFFErrorExt(tif->tif_clientdata, module, ++ "BitsPerSample %d not allowed for JPEG", ++ td->td_bitspersample); ++ return (0); ++ } + /* + * A ReferenceBlackWhite field *must* be present since the + * default value is inappropriate for YCbCr. Fill in the diff --git a/meta/recipes-multimedia/libtiff/tiff_4.0.7.bb b/meta/recipes-multimedia/libtiff/tiff_4.0.7.bb index 73deeba687..7f438dad9a 100644 --- a/meta/recipes-multimedia/libtiff/tiff_4.0.7.bb +++ b/meta/recipes-multimedia/libtiff/tiff_4.0.7.bb @@ -24,6 +24,7 @@ SRC_URI = "http://download.osgeo.org/libtiff/tiff-${PV}.tar.gz \ file://CVE-2017-7595.patch \ file://CVE-2017-7596.patch \ file://CVE-2017-7598.patch \ + file://CVE-2017-7601.patch \ " SRC_URI[md5sum] = "77ae928d2c6b7fb46a21c3a29325157b" -- cgit 1.2.3-korg