Bug 800598 (CVE-2012-1139)

Summary: CVE-2012-1139 freetype: data buffer underflow in BDF parser _bdf_parse_glyphs() (#35656)
Product: [Other] Security Response Reporter: Jan Lieskovsky <jlieskov>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: low Docs Contact:
Priority: low    
Version: unspecifiedCC: behdad, fonts-bugs, jrusnack, kevin, mkasik
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard: impact=low,public=20120228,reported=20120302,source=customer,cvss2=2.6/AV:N/AC:H/Au:N/C:N/I:N/A:P,rhel-5/freetype=affected,rhel-6/freetype=affected,fedora-all/freetype=affected,fedora-all/mingw32-freetype=affected,cwe=(CWE-121|CWE-125)
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-02-24 16:02:22 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
Bug Depends On: 806266, 806267, 806268, 806269, 806270, 806271, 889398    
Bug Blocks: 800639    

Description Jan Lieskovsky 2012-03-06 13:56:08 EST
An array index error, leading to out-of stack-based buffer read flaw was found in the way FreeType font rendering engine processed certain glyph information for glyph bitmap distribution format (BDF) font files. A remote attacker could provide a specially-crafted BDF font file, which once opened in an application linked against FreeType would lead to that application crash.

Upstream bug report:
[1] https://savannah.nongnu.org/bugs/?35656

Upstream patch:
[2] http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=6ac022dc750d95296a6f731b9594f2e751d997fa

Acknowledgements:

Red Hat would like to thank Mateusz Jurczyk of the Google Security Team for reporting this issue.
Comment 1 Kurt Seifried 2012-03-06 15:56:36 EST
Added CVE as per http://www.openwall.com/lists/oss-security/2012/03/06/16
Comment 2 Tomas Hoger 2012-03-19 10:24:20 EDT
(In reply to comment #0)
> An array index error, leading to out-of stack-based buffer read flaw

Actually, it's not stack-based buffer, but a data segment one.  Signed char variable is used to index the array, so it may lead to underflow / invalid array access up to 128 bytes before the beginning of the array.  This is not very likely to trigger any crash, the problem is not reproducible with standard builds not using AddressSanitizer as was used by the reporter of the upstream bug.
Comment 5 errata-xmlrpc 2012-04-10 15:59:12 EDT
This issue has been addressed in following products:

  Red Hat Enterprise Linux 5
  Red Hat Enterprise Linux 6

Via RHSA-2012:0467 https://rhn.redhat.com/errata/RHSA-2012-0467.html