Bug 1191190 (CVE-2014-9674) - CVE-2014-9674 freetype: multiple integer overflows Mac_Read_POST_Resource() leading to heap-based buffer overflows
Summary: CVE-2014-9674 freetype: multiple integer overflows Mac_Read_POST_Resource() l...
Keywords:
Status: CLOSED ERRATA
Alias: CVE-2014-9674
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Red Hat Product Security
QA Contact:
URL:
Whiteboard:
Depends On: 1191191 1197737 1197738 1197739 1197740
Blocks: 1191102
TreeView+ depends on / blocked
 
Reported: 2015-02-10 16:19 UTC by Martin Prpič
Modified: 2019-09-29 13:28 UTC (History)
4 users (show)

Fixed In Version: freetype 2.5.4
Doc Type: Bug Fix
Doc Text:
Multiple integer overflow flaws, leading to heap-based buffer overflows, were found in the way FreeType handled Mac fonts. If a specially crafted font file was loaded by an application linked against FreeType, it could cause the application to crash or, potentially, execute arbitrary code with the privileges of the user running the application.
Clone Of:
Environment:
Last Closed: 2015-03-18 07:40:47 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:0696 0 normal SHIPPED_LIVE Important: freetype security update 2015-03-17 21:58:07 UTC

Description Martin Prpič 2015-02-10 16:19:59 UTC
The Mac_Read_POST_Resource function in base/ftobjs.c in FreeType before 2.5.4 proceeds with adding to length values without validating the original values, which allows remote attackers to cause a denial of service (integer overflow and heap-based buffer overflow) or possibly have unspecified other impact via a crafted Mac font.

Upstream issue:

http://code.google.com/p/google-security-research/issues/detail?id=153

Upstream patches:

http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=240c94a185cd8dae7d03059abec8a5662c35ecd3
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=cd4a5a26e591d01494567df9dec7f72d59551f6e

Comment 1 Martin Prpič 2015-02-10 16:20:23 UTC
Created freetype tracking bugs for this issue:

Affects: fedora-all [bug 1191191]

Comment 2 Fedora Update System 2015-02-19 18:01:24 UTC
freetype-2.5.3-15.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 3 Fedora Update System 2015-02-20 08:31:04 UTC
freetype-2.5.0-9.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 4 Tomas Hoger 2015-02-24 13:02:43 UTC
(Private) upstream bug:
https://savannah.nongnu.org/bugs/?43538

Issue was fixed upstream in 2.5.4.

There are multiple integer overflow issues in the Mac_Read_POST_Resource() function.  They can cause freetype to allocate buffer of insufficient size and later write data past its boundaries.  This will lead to memory corruption that can cause crash and possibly code execution.

These flaw make it possible to bypass boundary check added to address CVE-2010-2808 (see bug 621907).

This is related to issue tracked via bug 1191096, and the following patches were applied to address problems reported via these two bugs:

http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=240c94a
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=35252ae
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=4533167
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=1720e81
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=cd4a5a2

Unified diff for all the above changes:

http://git.savannah.gnu.org/cgit/freetype/freetype2.git/diff/src/base/ftobjs.c?id2=5aff853&id=cd4a5a2

Comment 7 errata-xmlrpc 2015-03-17 17:59:18 UTC
This issue has been addressed in the following products:

  Red Hat Enterprise Linux 6
  Red Hat Enterprise Linux 7

Via RHSA-2015:0696 https://rhn.redhat.com/errata/RHSA-2015-0696.html


Note You need to log in before you can comment on or make changes to this bug.