|
bj.cyberpolice.cn 2004-5-14 15:12:00
受影响系统:
DeleGate DeleGate 8.9.2
DeleGate DeleGate 8.9.1
DeleGate DeleGate 8.9
DeleGate DeleGate 8.5.0
DeleGate DeleGate 8.4.0
DeleGate DeleGate 8.3.4
DeleGate DeleGate 8.3.3
DeleGate DeleGate 7.9.11
DeleGate DeleGate 7.8.2
DeleGate DeleGate 7.8.1
DeleGate DeleGate 7.8.0
DeleGate DeleGate 7.7.1
DeleGate DeleGate 7.7.0
- FreeBSD 5.0
- HP HP-UX 11.20
- IBM AIX 4.3.3
- Microsoft Windows NT 4.0 SP6a
- Microsoft Windows NT 4.0 SP6
- Microsoft Windows NT 4.0 SP5
- Microsoft Windows NT 4.0 SP4
- Microsoft Windows NT 4.0 SP3
- Microsoft Windows NT 4.0 SP2
- Microsoft Windows NT 4.0 SP1
- Microsoft Windows NT 4.0
- Microsoft Windows ME
- Microsoft Windows 98 SE
- Microsoft Windows 98
- Microsoft Windows 95
- Microsoft Windows 2000
- OpenBSD 3.0
- OpenBSD 2.9
- Sun Solaris 8.0
- Sun Solaris 7.0
- Sun Solaris 2.6
不受影响系统:
DeleGate DeleGate 8.9.3
详细描述:
DeleGate是一款多功能应用级网关,运行在多个平台上。DeleGate SSLway过滤器在处理用户提供的部分证书字段内容时缺少充分边界检查,远程攻击者可以利用这个漏洞对网关程序进行缓冲区溢出攻击,可能以进程权限在系统上执行任意指令。
当DeleGate SSLway过滤器使用时处理客户或服务端连接时存在漏洞,使用标题或发送者名字字段内容超过256字节的证书,可触发缓冲区溢出:
static ssl_prcert(ssl,show,outssl,outfd,what)
SSL *ssl;
char *what;
{ X509 *peer;
char subjb[256],*sb,issrb[256],*is;
char *dp,ident[256];
ident[0] = 0;
if( peer = SSL_get_peer_certificate(ssl) ){
sb = X509_NAME_oneline(X509_get_subject_name(peer),subjb,1024);
is = X509_NAME_oneline(X509_get_issuer_name(peer),issrb,1024);
X509_NAME_oneline()的第二个参数是要写入的缓冲区,第三个参数是缓冲区大小,上面缓冲区大小定义为1024字节,而缓冲区实际只有256字节,因此过多的数据可覆盖ssl_prcert()的返回地址。
补丁下载:
DeleGate Upgrade DeleGate/8.9.3
ftp://ftp.delegate.org/pub/DeleGate/download.html |
|