gnu: antiword: Fix CVE-2014-8123.

* gnu/packages/textutils.scm (antiword)[source]: Add patch.
* gnu/packages/patches/antiword-CVE-2014-8123: New variable.
* gnu/local.mk (dist_patch_DATA): Add it.
master
Efraim Flashner 2016-05-30 09:35:10 +03:00
parent d01f680c07
commit 9116f12690
No known key found for this signature in database
GPG Key ID: F4C1D3917EACEE93
3 changed files with 26 additions and 1 deletions

View File

@ -424,6 +424,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/alsa-lib-mips-atomic-fix.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/arb-ldconfig.patch \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \

View File

@ -0,0 +1,21 @@
Description: Add check for buffer overflow with malformed input files
This was later re-found and became CVE-2014-8123.
Author: <eriks@debian.org>
Bug-Debian: http://bugs.debian.org/407015
Bug-Debian: https://bugs.debian.org/771768
Forwarded: http://seclists.org/oss-sec/2014/q4/870
Last-Update: 2016-01-11
--- antiword-0.37~/wordole.c 2005-08-26 21:49:57.000000000 +0200
+++ antiword-0.37/wordole.c 2009-06-03 22:31:15.948014682 +0200
@@ -259,6 +259,10 @@
}
tNameSize = (size_t)usGetWord(0x40, aucBytes);
tNameSize = (tNameSize + 1) / 2;
+ if ( tNameSize > sizeof(atPPSlist[iIndex].szName)) {
+ werr(0, "Name Size of PPS %d is too large", iIndex);
+ tNameSize = sizeof(atPPSlist[iIndex].szName);
+ }
vName2String(atPPSlist[iIndex].szName, aucBytes, tNameSize);
atPPSlist[iIndex].ucType = ucGetByte(0x42, aucBytes);
if (atPPSlist[iIndex].ucType == 5) {

View File

@ -5,6 +5,7 @@
;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -29,6 +30,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages python)
#:use-module (gnu packages zip))
@ -306,7 +308,8 @@ regular expression object can be specified.")
"/antiword-" version ".tar.gz"))
(sha256
(base32
"1b7mi1l20jhj09kyh0bq14qzz8vdhhyf35gzwsq43mn6rc7h0b4f"))))
"1b7mi1l20jhj09kyh0bq14qzz8vdhhyf35gzwsq43mn6rc7h0b4f"))
(patches (search-patches "antiword-CVE-2014-8123.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests