FreeType 2.4.11之前版本bdf_free_font空指针解引用漏洞


发布日期:2012-12-25
更新日期:2012-12-27

受影响系统:
FreeType FreeType 2.4.11
描述:
--------------------------------------------------------------------------------
BUGTRAQ  ID: 57041
 CVE(CAN) ID: CVE-2012-5668
 
FreeType是一个流行的字体函数库。
 
FreeType 2.4.11之前版本字体呈现引擎处理Glyph BDF字体时存在空指针解引用漏洞,通过提供特制的BDF字体文件,使用了FreeType库的应用程序处理这些特制字体时将导致该应用程序崩溃。
 
漏洞信息可参看官方修补代码处:
 ---------------------------------------------------------------------------
 
2 files changed, 11 insertions, 0 deletions
 diff --git a/ChangeLog b/ChangeLog
 index f3d12c1..5c9e7eb 100644
 --- a/ChangeLog
 +++ b/ChangeLog
 @@ -1,3 +1,11 @@
 +2012-12-15  Werner Lemberg  <wl@gnu.org>
 +
 +    [bdf] Fix Savannah bug #37905.
 +
 +    * src/bdf/bdflib.c (_bdf_parse_start): Reset `props_size' to zero in
 +    case of allocation error; this value gets used in a loop in
 +    `bdf_free_font'.
 +
 2012-12-10  Alexei Podtelezhnikov  <apodtele@gmail.com>

    [truetype] Scale F_dot_P down.
 diff --git a/src/bdf/bdflib.c b/src/bdf/bdflib.c
 index ed08a6e..8d7f9a0 100644
 --- a/src/bdf/bdflib.c
 +++ b/src/bdf/bdflib.c
 @@ -2169,7 +2169,10 @@
        p->cnt = p->font->props_size = _bdf_atoul( p->list.field[1], 0, 10 );

        if ( FT_NEW_ARRAY( p->font->props, p->cnt ) )
 +      {
 +        p->font->props_size = 0;
          goto Exit;
 +      }

        p->flags |= _BDF_PROPS;
        *next    = _bdf_parse_properties;
 
---------------------------------------------------------------------------
 
<*来源:Mateusz Jurczyk
 
  链接:https://bugzilla.RedHat.com/show_bug.cgi?id=890087
        http://osdir.com/ml/general/2012-12/msg39573.html
 *>

建议:
--------------------------------------------------------------------------------
厂商补丁:
 
FreeType
 --------
 目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
 
http://git.savannah.gnu.org/cgit/freetype/freetype2.git/commit/?id=9b6b5754b57c12b820e01305eb69b8863a161e5a

相关内容