安全研究

安全漏洞
Swatch抑制事件报告漏洞

发布日期:2002-05-15
更新日期:2002-05-22

受影响系统:
Swatch Swatch 3.0.3
    - Linux系统  
    - Unix系统  
Swatch Swatch 3.0.4
    - Linux系统  
    - Unix系统
描述:
BUGTRAQ  ID: 4746
CVE(CAN) ID: CVE-2002-0896

Swatch是一款免费开放源代码的日志监察工具,可使用在多种Unix和Linux操作系统下。

Swatch存在设计漏洞,可导致信息不予报告。

当SWATCH检测到一个事件多次发生的时候,会对事件的报告产生抑制,也就是不重复报告同样的事件。而且如果被抑制的事件一个月以后再次发生的时候也不会被报告。

问题存在于swatch源代码的1037行,比较新旧事件的月份,如果新的一事件大,新事件就递减:

if ($ymdhms[1] > $Msg_Rec{$key}->{ymdhms}[1]) { $ymdhms[0]--; }

然后1038行获得两个事件日期的差异:

my @delta_dhms = Delta_DHMS(@{$Msg_Rec{$key}->{ymdhms}}, @ymdhms);

1039行到1042行判断新事件是否需要报告:

foreach my $i (0..$#min_dhms_delta) {
     $passed = 0 if ($delta_dhms[$i] < $min_dhms_delta[$i]);
     last unless ($delta_dhms[$i] == $min_dhms_delta[$i]);
  }

如果$passed为1,事件就必须报告。

这意味着如果两个事件发生在不同的月份,新事件会被认为比旧的事件还老,两个事件的差异永远是负值,而由于$delta_dhms[$i]一直小于$min_dhms_delta[$i]使的$passed为0,就不被Swatch报告。

日志不被报告,可使攻击者的攻击不被觉察。

<*来源:SUZUKI Yasuhiro (ysuzuki@bb.mbn.or.jp
  
  链接:http://archives.neohapsis.com/archives/bugtraq/2002-05/0119.html
*>

建议:
临时解决方法:

如果您不能立刻安装补丁或者升级,NSFOCUS建议您采取以下措施以降低威胁:

* 暂时没有合适的临时解决方法。

厂商补丁:

Swatch
------
暂时的补丁由SUZUKI Yasuhiro <ysuzuki@bb.mbn.or.jp>提供,可在如下地址获得:

http://plaza8.mbn.or.jp/~yswww/myself/swatch-en.html

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