Openswan XAUTH/PAM远程缓冲区溢出漏洞

2008-04-09 04:24:04来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

Openswan XAUTH/PAM远程缓冲区溢出漏洞

发布日期:2005-01-26
更新日期:2005-02-04

受影响系统:
Openswan Openswan 2.2.0
不受影响系统:
Openswan Openswan 2.3.0
Openswan Openswan 1.0.9
描述:
BUGTRAQ ID: 12377
CVE(CAN) ID: CVE-2005-0162

Openswan是一款Linux系统下的IPSEC实现,基于FreeS/WAN项目。

Openswan在处理XAUTH和PAM支持时存在一个缓冲区溢出,远程攻击者可以利用这个漏洞可能以进程权限在系统上执行任意指令。

当Openswan以XAUTH和PAM编译支持时,在pluto应用程序中缺少充分的边界检查,在programs/pluto/xauth.c中的get_internal_addresses()函数分配小的字符数组并拷贝超长用户控制的数据到这个数组中,可导致发生缓冲区溢出:

in programs/pluto/id.h:

47: #define IDTOA_BUF 512

in programs/pluto/xauth.c:

148: #ifdef XAUTH_USEPAM
149: int retval;
150: char str[48];
151: #endif
...
169: if(retval == PAM_SUCCESS)
170: {
171: char buf[IDTOA_BUF];
...
185: sprintf(str,"ID=%s", buf);

精心构建提交数据,可能以pluto进程权限在系统上执行任意指令。默认情况下Openswan不以XAUTH和PAM选项编译。另外此漏洞发生在IKE Phase-1 SA建立之后,需要共享密钥验证及客户提供证书,进一步降低此漏洞危险性。

<*来源:iDEFENSE

链接:www.idefense.com/application/poi/display?id=190
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:
* XAUTH和PAM配置选项可在Makefile.inc中找到,可关闭此配置选项或采用如下补丁:

Index: xauth.c
===================================================================
RCS file: /xelerance/master/openswan-2/programs/pluto/xauth.c,v
retrieving revision 1.35
diff -u -p -u -r1.35 xauth.c
- --- xauth.c 30 Nov 2004 15:30:24 -0000 1.35
xauth.c 8 Jan 2005 02:25:35 -0000
@@ -187,7 187,7 @@ int get_internal_addresses(struct connec {
#ifdef XAUTH_USEPAM
int retval;
- - char str[48];
char str[IDTOA_BUF sizeof("ID=") 2];
#endif

#ifdef NAT_TRAVERSAL /* only NAT-T code lets us do virtual ends */
@@ -222,7 222,7 @@ int get_internal_addresses(struct connec
memmove(buf, c1 3,
strlen(c1) 1 - 3);
}
}
- - sprintf(str,"ID=%s", buf);
snprintf(str, sizeof(str), "ID=%s", buf);
pam_putenv(con->pamh,str);
pam_open_session(con->pamh,0);
}

厂商补丁:

Openswan
--------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:

http://www.openswan.org/code/

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:camel-lock-helper整数溢出漏洞

下一篇:Cisco IOS畸形BGP包远程拒绝服务漏洞