diff options
| author | Baogen Shang <baogen.shang@windriver.com> | 2013-12-05 17:52:16 -0600 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-12-10 17:42:45 +0000 |
| commit | d1cb9ec1c290960078c3cee621153e88652464cc (patch) | |
| tree | 29e2750161b1330e80912861e2d681a01a1b898e /meta/recipes-multimedia | |
| parent | 3e46414bf919f5a8d9514e523c51256a37f46d35 (diff) | |
| download | poky-d1cb9ec1c290960078c3cee621153e88652464cc.tar.gz | |
libtiff: CVE-2013-4243
cve description:
Heap-based buffer overflow in the readgifimage function in the gif2tiff
tool in libtiff 4.0.3 and earlier allows remote attackers to cause a denial
of service (crash) and possibly execute arbitrary code via a crafted height
and width values in a GIF image.
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-4243
(From OE-Core rev: 47388363f69bfbf5ed1816a9367627182ee10e88)
Signed-off-by: Baogen Shang <baogen.shang@windriver.com>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-multimedia')
| -rw-r--r-- | meta/recipes-multimedia/libtiff/files/libtiff-CVE-2013-4243.patch | 40 | ||||
| -rw-r--r-- | meta/recipes-multimedia/libtiff/tiff_4.0.3.bb | 3 |
2 files changed, 42 insertions, 1 deletions
diff --git a/meta/recipes-multimedia/libtiff/files/libtiff-CVE-2013-4243.patch b/meta/recipes-multimedia/libtiff/files/libtiff-CVE-2013-4243.patch new file mode 100644 index 0000000000..642a117976 --- /dev/null +++ b/meta/recipes-multimedia/libtiff/files/libtiff-CVE-2013-4243.patch | |||
| @@ -0,0 +1,40 @@ | |||
| 1 | This patch comes from: http://bugzilla.maptools.org/attachment.cgi?id=518&action=diff#tools/gif2tiff.c_sec2 | ||
| 2 | |||
| 3 | Upstream-Status: Pending | ||
| 4 | |||
| 5 | Signed-off-by: Baogen shang <baogen.shang@windriver.com> | ||
| 6 | --- a/tools/gif2tiff.c 2013-10-14 17:08:43.966239709 +0800 | ||
| 7 | +++ b/tools/gif2tiff.c 2013-10-14 17:18:22.994239638 +0800 | ||
| 8 | @@ -280,6 +280,10 @@ | ||
| 9 | fprintf(stderr, "no colormap present for image\n"); | ||
| 10 | return (0); | ||
| 11 | } | ||
| 12 | + if (width == 0 || height == 0) { | ||
| 13 | + fprintf(stderr, "Invalid value of width or height\n"); | ||
| 14 | + return(0); | ||
| 15 | + } | ||
| 16 | if ((raster = (unsigned char*) _TIFFmalloc(width*height+EXTRAFUDGE)) == NULL) { | ||
| 17 | fprintf(stderr, "not enough memory for image\n"); | ||
| 18 | return (0); | ||
| 19 | @@ -397,6 +401,10 @@ | ||
| 20 | return 1; | ||
| 21 | } | ||
| 22 | |||
| 23 | + if (*fill >= raster + width*height) { | ||
| 24 | + fprintf(stderr, "raster full before eoi code\n"); | ||
| 25 | + return 0; | ||
| 26 | + } | ||
| 27 | if (oldcode == -1) { | ||
| 28 | *(*fill)++ = suffix[code]; | ||
| 29 | firstchar = oldcode = code; | ||
| 30 | @@ -428,6 +436,10 @@ | ||
| 31 | } | ||
| 32 | oldcode = incode; | ||
| 33 | do { | ||
| 34 | + if (*fill >= raster + width*height) { | ||
| 35 | + fprintf(stderr, "raster full before eoi code\n"); | ||
| 36 | + return 0; | ||
| 37 | + } | ||
| 38 | *(*fill)++ = *--stackp; | ||
| 39 | } while (stackp > stack); | ||
| 40 | return 1; | ||
diff --git a/meta/recipes-multimedia/libtiff/tiff_4.0.3.bb b/meta/recipes-multimedia/libtiff/tiff_4.0.3.bb index 2d38c689d5..d918b5a50b 100644 --- a/meta/recipes-multimedia/libtiff/tiff_4.0.3.bb +++ b/meta/recipes-multimedia/libtiff/tiff_4.0.3.bb | |||
| @@ -7,7 +7,8 @@ DEPENDS = "zlib jpeg xz" | |||
| 7 | SRC_URI = "ftp://ftp.remotesensing.org/pub/libtiff/tiff-${PV}.tar.gz \ | 7 | SRC_URI = "ftp://ftp.remotesensing.org/pub/libtiff/tiff-${PV}.tar.gz \ |
| 8 | file://libtool2.patch \ | 8 | file://libtool2.patch \ |
| 9 | file://libtiff-CVE-2013-1960.patch \ | 9 | file://libtiff-CVE-2013-1960.patch \ |
| 10 | file://libtiff-CVE-2013-4232.patch" | 10 | file://libtiff-CVE-2013-4232.patch \ |
| 11 | file://libtiff-CVE-2013-4243.patch" | ||
| 11 | 12 | ||
| 12 | SRC_URI[md5sum] = "051c1068e6a0627f461948c365290410" | 13 | SRC_URI[md5sum] = "051c1068e6a0627f461948c365290410" |
| 13 | SRC_URI[sha256sum] = "ea1aebe282319537fb2d4d7805f478dd4e0e05c33d0928baba76a7c963684872" | 14 | SRC_URI[sha256sum] = "ea1aebe282319537fb2d4d7805f478dd4e0e05c33d0928baba76a7c963684872" |
