安全研究

安全漏洞
Open Motif libUil Diag_issue_diagnostic缓冲区溢出漏洞

发布日期:2005-12-02
更新日期:2005-12-02

受影响系统:
Open Group Open Motif 2.2.3
描述:
BUGTRAQ  ID: 15684

Open Motif是开放源码版本的Motif,为很多软件和硬件提供工业标准图形用户界面。

Open Motif的用户界面语言的处理例程(libUil)中存在缓冲区溢出漏洞,攻击者可能利用此漏洞执行任意指令提升权限。

在Clients/uil/UilDiags.c文件中:

  diag_issue_diagnostic()
    202 void    diag_issue_diagnostic
    203             ( int d_message_number, src_source_record_type
*az_src_rec,
    204               int l_start_column, ...)
    205
    206 {
    207     va_list     ap;                     /* ptr to variable
length parameter */
    208     int         severity;               /* severity of message */
    209     int         message_number;         /* message number */
    210     char        msg_buffer[132];        /* buffer to construct
message */
    211     char        ptr_buffer[buf_size];   /* buffer to construct
pointer */
    212     char        loc_buffer[132];        /* buffer to construct
location */
    213     char        src_buffer[buf_size];   /* buffer to hold source
line */
......
    293     va_start(ap, l_start_column);
    294
    295 #ifndef NO_MESSAGE_CATALOG
    296     vsprintf( msg_buffer,
    297               catgets(uil_catd, UIL_SET1, msg_cat_table[
message_number ],
    298                       diag_rz_msg_table[ message_number ].ac_text),
    299              ap );
    300 #else
    301     vsprintf( msg_buffer,
    302               diag_rz_msg_table[ message_number ].ac_text,
    303               ap );

    304 #endif
    305     va_end(ap);

在296行和301行,如果ap是用户提供数据的话,调用vsprintf就会导致缓冲区溢出,允许攻击者执行代码或获得权限提升。

<*来源:alert7 (alert7@xfocus.org
  
  链接:http://marc.theaimsgroup.com/?l=bugtraq&m=113357385206117&w=2
*>

建议:
厂商补丁:

Open Group
----------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.opengroup.org/openmotif/

浏览次数:2775
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障