首页 -> 安全研究

安全研究

安全漏洞
FWTK x-gw格式串漏洞

发布日期:2000-10-29
更新日期:2000-10-29

受影响系统:

TIS Firewall Toolkit中所带的x-gw组件
描述:

TIS Firewall Toolkit中(FWTK)所带的x-gw(X Windows网关)组件包含一个格式串
漏洞。在某些安装条件下,可能导致用户执行任意代码。

FWTK包含一套代理服务程序用来建立一套防火墙系统,取决于FWTK安装时的选择
不同,可能存在很多不同的配置状况。

x-gw组件用来在X Windows客户端与服务器之间提供代理连接服务。正常情况下
x-gw是通过tn-gw(Telnet网关)组件来启动的。如果安装时采用了此种启动x-gw
的方式,就不受此漏洞影响,因为tn-gw进行了正确的输入数据的检查。除此之外
的任何启动x-gw方式都是有问题的。

x-gw将X Windows所要连接的display(显示器编号)作为命令行参数或者环境变量
,当对此进行安全检查时,如果发现不符合正确格式,x-gw将会报告一个错误,
然而输出错误信息的函数有一个格式串漏洞,它将用户提供的输入数据作为格式
串处理,攻击者可能覆盖堆栈中的任意数据,并执行任意代码。

有问题的函数是x-gw/pmsg.c中的pmsg().


<*来源:Pekka Savola
        geekgang Security Advisory [gsa2000-01]: www.geekgang.co.uk
*>



建议:

临时解决方法:

NSFOCUS建议您检查您的x-gw的启动方法,如果不是通过tn-gw启动,请设置为
通过tn-gw启动。              

或者使用geekgang提供的下列补丁程序,并重新编译x-gw:

--- x-gw/pmsg.c.orig Mon Oct 23 13:21:26 2000
+++ x-gw/pmsg.c Mon Oct 23 13:22:36 2000
@@ -37,9 +37,9 @@
  buf[sizeof(buf)-1] = '\0';
    }

-   if( uselog ) syslog( LLEV, buf );
+   if( uselog ) syslog( LLEV, "%s", buf );
    else {
-       fprintf( stderr, buf );
+       fprintf( stderr, "%s", buf );
        fflush(stderr);
    }
}

厂商补丁:

fwtk已经得知此漏洞,补丁将会尽快在他们的站点公布:
http://www.fwtk.org



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