具体实施方式
下文将对能够延迟本地信息分类,如垃圾邮件识别,对全球情报的收集留以时间的系统与方法进行描述。根据本发明的各实施例,有关邮件特征评价和/或发件人评价的情报集合将被整合为一邮件发送网络。根据本发明的一个实施例,一反垃圾邮件引擎将被集成在一邮件服务器中,在不能实时判断一邮件是否为干净邮件或垃圾邮件的情况下延迟该邮件的发送。在无法对邮件进行实时明确地判断时,将对邮件进行队列处理,自本网络的该反垃圾邮件引擎或其他反垃圾邮件引擎中收集全球情报,使得后续的再次评测可对电子邮件信息是否是垃圾邮件做出更为准确的判断。
根据本发明的一实施例,提供了一种三层的网络架构。邮件服务器的反垃圾邮件引擎、邮件用户端、用户端工作站、网络网关、防火墙或其他邮件信息通过的可进行本地垃圾邮件判断的网络设备,通过在集中或分散服务器中的一全球情报网络,远程托管查询发件人的IP地址评价数据库以及一特征数据库。该方法的优势在于,反垃圾邮件引擎一次只需要对一条邮件应用与发件人评价信息与特征评价信息相关程序即可。同时,与全球情报网络相连接的启发性规则更新服务器将更新推进到反垃圾邮件引擎。在一个实施例中,全套的启发性规则将被下载到反垃圾邮件引擎。对于这一操作的过程,在一实施例中,反垃圾邮件引擎应用i:来自发件人评价数据库与垃圾邮件特征数据库的查询结果,与ii:启发性规则,进行垃圾邮件检测。而且,可以根据数据库的查询结果应用启发性规则。
根据本发明的一实施例,当有关电子邮件信息的全球情报和/或与邮件信息有关的特征或发件人评价收集完成后,邮件信息便可以被重新检测了。实践经验表明集合全球情报,然后对本地垃圾邮件检测,可以提高检测的准确性。
需要说明的是,虽然反垃圾邮件引擎的各种实施例都是基于邮件服务器的,但是所述的反垃圾邮件引擎技术同样可以在邮件用户端应用,如Outlook或Thunderbird、用户端工作站、网络网关、通过邮件信息的防火墙或网络设备中应用。
本文所述的方法也可以应用于各种邮件协议,包括但不局限于简单邮件传输协议(SMTP)、邮局协议3(POP3)以及互联网消息访问协议(IMAP),与各种现行的以及未来的电子邮件网络拓扑。另外,将邮件信息进行缓存并执行后续的重新评测也可以多种方式进行。在一个实施例中,将在垃圾邮件识别操作中没有明确得出判断结果的邮件信息进行缓存,例如,缓存在邮件服务器或用户端工作站这样的网络设备中,进行初始垃圾邮件检测。亦或者,初始垃圾邮件检测与重新评测操作可以分别在不同的设备上执行。在一实施例中,初始垃圾邮件检测可以由邮件服务器执行。将在垃圾邮件识别操作中没有明确判断的邮件信息缓存在用户端工作站并由该工作站内应用的本地反垃圾邮件引擎对缓存的信息进行重新评测。同样,通过互联网从服务器提供商或托管邮件系统访问邮件信息的POP3或IMAP邮件服务器的邮件用户可以在本地执行初始垃圾邮件评测与有延迟的重新评测操作,或如果必要的话,可以由IMAP或POP3邮件服务器执行初始垃圾邮件评测后再由用户端工作站或邮件用户端执行重新评测操作。根据本发明的一个实施例,网关、服务器或用户端可以根据邮件信息进行临时的判断(如,垃圾邮件、非垃圾邮件、未知)并进行标注以便进行后续的重新评测操作。
为了便于说明本发明的技术方案,在此仅具体描述关于全球情报远程收集与分析从而本地进行垃圾邮件辨别的具体实施例,但本发明请求保护的范围并不局限于上述实施例,可以扩展至信息分类领域的通用情况,亦可应用于信息分类领域某些特殊情况,如在存在延迟的本地情报收集并应用的情况。例如在本地收集关于垃圾邮件在趋势、模式以及数量上变化的情报及/或历史数据可应用于对邮件的重新评测操作,以增强垃圾邮件的检测。
下面将参考附图进行说明,附图中相同的功能元件使用相同的编号。上述附图用于解释本发明,并不作为对本发明的限制,具体实施例和应用与本发明的原理是一致的。所描述的详细的应用是用于本领域的技术人员实践本发明,应该理解,在不脱离本发明的精神和范围内,可以做其他应用以及对各种元件做出结构修改和/或替换。因此,下面的描述并不用于限制本发明。
下述本发明实施例所涉及的诸多步骤,可由硬件装置予以执行,也可包含于机器可执行指令中,通过调用指令自身通用或特定的程序执行。该步骤亦可通过软、硬件、固件与/或人工操作相结合来执行。
本发明的实施例可以提供作为一个计算机产品,包括存储指令的机读介质,能够被计算机设备(或其他电子设备)所使用执行操作。机读介质可以包括但不局限于一般形式的计算机可读介质包括,如,软盘、光盘、CD-ROM、磁光碟、ROM、RAM、EPROM、EEPROM、磁卡或光卡、闪存存储器、硬盘、磁带或者任何其它磁性介质、任何其他光学介质、任何其它有孔图案的物理介质、FLASH-EPROM、记忆卡、任何其它记忆芯片或者卡带、下文所述的载波,或者任何其它可存储电子指令的媒体/计算机可读介质。此外,本发明的实施例也可以是下载的计算机程序产品,所述程序可以从远程计算机通过通信链接(例如调制解调器或网络连接)传输的载波或其他传播介质传输的数据信号传送到发出请求的计算机。
以下将介绍本发明所涉及的术语。
“用户端”通常是指用户/服务器关联中的应用、程序、操作或设备,能够从一个网络的其他程序、操作或设备(服务器)请求信息或服务。需要说明的是,“用户端”与“服务器”是相对的,一个应用程序对一项程序来说可以是“用户端”,对于另一项程序而言是“服务器”。“用户端”还包括建立一个请求应用、程序、操作或网络设备到服务器,如FTP用户端,之间连接的软件。
“内容分析”通常是指对电子邮件信息、报头和/或相关的附件的过滤和/或监控和/或扫描的操作,如应用向内和/或向外邮件过滤、附件/邮件内容过滤、启发性规则扫描、深度邮件报头检测、垃圾邮件URI实时屏蔽列表(SURBL)、禁忌词汇过滤、垃圾邮件隔离与标记、垃圾邮件校验值屏蔽列表、垃圾邮件镜像分析扫描、伪造IP查询、灰名单查询、贝叶斯定理分类、贝叶斯定理统计过滤、特征评价、和/或如FortiGuard-反垃圾邮件服务、访问控制策略过滤、内容过滤、全球以及用户黑白列表过滤、垃圾邮件实时Blackhole列表(RBL)、以及基于每个用户的贝叶斯定理过滤这样的过滤方法,以便每个用户都可以设置自己的档案资料、启发性过滤、拒绝服务攻击(DOS)与帐户收集攻击(DHA)的防护。
“连接”或“连结”以及相关的术语用在操作范畴中,并不单单局限在直接连接或连结。
“在一实施例中”“根据本发明的一实施例”以及类似的表达通常指特殊的性能、架构或特点包括在本发明的至少一个实施例,以及可能包括在本发明的不止一个实施例中。需要说明的是,这样的表达并不特指同一个实施例。
“网络网关”通常是指一个网络间的系统,该系统可以将两个网络连接在一起。“网络网关”可以实施作为一项软件或硬件,或是二者的结合。根据实施情况,网络网关可以在从程序协议到低端信令的任何级别的OSI模式下操作。
如果在陈述一个部件或功能中使用了“可能”“可以”“能够”这样的表达,是指这样的部件或功能并不是必须包括或具有。
“响应”包括全部或部分的回复。
“发件人评价”通常是以一个数值来表示的,指邮件信息的发出端发送垃圾邮件或未经许可内容,如病毒或恶意软件,的历史记录这样的评价表现。“发件人评价”可以根据对一发送服务器的一互联网协议(IP)地址进行以下几个方面的查看所得出的持续的数据i:在一个特殊域名中的一特殊用户名,ii:该特殊域名,和/或iii:从该IP地址发送的所有流量。同样,发件人评价也可以由传统的评价分析以及从邮件信息分析与外部测试得出的各种特性中的一项或多项计算而来的超出传统评价方法之外的过滤技术而判断。
“服务器”通常情况下指在用户/服务器范畴中对一个网络中的另外的程序、进程或设备(服务器)请求信息或服务做出回复的一项应用、程序、进程或设备。“服务器”也包括能够提供信息或服务的软件。
“垃圾邮件”通常是指电子垃圾邮件,典型的是以商业广告形式出现的大量的邮件信息。通常邮件的内容与判断一电子邮件是否是垃圾邮件并不相关,虽然大部分垃圾邮件本质上以商业推销为目的。垃圾邮件中所包含的信息可以是推销毫无投资价值的投机股票,垃圾邮件也可以是宗教信仰传播的手段。从收件人角度来讲,垃圾邮件是未经过收件人许可的、不必要的、不相关的和/或不适当的电子邮件信息,通常为未经过许可的商业目的邮件(UCE:unsolicited commercial email)。除了UCE,垃圾邮件还包括但不局限于与欺诈性商业活动有关的信息、连锁邮件、和/或冒犯性的有关性的或其他政论信息。
根据一实施例,垃圾邮件是“未经过许可下的大量电子邮件信息(UBE:Unsolicited Bulk Email)”。“未经许可”通常指该电子邮件的收件方并未对该电子邮件的发送给予许可,且发件人与收件人之间没有任何可辨别的联系。“大量的”指电子邮件信息发送的形式是大宗、大量且重复的信息。实施例中的垃圾邮件是UBE,如果一封邮件它既符合“未经许可”又符合“大量的”这样两个条件,那么便认为是垃圾邮件。未经许可的邮件可以是常规的邮件,如首次联系请求、招聘请求、商业寻价。大量的邮件形式也可以是常规邮件,如订阅的时事通讯、用户沟通、讨论群组等这样的邮件。那么,在实施例中被认定为垃圾邮件的电子邮件信息的特征为i:收件人的个人身份与内容无关,邮件信息可以同样适用于许多其他可能的收件人;与ii:所发送的邮件不能被收件人确认是被允许发送的。
“垃圾邮件检测”是指用于识别或将信息分类或判定为垃圾邮件或非垃圾的一项或多项方法。垃圾邮件检测可以很宽泛的包括当前和/或未来的评价分析,如发件人IP评价分析或内容分析这些方法中的一项或几项的结合。
图1是本发明一实施例的简化的网络架构示意图。示意图中包含一个或多个评价服务器(Reputation Server)110、一个或多个垃圾邮件特征服务器(SpamSignature Server)115、一个或多个启发性规则更新服务器(Heuristic Rule UpdateServer)120与一个或多个中央全球情报服务器(Central Global IntelligenceServer)125,分别与公共网络100连接进行通信。整体而言,该评价服务器110、该垃圾邮件特征服务器115、该启发性规则更新服务器120与该中央全球情报服务器125形成一个全球情报服务器网络(Global Intelligence Serve Network)。在以下的详细叙述中,全球情报服务器网络中可以分布或结合各种服务器的子网。
用户端工作站180通过本地局域网络(LAN)150连接,并通过一网络网关130与公共互联网100进行通信。在当前所述实施例中,该网络网关130与一邮件服务器140连接,该邮件服务器140可以组成一个如图2所示的反垃圾邮件引擎241(图1中没有示出该集成部件),执行以下所述的各种反垃圾邮件的操作。
在该简化的实施例中,一个LAN(例如LAN150)只与一个邮件服务器(例如邮件服务器140)相连接,但本领域技术人员可知,许多其他邮件服务器、网络网关、邮件用户端和/或用户端工作站可以同时全球操作并执行反垃圾邮件以及内容分析操作。所以,本领域技术人员可知本实施例所述的该反垃圾邮件引擎可以是全球情报服务器125为代表的作为情报集合代理的一较大反垃圾邮件引擎网络中的一部分。
返回到图1所示的网络架构中,该评价服务器110可以与一个或多个相关的评价数据库(Reputation Database)111连接;该垃圾邮件特征服务器115可以与一个或多个相关的垃圾邮件特征数据库116连接;该启发性规则更新服务器120可以与一个或多个相关的启发性规则数据库121连接。在一实施例中,该评价数据库111包含与所检索的电子邮件信息流关联的发件人IP地址相关的评价信息。评价服务器110与评价数据库111可表示为现有或以后的评价服务。现有的评价服务可以体现为评价服务器110的各种操作功能,包括FortiIPTM发件人IP评价数据库(可以从Fortinet公司获得)、一个通过从各种资源收集IP地址数十个属性以建立对每个IP地址进行评价并维护的全球情报IP评价数据库。这些包含在IP地址的属性可以是这些IP地址的“是谁”信息、地理位置信息、邮件服务器、是否是开放中继或截获的主机、从该邮件发件人发出的邮件的容量以及邮件容量模式的历史记录等。
在本发明的另一实施例中,全球情报服务器125与反垃圾邮件引擎没有直接连接,但是可以收集数据,并对从全球情报网络中其他的服务器收集到的数据进行数据分析,例如可以从评价服务器110、垃圾邮件特征服务器115以及启发性规则更新服务器120。在此实施例中,全球情报服务器125也可以将收集分析数据得到的情报通过全球情报网络中的服务器传递到反垃圾邮件引擎。在其他实施例中,全球情报服务器125可以逻辑上插入全球情报网络中反垃圾邮件引擎与其他服务器之间,直接从反垃圾邮件引擎接收查询并允许全球情报服务器125从所查看的电子邮件信息中收集相关信息且执行分析操作。
在任何的实施例中,这种数据收集与分析的集中方法允许全球情报服务器125能够基于例如自所有参与的反垃圾邮件引擎检测到的每个邮件特征的容量查询与模式,收集有利于指示和/或控制下列事项进行更新的情报:i:发件人的评价信息,ii:电子邮件信息特征,iii:相关的垃圾邮件计数,以及iv:、启发性规则,例如,从所有构成反垃圾邮件引擎的服务器收集的基于每个垃圾邮件特征的查询量与模式。全球情报服务器125以及该服务器同参与检测的反垃圾邮件引擎间的相互作用和/或全球情报网络中的服务器促进特征以及与其相应的大型评价数据库的维护,否则该特征与评测将无法被持续地推入到参与检测的的反垃圾邮件引擎中。另外,全球情报服务器125所收集的实时的全球情报通过启发性规则更新服务器120将更新的启发性规则推进到反垃圾邮件引擎,从而实现对垃圾邮件检测算法的持续可行的调整,从而使网络中的反垃圾邮件引擎能够不断更新,以跟上垃圾邮件变化的动向。
根据本发明的一实施例,启发性规则更新服务器120以及与其相连接的启发性规则数据库121创建、维护反垃圾邮件引擎并将与垃圾邮件、病毒和/或恶意代码检测有关的反垃圾邮件引擎启发性规则分配到反垃圾邮件引擎。启发性规则更新服务器120可以基于全球情报服务器125所收集情报并作为对该情报以及离线分析和/或手动分析的回应更新启发性规则。在本发明一实施例中,启发性规则更新服务器120也可以通过分配适当的启发性规则的更新,持续调整网络中反垃圾邮件引擎的垃圾邮件检测算法。各种实施例包括:FortiGuardTM反垃圾邮件服务、赛门铁克Brightmail Anti-SpamTM软件以及Barracuda NetworkEnergize Update,当前的启发性规则更新机制是启发性规则更新服务器120的示范性说明。
根据本发明一实施例,垃圾邮件特征服务器115创建、更新并维护电子邮件信息特征以及相关的垃圾邮件计数。在本发明一实施例中,垃圾邮件特征基于所检测的电子邮件的一项或多项属性,包括但不局限于,发件人的IP地址、广告型垃圾邮件的URL、邮件客体或MIME部分的校验值、邮件内容中的电话号码以及被认为是信息的伪装特征的其他属性。邮件信息特征及相关垃圾邮件计数的创建、更新以及维护可以基于垃圾邮件特征服务器115直接检测到的邮件信息,和/或基于全球情报服务器125接收到的指示或指导信息,该指示或指导信息来源于全球情报服务器125对电子邮件的直接检测或自垃圾邮件特征服务器115收集到的间接的数据分析。
在一个实施例中,垃圾邮件特征数据库116中包括很多类型的特征。例如,一个垃圾邮件特征数据库可以包含有关广告垃圾邮件的URL的信息。90%的垃圾邮件在邮件主体都有一个或多个URL(统一资源定位器)。这些URL可以直接或间接链接到推销其产品与服务的垃圾邮件发送端的网站。有关“网络钓鱼”性质的垃圾邮件中的URL,通常直接链接到一个虚假银行或其他金融机构的网站以骗取个人的账号等银行信息。其他垃圾邮件特征数据库可以包括有关广告性质垃圾邮件地址的信息。类似于广告性质垃圾邮件的URL,相当大的一部分垃圾邮件在邮件主体中包括一个或多个邮件地址,可以通过该地址联系到垃圾邮件发件端。通过从垃圾邮件样本中提取这些邮件地址,这些广告性质垃圾邮件的地址可以提供另一项强大的全球情报收集过滤器用以识别并过滤垃圾邮件。垃圾邮件对象校验值可以被其他垃圾邮件数据库所保存。根据本发明一实施例,垃圾邮件对象的识别以及一粗略校验值的计算都是基于这些邮件对象的。邮件对象可以是电子邮件信息的一部分或为一个附件。在一个实施例中,垃圾邮件特征数据库116包括Fortinet公司提供的FortiSig1垃圾邮件特征数据库、FortiSig2垃圾邮件特征数据库、FortiSig3垃圾邮件特征数据库中的一个或多个。
本发明一实施例说明中,为了能够清晰阐述发明的实现过程,评价服务器110、垃圾邮件特征服务器115、启发性规则更新服务器120、全球情报服务器125、网络网关130与邮件服务器140均以一台设备为例,实际操作中,这些设备可以包括分散连接的架构中多个物理、逻辑和/或虚拟设备或系统,以及所执行的各种功能可以分配到多个设备中或结合在少数几个设备中实现,也就是说,任何的功能可以在多个设备的集合或仅仅一台设备中实现。而且,操作处理过程可以在多个设备之间分开执行。在本发明一实施例中,评价服务器110、垃圾特征服务器115和/或启发性规则更新服务器120的功能可以由全球情报服务器125提供;亦或者,全球情报服务器125的功能可以集成在全球情报网络中其他服务器中。
图2是本发明一实施例中的一邮件服务器240各个功能模块与外部设备的连接示意图。根据当前所述实施例,一邮件服务器240包括一反垃圾邮件引擎241、一信息传输代理(Message Transfer Agent)242、一信息队列(MessageQueue)243、一启发性规则数据库244以及一评价缓存(Reputation Cache)245。该邮件服务器240可以与一个或多个评价服务器210、一个或多个垃圾邮件特征服务器215、一个或多个启发性规则更新服务器220,以及一远程信息传输代理260、一用户端工作站280的一用户代理/邮件用户端250相连接。
信息传输代理(MTA)242是一种用于接收、路由并传送电子邮件信息的程序或软件代理。请同时参考图1及图2,MTA242从用户端工作站180的本地用户,例如用户端工作站280及远程主机(图中没有示出),接收邮件信息与收件人地址,执行化名创建以及转发功能并将邮件信息传送到各自的目标地址。当邮件信息来自LAN150之外的网络时,MTA242与一个远程MTA,例如远程MTA260,进行通讯将邮件信息从与远程MTA260连接的远程邮件服务器(图中没有示出)传输到邮件服务器240。根据本发明的一个实施例以及以下所述内容,在将向外的邮件信息传输到远程MTA260和/或将向内的邮件信息接收或传送到用户端工作站280之前,MTA242请求反垃圾邮件引擎241执行一项或多项内容分析或过滤操作。
根据本发明的一实施例,反垃圾邮件引擎241为地理位置上分散的大型网络化反垃圾邮件引擎(没有示出)的其中之一,该网络化反垃圾邮件引擎在全球情报服务器125的协作下同时分析处理各自的电子邮件信息流。在以下更详细的叙述中所述,反垃圾邮件引擎241可以根据本地评价缓存245中的发件人评价信息或根据对评价服务器210的访问进行初始判断,决定是否接受例如SMTP连接的邮件协议连接,。当连接被接受且一向内的邮件信息被本地接收后,反垃圾邮件引擎241采用以下的一项或几项算法对邮件信息进行分析以判断该邮件是否为垃圾邮件,所述算法包括i:存储在本地启发性规则数据库244中的且由启发性规则更新服务器220定期更新的启发性规则应用程序,ii:全球情报服务器125的各种垃圾邮件特征的应用程序。
根据当前所述的实施例,在某种程度上发件人评价信息并不是经常变化的,评价缓冲245可以将自评价服务器210最近获得的发件人评价信息暂时性进行本地存储。依靠特定的执行方法与支持额外速度所需的剩余空间(例如RAM或硬盘的空间),评价缓存245可以应用于各种的缓存方法。可应用的缓存算法包括最近最少使用算法(LRU)、最近最多使用算法(MRU)、伪最近最少使用算法(PLRU)、最不经常使用(LFU)算法以及自适应替换缓存(ARC)算法。根据评价缓存245的容量,根本不需要丢弃发件人评价信息这样的缓存算法;但是为了避免使用过期的信息,较佳实施例中使用的评价缓存254至少可以使发件人评价信息缓存期满的频率能够与评测服务器210更新发件人评价信息的频率同步。在其他实施例中,如果发件人评价信息更新速度足够快且能够在一合理的与垃圾邮件信息实时处理过程相一致的时间段内从评价服务器210获取更新,便不需要配置评价缓存245。
根据本发明一实施例,反垃圾邮件引擎241所使用的垃圾邮件检测算法全部或部分是可升级的。根据该实施例,反垃圾邮件引擎241使用存储在启发性规则数据库244中的启发性规则作为垃圾邮件检测操作的一部分。启发性规则可由启发性规则更新服务器220定期升级或作为对各种事件回应而升级。例如,在本发明一实施例中,全球情报服务器,例如全球情报服务器125,将主要情报进行集中从而触发启发性规则更新服务器220的更新,由于上述更新,启发性规则更新服务器220将更新的启发性规则主动推进到反垃圾邮件引擎。在本实施例中,垃圾邮件的检测可以根据全球情报服务器检测到的垃圾邮件变化的趋势而进行实时调整。
在当前的实施例中,信息队列243为经反垃圾邮件引擎241处理过的邮件信息提供暂时性的存储。在一个实施例中,当反垃圾邮件引擎241在处理电子邮件时无法对该电子邮件进行明确的垃圾邮件分类(例如,划分为干净邮件或垃圾邮件),信息队列243将保存这些邮件信息。例如,反垃圾邮件引擎241在对特征评价的询问进行回应时,垃圾邮件特征服务器215返回的垃圾邮件计数可能不在预先设定或配置的垃圾邮件或干净邮件的阀值范围之内。在这种情况下,这样的电子邮件信息将被队列处理(暂时隔离)在信息队列243中等待从网络中其他反垃圾邮件引擎收集有关上述电子邮件信息特征的全球情报。在预先设定的或配置的一段延迟后,反垃圾邮件引擎241再次向垃圾邮件特征服务器115发出查询以获得当前特征评价信息,之前没有分类的电子邮件信息将被反垃圾邮件引擎241重新评测。
在本实施例中,也对发明中所使用的创新性的三层网络架构进行了说明。反垃圾邮件引擎241从评价服务器210与垃圾邮件特征服务器215查询远程主机发件人评价信息与特征评价信息。这种方法的优势在于,反垃圾邮件引擎241能够获得大量发件人评测信息与特征评测信息,并且在需要的情况下只需要发出关于上述相关信息的简单请求,上述信息便可在反垃圾邮件引擎241能够负载的情况下经常更新且不会影响垃圾邮件检测效率。
在本发明一实施例中,启发性规则更新服务器220将更新推入到反垃圾邮件引擎241。因为启发性规则的更新占用的容量相对较小,在典型的实施中,整套的启发性规则可下载到反垃圾邮件引擎241上。根据本发明一实施例,反垃圾邮件引擎241使用以下情报进行反垃圾邮件检测i:查询评价服务器210与反垃圾邮件特征服务器215所得出的结果,ii:启发性规则服务器220所提供的并本地存储在启发性规则数据库244的更新后的启发性规则。此外,在本发明一实施例中,启发性规则是由查询结果决定的。也就是说,垃圾邮件检测中使用个别启发性规则可以根据从评价服务器210和/或垃圾邮件特征服务器215查询的结果而更改。
与在配置或预先设定的时间内重新评测信息队列243中的邮件信息相比,在其他实施例中,预先设定的一项或多项事件可以触发对邮件信息的重新评测。例如,邮件队列243中的邮件信息可以根据以下事件的触发接受重新评测,i:启发性规则数据库244中的启发性规则的更新;ii:评价服务器210中发件人评价信息更新或到反垃圾邮件引擎的个别发件人评价信息的属性更新;和/或iii:反垃圾邮件特征服务器215的特征评价信息的更新或有利于反垃圾邮件引擎241的特定的特征评价信息的更新。
在本发明一实施例中,不同信息队列可以由不同类别的特征进行处理。在这样的实施例中,信息队列中与已更新的类别特征有关的信息,与队列中尚未更新类别特征有关的队列信息可以进行分别、独立的处理。
在一个实施例中,独立功能性模块的功能可以多种方式结合。请参照图1与图2,例如,反垃圾邮件引擎241可以与信息传输代理242集成以及启发性规则更新服务器220和/或评价服务器210可以与全球情报服务器125集成。
此外,以上所述本发明的各种实施例均围绕有关邮件服务器,但是,这样的实施例说明并不限制本发明的范围。而且,所述的反垃圾邮件方法同样适用于电子邮件与网络设备以及软件,包括:用户端工作站、邮件用户端软件、网络网关、防火墙以及其他邮件通过的邮件与网络设备。
图3是本发明所使用的一计算机系统示例图。计算机系统300可以是或者为邮件服务器、用户端工作站、网络网关、防火墙、网络安全设备、交换机、桥接设备、路由器和/或其他网络设备的一部分,执行评价缓存245、反垃圾邮件引擎241、信息队列243、以及启发性规则数据库244的功能。如图3所示,该计算机系统300包括一个或多个处理器305、一个或多个通信接口310、主内存315、只读内存320、大容量存储器325、总线330以及可移动存储介质340。
处理器305可以是英特尔
或
处理器,
或
处理器或本技术领域内熟悉的其他处理器。
通信接口310可以是物理和/或逻辑接口。例如,通信接口可以是与基于调制解调器的拨号连接的任何RS-232接口、10/100以太网接口、或铜或光纤的千兆接口。通信接口310也可以根据计算机系统300连接的网络如局域网(LAN)或广域网(WAN)进行选择。通信接口310也可以是以逻辑连接(如传输控制协议(TCP:Transmission Control Protocol)或用户数据报协议(UDP:Universal Datagram Protocol))结尾命名。例如,通信协议可以是由互联网地址指派机构(IANA:Internet Assigned Numbers Authority)根据特殊用途指派的以下公知的端口之一,如SMTP端口25。
主内存315可以是随机存储内存(RAM:Random Access Memory)或公知的任何其他动态存储设备。
只读存储器320可以是任何静态存储装置例如用于存储静态信息如处理器305的指令的可编程只读存储器(PROM)芯片。
大容量存储器325可以用来存储信息与指令。例如,硬盘如系列的SCSI驱动器、光盘、磁盘阵列如RAID,如Adaptec系列的RAID驱动,或任何其他可以使用的大容量存储装置。
总线330是处理器305与其他内存,存储以及通信模块之间的通信连结。总线330可以是根据所使用的存储装置基于PCI/PCI-X或SCSI的系统总线。
移动存储介质340可以是任何种类的外部硬驱动,软盘,压缩驱动,压缩磁盘一只读存储器(CD-ROM),压缩磁盘一可写存储器(CD-RW),数字录像磁盘一只读存储器(DVD-ROM)。
还有便是,操作员与管理员界面(图中没有示出),如显示器、键盘与指针控制设备,可与总线330连接用以支持操作员对计算机系统100的直接操作。其他操作员与管理接口可以通过连接的通信接口310的网络连接来实现。
图4所示是根据本发明的实施例,简化的反垃圾邮件处理的流程说明图。根据上文所述,反垃圾邮件操作可以由全球情报网络中代表全球情报服务器125统一进行收集全球情报的反垃圾邮件引擎同时进行。至少,反垃圾邮件引擎的处理操作从判断流程410起,该流程中反垃圾邮件引擎等待有关各种预先定义的事件的信号。在当前实施例中,预先定义的事件包括:i:接收到邮件协议连接请求;ii:接收到新的启发性规则;以及iii:发生重新评价触发事件。一旦收到邮件协议连接请求,例如,表示收到信息的SMTP连接或其他邮件协议事件,反垃圾邮件引擎处理操作将进行接下来的流程420。如果检测到触发重新评测的事件,反垃圾邮件引擎的操作步骤将实行流程450。当接收到启发性规则更新后,反垃圾邮件引擎的操作步骤将实行流程460。
在流程420,执行评价分析操作。在本发明一实施例中,评价分析操作包括反垃圾邮件引擎241向评价服务器210和/或全球情报服务器125查询原始邮件发送人连接请求的发件人评价信息。该评价分析可以只在本地评价缓存如评价缓存245中进行缓存内查询,或是在该缓存内查询后再于评测服务器210和/或全球情报服务器125中进行查询。
在流程430,将根据邮件安全策略处理连接请求。如果连接请求的发出者是可信的,连接将被接受。请参照图2及图4,例如,连接请求的发出者的发件人评价符合或超出预先定义或配置的可信阀值,该请求发件人向本地用户工作站发送的任何邮件将被从远程MTA260传输到本地MTA242。但是,如果发出连接请求端被判定为可不信任的,该连接将被丢弃。
假设连接被接受,在流程440中,反垃圾邮件引擎241将执行初始邮件处理。有关初始邮件处理的描述将参照图5后续进行详细说明。
流程450中,检测到一个重新评测触发事件。作为重新评测触发的回应,反垃圾邮件引擎241将执行电子邮件信息的重新评测处理,操作过程将参照图6后续进行详细说明。在本发明一个实施例中,邮件重新评测的触发事件可以是预先设定的超过执行初始邮件处理后的一段时间,例如1到10分钟。在本发明一个实施例中,重新评测可以每隔约五分钟被触发。其他实施例中,重新评测的触发事件可以是接收到新的启发性规则、来自全球情报服务器125或评价服务器110的特征评价信息更新的信号、发件人评测信息更新的信号、以及垃圾邮件特征数据库116中特征评测信息更新的信号和/或类似的事件。
在理想的情形下,除了与之前评测产生同样结果的情况外,电子邮件信息还可以在以下情况下被触发进行重新评测,i:与划分特定信息是干净邮件或是垃圾邮件有关的特征评价信息的更新;或ii:影响特殊信息是干净邮件或垃圾邮件分类的启发性规则。这样的理想情形可能不能实现;因此,需要根据计时器或更多的常规事件来接近理想状态下的情形。在本发明一个实施例中,反垃圾邮件引擎先前进行的与一个特定电子邮件信息的特征有关的特征评价信息的查询,可以操作为以反垃圾邮件引擎的名义进行的涉及该特定邮件特征的或涉及该特定邮件特征所属类别的升级的订阅。
在流程460中,有了新的可用的启发性规则。在本发明一个实施例中,新的启发性规则事件表示已经接收到新的启发性规则。其他实施例中,该事件表示轮询启发性规则更新服务器120判断启发性规则更新服务器120中更新的启发性规则的可用性,或从启发性规则更新服务器120接收到的通知。本地存储的启发性规则的更新可以使用主动推进或被动接受的技术。无论如何,一旦有了新的启发性规则,启发性规则数据库244中更新的规则将替换现有的启发性规则,从而升级本地反垃圾邮件检测的部分算法。
当前的实施例中,只示出了两个信息处理的步骤操作,例如,流程440中的初始信息处理以及流程450中的信息重新评测,在其他实施例中,如果第二次重新评测后仍然不能明确判断电子邮件信息是否垃圾邮件或干净邮件,那么会接着执行多个重新评测的循环。另外,重新评测操作可以包括执行评价分析,例如流程420所示的操作。
图5所示是根据本发明一实施例所述有关初始信息处理的流程。根据当前所述实施例,在流程510,对不能明确判断的电子邮件信息执行一项或多项垃圾邮件检测操作。除了以上所述的垃圾邮件检测的方法,对于反垃圾邮件引擎241所使用的垃圾邮件检测的方法的类型或数量并不作限制。所述的延迟后的重新评测基于所集合的全球情报从而得出更准确的判断结果,那些能够根据现行垃圾邮件检测的趋势而调整的反垃圾邮件方法比那些不具有这样灵活性的方法更适用。在一个实施例中,垃圾邮件特征与启发性规则都用来识别未能明确判断是否垃圾邮件的电子邮件信息。其他实施例中,可以使用各种垃圾邮件检测方法与内容过滤技术的结合,包括但不局限于,反向DNS检测、白名单、贝叶斯判断分类以及类似的方法。此外,垃圾邮件的检测方法可以不同的方式相结合,相辅相成。例如,一项垃圾邮件检测算法的输出可以被其他垃圾邮件的检测方法作为输入值。亦或者,垃圾邮件检测算法的输出值可以被平均作为垃圾邮件/干净邮件判断标准或计数。
在判断流程520中,反垃圾邮件引擎241根据流程510中所产生的垃圾邮件检测结果对电子邮件信息进行处理。根据当前所述的实施例,如果问题邮件信息的检测结果或计数与预先设定的或配置的干净邮件的阀值符合,初始邮件信息处理步骤将在流程530进行。如果检测结果符合预先设定的或配置的垃圾邮件的阀值,初始邮件信息处理步骤将执行流程540;如果,垃圾邮件检测的结果还是不能确定或没有结果,将执行流程550。
在流程530,问题邮件信息已经被判定为干净邮件且电子邮件信息被传输并到达邮件的目标用户。
流程540中,问题邮件信息已经被判定为垃圾邮件。被判定垃圾邮件的电子邮件信息将按照邮件安全策略进行处理。例如,垃圾邮件可以被删除、隔离、发送到垃圾邮件文件夹、或是原邮件主题被修改添加“垃圾邮件(SPAM、JUNK)”这样的信息或类似这样的处理方法。
流程550中,有关问题邮件是否干净邮件或垃圾邮件的判断还不能被一项或几项垃圾邮件检测方法而确定。那么,电子邮件信息将被队列处理延迟发送进行重新评测。实际上,电子邮件信息将被暂时隔离处于待重新评测状态。在一个实施例中,这样的邮件信息将被存储在网络设备中,如执行初始邮件信息处理的邮件服务器140或网络网关130。另一个实施例中,执行初始信息处理的设备只是将需要进行重新评测操作的信息进行标记并将信息转发到其他例如邮件服务器140或用户端工作站180这样的设备中等待然后进行重新评测。其他实施例中,各种其他设备的组合将执行一项或多项初始信息处理、队列处理以及重新评测的操作。
再次说明,尽管所述的各种实施例是基于图1所示的简化的网络架构以及图2中所示的邮件服务器240,需要说明的是,上述的初始信息处理可以由图1网络架构中示出的其他各种设备或没有示出的设备来执行。例如,初始信息处理可以由网络网关130、邮件服务器140、用户端工作站180、路由器、交换机、防火墙、或电子邮件信息通过的其他设备执行。初始信息处理也可以分配到多个设备完成。
图6所示是根据本发明的实施例所述电子邮件信息被重新评测的过程流程图。根据一实施例,重新评测的操作可以被重新评测的事件所触发,例如,设置的初始信息处理完成的计时过期、所配置的或预先设定的间隔计时、启发性规则数据库244中启发性规则的更新、全球情报服务器225中有了可用的常规或特殊邮件特征评价信息的更新,诸如这样的事件。根据操作执行的情况,一项或多项被队列处理的邮件信息可以被执行重新的评测操作(例如,这些待处理的信息是在设定的某段时间内或大于设定的时间)。
根据当前所述的实施例,在流程610中,对问题邮件信息将执行一项或多项垃圾邮件检测操作。根据本发明一实施例,该电子邮件信息已经进行了初始的邮件信息处理,但是初始的信息处理对于邮件是否是干净邮件或垃圾邮件未做出明确的判断。那么,经过若干时间后且假设这段时间内全球情报服务器125中常规或特定的特征评价信息已升级和/或启发性规则数据库244中存在已更新的启发性规则。不管怎样,这些在重新评测中应用的一项或多项垃圾邮件检测的方法可能在初始检测时已经应用过,也可能与之前初始检测的方法完全不同。在一实施例中,所执行的一项或多项垃圾邮件垃圾中的方法可以包括发件人评价的重新评测,例如在图4流程420所执行的操作。
在判断流程620,反垃圾邮件引擎241根据流程610中产生的垃圾邮件检测结果判断如果处理问题邮件信息。根据当前实施例,如果问题邮件的检测结果或计数符合预先设定的或配置的干净邮件的阀值,那么重新评测信息操作将继续流程630,否则将执行流程640。
在流程630,问题邮件信息被判断为干净邮件并被传送到终端用户可访问的邮件的目标地址。
在流程640,邮件信息被判断为垃圾邮件。垃圾邮件将根据垃圾邮件的邮件安全策略进行处理。例如,垃圾邮件可以被删除、隔离、发送到垃圾邮件文件夹、或是原邮件主题被修改添加“垃圾邮件(SPAM、JUNK)”这样的信息或类似这样的处理方法。
再次说明,尽管所述的各种实施例基于图1所示的简化的网络架构以及图2所示的邮件服务器240,需要说明的是,上述的重新评测邮件的操作可以由图1网络架构中示出的其他各种设备或没有示出的设备来执行。例如,初始信息处理可以由网络网关130、邮件服务器140、用户端工作站180、路由器、交换机、防火墙、或电子邮件信息通过的其他设备执行。邮件信息的重新评测也可以分配到多个设备完成。并且,电子邮件信息的重新评测可以在执行初始邮件信息处理相同的设备或不同的设备中操作。最后,虽然本文所述的是单个的信息重新评测操作,应该理解的是如果所述的问题邮件在经过第一次的重新评测后仍然不能对邮件做出判断时,在特殊的使用环境中执行再次或多次的重新评测也是可行的。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。