设为首页
联系站长
加入收藏
 您的位置: Pecker's Home >> 文章频道 >> 服务器技术 >> 邮件服务器 >> 正文
  WinWebMail使用Kill实现邮件防毒功能的一个问题         
WinWebMail使用Kill实现邮件防毒功能的一个问题
[ 作者:Pecker    转贴自:本站原创    点击数:1033    更新时间:2009-1-27    文章录入:pecker

说明:此文引用至Pecker的博客,转载请著名出处。

原文地址(共三部分):
http://www.peckers.cn/blog/u/1/archives/2007/3.html
http://www.peckers.cn/blog/u/1/archives/2007/5.html
http://www.peckers.cn/blog/u/1/archives/2007/7.html

    WinWebMail是一种简单易用的邮件系统,经过不断的升级,现在最新的3.7版已经能够很好的支持各种常用的邮件服务功能。如:有比较完善的防垃圾邮件功能;与一些杀毒软件结合可以实现邮件防毒功能等。其中特别是邮件防毒功能非常实用,不像有些邮件系统使用防毒功能需要另外购买组件,还对杀毒软件的种类有较多限制。WinWebMail的邮件防毒功能可以方便的与许多常见的杀毒软件配合使用,也不需要单独增加组件,对于小型邮件系统不会额外增加成本。

    目前WinWebMail可以与这些杀毒软件配合实现邮件防毒功能:McAfee 8.0和8.5、Symantec & Norton AntiVirus 8.x、BitDefender、KILL 安全胄甲、Panda Antivirus Platinum 熊猫卫士、Sophos Anti-Virus、F-Prot Antivirus for Windows、RAV AntiVirus Command Line、F-Secure Anti-Virus、金山毒霸 V, VI, 2000, .NET, 2001, 2002、Trend ServerProtect v5 中文企业版、Trend PC-Cillin 2004 简体中文版。可供选择的杀毒软件种类众多,基本上函盖了服务器常用的一些杀毒软件产品。关于WinWebMail可以支持的杀毒软件产品详情请访问WinWebMail网站中“邮件防毒功能”页面:http://www.winwebmail.com/antivirus.html。

    下面我谈谈WinWebMail与Kill安全胄甲配合实现邮件防毒功能中的一个问题。
    比较流行的Kill安全胄甲基本上都是一些个人版,常见的有6.0、7.1等。WinWebMail通过命令行方式调用Kill命令行引擎Inocmd32.exe实现邮件防毒功能。6.0版中此文件的默认路径是:C:\Program Files\KILL\ScanEngine,7.1版中此文件的默认路径是:C:\Program Files\CA\SharedComponents\ScanEngine。

    使用Kill 6.0实现邮件防毒功能的设置方法是:在WinWebMail管理程序主菜单上选择“系统设置”,在弹出的系统设置窗口中选择“超期设置”标签,选中“启用邮件防毒功能”,然后点击后面的“设置”按钮。在弹出的防毒设置窗口中,“杀毒产品名称”项选择“Kill 安全胄甲”,执行程序路径选择Inocmd32.exe的路径。保存后即具备了邮件防毒功能。可以下载eicar(一个无害的病毒测试程序),将这个测试程序的不同形式文件添加到邮件附件中发送,发件人均会收到系统自动回复的“病毒警告”邮件(需要在防毒设置窗口中选中“发现病毒邮件时通知发件人”)。为防止Kill误删WinWebMail路径下的邮件数据文件和临时文件,还需要在Kill实时监控选项中将WinWebMail的目录设置为排除。

    按照以上方法设置后,在使用Kill7.1作为杀毒引擎时却不会收到系统自动回复的“病毒警告”邮件,说明WinWebMail的邮件防毒功能没有正常工作。详细检查了WinWebMail的各项设置没有发现问题,Kill命令行引擎文件Inocmd32.exe的路径也没有错误。打开WinWebMail的防毒设置配置文件“WinWebMail\adminmsg\KILL 安全胄甲.eav”可以看到其内容为:
 
Inocmd32.exe
-ARC -NEX -SFI -NOS %s
is infected by virus:

is infected by virus:

    在命令行方式下运行6.0版的Inocmd32.exe文件,显示如下:


   Usage:Inocmd32.exe [ -options ] file|directory|drive ...
-options:
        : MOD <mod>  Scan mode
              <mod>  can be one of: Secure or Reviewer (default Secure)
        : ACT <action>  Infected file action
              <action>  can be one of: Cure, Rename, Delete or Move
        : EXE  Specified files
               (based on the InoculateIT 'Specified' extension list)
        : EXC  Exclude files
               (based on the InoculateIT 'Exclude' extension list)
        : ARC  Scan archive files
        : NEX  Detect compressed files by content, not file extension
        : NOS  No subdirectory traverse
        : FIL:<pattern>  Only scan files that match <pattern> (shell wildcard)
        : SCA <action>  Special Cure Action (ACT must be set to Cure)
              <action> can be one of: CB (Copy Before),
                RF (Rename if cure fails) or MF (Move if cure fails)
        : MCA <action>  Macro Cure Action
              <action> can be either: RA (remove all) or RI (remove infected)
        : SPM <mode>  Special Mode
              <mode> can only be: H (heuristics)
        : SFI  Stop at first infection in archive
        : SMF  Scan migrated files
        : INC  Incremental scan
        : SRF  Skip regular file scanning of archives
        : BOO  Boot sector scan
        : MEM  Scan memory (currently running programs)
        : LIS:<file>  Create scan report file <file>
        : APP:<file>  Append scan report to file <file>
        : VER  Verbose mode
        : QUI  Count of scanned files rather than list
        : SIG  Display signature version numbers
        : SIG:<dir>  Display signature version numbers of
                     engine located in <dir>
        : HEL or ?  Display this help
file|directory|drive ...: Specify at least one file, directory or drive to scan
InoculateIT Signature version:  vet.dat  30.07.3641  2007/05/18
 Vet Signature version:  vet.dat  30.07.3641  2007/05/18


    在命令行方式下运行7.1版的Inocmd32.exe文件,显示如下:


InoculateIT 引擎版本:                 30.07.00    2007-03-29
InoculateIT 特征码版本:  vet.dat     30.07.3641  2007-05-18

Vet         引擎版本:                 30.07.00    2007-03-29
Vet         特征码版本:  vet.dat     30.07.3641  2007-05-18

   用法:Inocmd32.exe [ -options ] file|directory||驱动器 ...
-options:
    ENG <engine>
        <engine>  可以是以下之一: Ino 或 Vet
    MOD <mod>  扫描模式
        <mod>  可以是以下之一: 安全或评论 (默认为安全模式)
    ACT <action>  对受感染文件的操作
        <action>  可以是以下之一: 报告、修复、重命名、删除或移动
    EXE  指定的文件
         (基于 Local Scanner 的 '指定' 扩展名列表)
    EXC  排除的文件
         (基于 Local Scanner 的 '排除' 扩展名列表)
    ARC  扫描存档文件
    NEX  按内容而不是按文件扩展名删除压缩文件
    NOS  不遍历子目录
    FIL:<pattern>  仅扫描同 <pattern> (shell 通配符) 匹配的文件
    SCA <action>  特殊修复操作 (ACT 必须被设为修复操作)
        <action> 可以是以下之一: CB (首先复制)、
        RF (修复失败则重命名) 或 MF (修复失败则移动)
    MCA <action>  宏修复操作
        <action> 可以是以下之一: RA (全部删除) 或 RI (删除被感染的宏)
    SPM <mode>  特殊模式
        <mode> 可以是: H (启发式)
    SFI  在存档包中检测到首个感染文件时停止
    SMF  扫描迁移的文件
    SRF  跳过对存档包的常规文件扫描
    ARF  将扩展名过滤器应用于存档内容
    BOO  启动扇区扫描
    MEM  扫描内存 (当前运行的程序)
    LIS:<file>  创建扫描报告文件 <file>
    APP:<file>  将扫描报告文件附加到 <file> 文件之后
    SYS  启用系统修复功能
         对找到的任何已感染的并且同系统修复关联的文件,
         调用系统修复功能。有关特定病毒的详细信息,
         请访问 www.ca.com 上的病毒百科全书
         同系统修复的可行性有关。在某些时候请多加注意
         系统修复需要重启才能生效。
    VER  详细模式
    COU:<n> 发送消息,每 <n> 个扫描的文件
    COU  每扫描 1000 个文件给出一条消息
    SIG  显示特征码版本号
    SIG:<dir>  显示位于 <dir> 下的引擎的
               特征码版本号
    HEL 或 ?  显示本帮助
文件|目录|驱动器 ...:
    请至少指定一个要扫描的文件、目录或驱动器


    这两个版本中相应命令行开关项的解释完全一致,看来也不是配置文件的问题。这样看来应该是Kill的问题。上bbs.5dmail.net问了一下,WinWebMail是通过分析Kill命令行引擎的杀毒日志来识别邮件中的病毒。看来可能是Kill改变了杀毒日志的保存格式,导致WinWebMail无法正确工作了。

    所以目前对于WinWebMail而言,只能和Kill6.0版配合实现邮件防毒功能,不能和Kill7.1版配合实现。
    上次分析发现由于Kill6.0与7.1版命令行引擎杀毒日志的保存格式不一样造成WinWebMail无法正确识别,从而无法实现邮件防毒功能。但是仔细分析了这两个版本的所有日志文件,发现并没有命令行引擎的杀毒日志。那么有可能WinWebMail并不是分析日志文件,而是直接分析命令行引擎杀毒输出结果来实现邮件防毒功能。

    下面是Kill6.0版命令行引擎杀毒结果:
C:\Program Files\KILL\ScanEngine>Inocmd32.exe -ARC -NEX -SFI -NOS c:\temp\eicar.com.txt
File c:\temp\eicar.com.txt is infected by virus: the EICAR test string
Total Files Scanned:             1
Total Viruses Found:             1
Total Infected Files Found:      1
Scan Mode:                       Secure

*** End Of Summary ***
 
    下面是Kill7.1版命令行引擎杀毒结果:
C:\Program Files\CA\SharedComponents\ScanEngine>Inocmd32.exe -ARC -NEX -SFI -NOS c:\temp\eicar.com.txt
文件 c:\temp\eicar.com.txt 被以下病毒感染: the EICAR test string
扫描的文件总数:                  1
找到的病毒总数:                  1
找到的受感染文件总数:            1
扫描模式:                        安全
*** 概要结束 ***
 
    从这两个结果可以发现Kill的确修改了命令行杀毒引擎的输出结果信息,把Kill6.0版的英文结果改为了Kill7.1版的中文结果。

    还记得WinWebMail的防毒设置配置文件“WinWebMail\adminmsg\KILL 安全胄甲.eav”中有一句“is infected by virus:”,这应该就是WinWebMail识别病毒的关键字。而Kill6.0杀毒输出结果信息中有一句“File c:\temp\eicar.com.txt is infected by virus: the EICAR test string”,里面就含有这个关键字。在Kill7.1中这一句改为“文件 c:\temp\eicar.com.txt 被以下病毒感染: the EICAR test string”。

    停止WinWebMail的服务程序,把“KILL 安全胄甲.eav”中的关键字“is infected by virus:”都改为“被以下病毒感染:”。然后重启WinWebMail的服务程序,发送一封带有病毒附件的测试邮件,接收端的确没有收到刚才发送的测试邮件。在发送一份正常邮件,这次正常收到。

    通过以上测试说明WinWebMail是通过分析Kill命令行杀毒引擎的输出结果信息来实现邮件防毒功能。直接修改WinWebMail的防毒设置配置文件就可以让WinWebMail支持Kill7.1版。不过这样修改之后WinWebMail不能在发现病毒邮件时通知发件人,这的确是一个小小的遗憾。

    前面进行的所有测试都遗漏了一点,即使用的WinWebMail是3.6.2.1版。这是一个比较早的版本,当时的正式名称是EasyWebMail,从3.7版以后开始改名为WinWebMail。

    前面测试中修改了WinWebMail的防毒配置文件后,已经可以正常过滤邮件中的病毒,但是无法将识别出的病毒信息反馈给发件人。将WinWebMail升级到最新的3.7.3.1版(2006年11月28日发布)后。再次发送带有病毒附件的测试邮件,这次发件人收到的WinWebMail返回的“病毒邮件警告”。

    至此WinWebMail3.7.3.1版与Kill7.1版配合实现邮件防毒功能完全可以正常使用。

分享到:
    免责声明:本文仅代表作者个人观点,与Pecker's Home无关。登载目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字和图片(或其他媒体形式内容)的真实性、完整性、及时性本站不作任何保证或承诺。请读者仅作参考,并请自行核实相关内容。如果有侵犯版权事宜,请通知master@peckerhome.com,我们将在第一时间删除该信息。
  • 上一篇文章: 实施Email系统的六个建议

  • 下一篇文章: 邮件发送退信分析大全
  • 发表评论】【告诉好友】【打印此文】【关闭窗口
     最新5篇热点文章
    处理器架构消亡史[00139]
    通信恩仇,5G江湖[00280]
    官方辟谣扫码支付引爆加油…[00523]
    谷歌搭售是不是作恶?可以…[00284]
    你对Zigbee无线连接了解多…[00514]
     
     最新5篇推荐文章
    Pecker之家开通用于电子元…[02-13]
    印刷电路板图设计经验[04-04]
    基于电力线通信的家庭网络…[03-23]
    利用USB控制器设计的Windo…[01-20]
    基于ARM920T微处理器的IDE…[01-20]
     
     相 关 文 章
    邮件服务器WinWebMail 3.7…[01356]

      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
        没有任何评论