首页 / 专利库 / 人工智能 / 人工智能 / 机器人技术 / 机器人 / 非完整机器人 / 通过探测数据传输来检测垃圾邮件机器人的系统和方法

通过探测数据传输来检测垃圾邮件机器人的系统和方法

阅读:728发布:2020-09-13

专利汇可以提供通过探测数据传输来检测垃圾邮件机器人的系统和方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种通过邮件 服务器 模 块 检测客户端设备的垃圾邮件 机器人 活动的计算机实施的系统和方法。在邮件服务器模块和客户端设备之间根据预定协议进行 电子 邮件会话,包括邮件服务器模块和客户端设备之间的消息交换。邮件服务器模块探测与预定协议的符合性,包括将至少一个异常状况有意引入到来自邮件服务器模块的第一消息;监控来自客户端设备的后续消息传输;将后续消息与参考标准相比较;以及根据后续消息依据预定协议构成对至少一个异常状况的正确响应的程度生成客户端设备的名誉度判定,名誉度判定能够指示客户端设备进行垃圾邮件机器人活动的可能性。,下面是通过探测数据传输来检测垃圾邮件机器人的系统和方法专利的具体信息内容。

1.一种用于检测垃圾邮件机器人活动的计算机实施的系统,所述系统包括:
计算机硬件,所述计算机硬件包括处理器、操作存储器、非易失性数据存储器、以及通信设备;
邮件服务器,所述邮件服务器模块能够在所述计算机硬件上执行,并且适用于根据电子邮件协议通过所述通信设备响应来自多个电子邮件客户端的电子邮件请求
会话处理器模块,所述会话处理器模块能够在所述计算机硬件上执行,并且适用于探测所述多个电子邮件客户端中的第一电子邮件客户端,所述探测是在所述第一电子邮件客户端和所述邮件服务器模块之间的通信会话期间进行,所述通信会话包括来自所述第一电子邮件客户端和来自所述邮件服务器模块的消息传输,其中所述会话处理器模块还适用于:
在所述通信会话期间将至少一个异常状况有意地引入到来自所述邮件服务器模块的第一消息传输中,并且监控在所述第一消息传输之后发送的来自所述第一电子邮件客户端的后续消息传输;
将所述后续消息传输与参考标准相比较,所述参考标准表示根据所述电子邮件协议对所述至少一个异常状况的正确响应;以及
根据来自所述第一电子邮件客户端的所述后续消息传输构成对所述至少一个异常状况的正确响应的程度,生成所述第一电子邮件客户端的第一名誉度判定,所述名誉度判定指示所述第一电子邮件客户端进行垃圾邮件机器人活动的可能性。
2.根据权利要求1所述的系统,其中所述电子邮件协议是SMTP协议并且其中所述邮件服务器模块是SMTP服务器。
3.根据权利要求1所述的系统,其中所述至少一个异常状况包括时间延迟。
4.根据权利要求1所述的系统,其中对所述至少一个异常状况的所述正确响应包括由所述第一电子邮件客户端延迟传输。
5.根据权利要求1所述的系统,其中所述至少一个异常状况包括指示错误的SMTP应答代码。
6.根据权利要求1所述的系统,其中所述至少一个异常状况包括指示应答包括多行的SMTP应答代码。
7.根据权利要求1所述的系统,其中所述至少一个异常状况是不完整消息。
8.根据权利要求1所述的系统,其中所述会话处理器模块还适用于根据对所述第一电子邮件客户端使用的协议类型的判定,来设定所述第一电子邮件客户端的所述第一名誉度判定。
9.根据权利要求1所述的系统,其中所述会话处理器模块还适用于根据所述第一电子邮件客户端响应于所述至少一个异常状况而产生的错误类型的判定,来设定所述第一电子邮件客户端的所述第一名誉度判定。
10.根据权利要求1所述的系统,其中所述会话处理器模块还适用于根据所述第一电子邮件客户端发送的相似电子邮件的数量的判定,来设定所述第一电子邮件客户端的所述第一名誉度判定。
11.根据权利要求1所述的系统,其中所述会话处理器模块还适用于根据所述第一名誉度判定向所述第一电子邮件客户端发出通知或修正操作。
12.根据权利要求1所述的系统,其中所述会话处理器模块还适用于根据所述第一名誉度判定向所述第一电子邮件客户端之外的至少一个电子邮件客户端发出通知或修正操作。
13.一种通过邮件服务器模块检测客户端设备的垃圾邮件机器人活动的计算机实施的方法,所述方法包括:
通过所述邮件服务器模块进行与客户端设备的电子邮件会话,所述电子邮件会话根据预定协议进行并且包括所述邮件服务器模块与所述客户端设备之间的消息交换;以及通过所述邮件服务器模块探测所述客户端设备与所述预定协议的符合性,包括:
有意地将至少一个异常状况引入到来自所述邮件服务器模块的第一消息中;
监控来自所述客户端设备的后续消息传输,所述后续消息在所述第一消息之后被发送;
将所述后续消息与参考标准相比较,所述参考标准表示根据所述预定协议对所述至少一个异常状况的正确响应;以及
根据所述后续消息依据所述预定协议成为对所述至少一个异常状况的正确响应的程度,生成所述客户端设备的名誉度判定,所述名誉度判定指示所述客户端设备进行垃圾邮件机器人活动的可能性。
14.根据权利要求13所述的方法,其中根据预定协议进行所述电子邮件会话包括根据SMTP协议进行所述电子邮件会话。
15.根据权利要求13所述的方法,其中引入所述至少一个异常状况包括引入时间延迟。
16.根据权利要求13所述的方法,其中引入所述至少一个异常状况包括引入所述邮件服务器模块发生错误的虚假指示。
17.根据权利要求13所述的方法,其中引入所述至少一个异常状况包括引入正确响应为所述客户端设备的时间延迟的异常状况。
18.根据权利要求13所述的方法,其中引入所述至少一个异常状况包括发送不完整消息。
19.根据权利要求13所述的方法,还包括根据所述电子邮件会话期间所述客户端设备的行为的至少一个附加参数来设定所述名誉度判定。
20.根据权利要求13所述的方法,还包括根据所述名誉度判定向至少一个客户端设备发出通知或修正操作。

说明书全文

通过探测数据传输来检测垃圾邮件机器人的系统和方法

技术领域

[0001] 本发明涉及实时分析网络数据传输的系统和方法,尤其涉及对通过网络协议发送多余数据或“垃圾邮件(spam)”的程序的识别和使之失效。

背景技术

[0002] 全世界每天有数以百万计的电子消息(电子邮件)通过例如互联网的网络发送,但是它们中的大多数是主动提供的和多余的,即所谓“垃圾邮件”。电子垃圾邮件已经被定义成包含商用的、政治的和其它形式的广告以及恶意程序和网络钓鱼或其它声名狼藉的网站的链接的消息。垃圾邮件最令人不快之处在于定期地通过互联网向并未表示期望接收这类消息的个人发送消息。此外,由于每个典型的互联网用户在一天中会收到数十或甚至数百个垃圾邮件消息,因此统计表明垃圾邮件达到所有被发送消息的90%。很显然如何对付垃圾邮件的问题是极其重要的。
[0003] 对付垃圾邮件的一种方式是使用能够通过一个或多个关键字或通过将发送者的地址放入黑名单来发现垃圾邮件消息的各种过滤器。更先进的技术例如使用柱状图或分类也使用户能够将垃圾邮件检测的程度提升为有时接近100%的数值。现在这些技术实施在为个人用户和公司部设计的诸如反垃圾邮件过滤器,反垃圾邮件邮递,GFI MailEssentials,卡巴斯基互联网安全和卡巴斯基反垃圾邮件的商用产品中。
[0004] 这些方案在垃圾邮件已被发送到用户的电子邮件服务器之后对其进行处置,并不能解决主要问题本身,即大量发送的垃圾邮件。这些方案也冒着误报的险,即合法的电子邮件(例如,来自朋友或同事)一旦碰巧触发了过滤机制可能表现为垃圾邮件。
[0005] 大部分垃圾邮件现在通过个人程序——也称为垃圾邮件机器人(spam bots)——执行发送,所述程序经常被隐蔽地安装在用户的计算机上用以执行诸如发送垃圾邮件的定期操作。垃圾邮件发送者短期租用的发送垃圾电子邮件的各种服务器,并不是垃圾邮件的主要来源,而是出于促进传输的目的。因此,对付垃圾邮件的一个可选办法是在用户的计算机上检测垃圾邮件机器人。对于一个使用10-20Mbps信道带宽的家庭用户来说垃圾邮件量可达到每天50-100G字节的垃圾邮件。由于存在大量的垃圾邮件机器人,总通信量可引起邮件服务器严重压。因此迫切需要从用户计算机有效删除垃圾邮件机器人。

发明内容

[0006] 鉴于上述原因,需要创建一种系统,该系统能够根据垃圾邮件机器人执行的操作类型和它们的实施方式的细节识别它们,并在它们的操作中挖掘潜在的弱点以进一步定和删除垃圾邮件机器人。本发明的一个方面是用于分析客户端程序对服务器上的数据传输协议的使用和交互。该分析的结果可用于辨认、阻止和删除发送出垃圾邮件的程序。
[0007] 除了根据垃圾邮件机器人的行为方式发现它们以外,另一种检测它们的方式与它们的拙劣的实施方式有关。垃圾邮件机器人经常被实施为试图与合法的邮件服务器交互的SMTP客户端。发明人已经认识到垃圾邮件机器人往往被拙劣地优化并具有用于它们自行发送电子邮件的低质量算法。这是由于垃圾邮件机器人设计者方面缺乏能力,或也许是由于垃圾邮件机器人的主要任务是在短时间内尽可能多的发送垃圾邮件,而使其设计者感到没有必要去改进垃圾邮件机器人。
[0008] 本发明的一个实施例通过分析程序对数据传输协议的使用来确定该程序的实施方式的错误,从而辨认、阻止和删除发送垃圾邮件的程序。
[0009] 根据一个实施例的一种用于检测垃圾邮件机器人活动的计算机实施的系统,所述系统包括计算机硬件(所述计算机硬件包括处理器,操作存储器,非易失性数据存储器,以及通信设备);邮件服务器模,所述邮件服务器模块能够在所述计算机硬件上执行,并且适用于根据电子邮件协议通过所述通信设备响应多个电子邮件客户端的电子邮件请求;会话处理器模块,所述会话处理器模块能够在所述计算机硬件上执行,并且适用于在所述多个电子邮件客户端中的第一电子邮件客户端和所述邮件服务器模块之间的通信会话期间探测所述第一电子邮件客户端(所述通信会话包括来自所述第一电子邮件客户端和来自所述邮件服务器模块的消息传输)。所述会话处理模块可被集成到所述邮件服务器模块,或实施为与之分离的形式。所述会话处理模块适用于在所述通信会话期间将至少一个异常状况有意地引入到来自所述邮件服务器模块的第一消息传输(例如SMTP应答)中,并且监控在所述第一消息传输之后发送的来自所述第一电子邮件客户端的后续消息传输(例如SMTP请求)。所述至少一个异常状况可以是一个或多个任何种类的异常状况,即,例如(在当时情况下)非标准或异常状况的消息或时间延迟。来自所述第一电子邮件客户端的所述后续消息传输与参考标准相比较,所述参考标准表示根据所述电子邮件协议对所述至少一个异常状况的正确响应。基于所述比较,根据来自所述第一电子邮件客户端的所述后续消息传输构成对所述至少一个异常状况的正确响应的程度,生成所述第一电子邮件客户端的第一名誉度判定。因此所述名誉度判定能够指示所述第一电子邮件客户端进行垃圾邮件机器人活动的可能性。
[0010] 根据一个实施例,检测垃圾邮件的系统使用名誉度规则数据库进一步确定所述客户端和服务器之间的通信所使用的数据传输协议,以及垃圾邮件程序的类型。所述名誉度规则数据库被配置为存储用于确定客户端程序正在发送出垃圾邮件的可能性等级的名誉度规则,用于评估请求的数量的工具方法与用于确定垃圾邮件程序类型的工具以及用于分配反垃圾邮件程序的工具相关联。当用于评估请求数量的工具确定了服务器接收到的来自其它客户端和其地址列表的相似请求的数量时,用于确定发送垃圾邮件的程序的类型的工具与该程序的特征数据库相关联。用于确定垃圾邮件程序的类型的工具将来自确定数据传输协议的工具和来自评估请求数量的工具的数据,与来自垃圾邮件程序特征数据库的数据比较,以识别发送垃圾邮件的程序。垃圾邮件程序特征数据库用于存储识别垃圾邮件的数据。用于传播反垃圾邮件程序的工具通过发送针对垃圾邮件程序的“药方”到接收自评估请求数量的工具的客户机地址,以删除垃圾邮件程序。
[0011] 在一个特定实施例中,客户端的名誉度在其触发一组特定规则时被计算,每条规则描述了数据传输协议的各种不同的实施方式错误。
[0012] 下列关于优选实施例的详细描述会显现出多个优势。附图说明
[0013] 通过结合附图来考虑在后面将详细描述的本发明的各个实施例,能够更加完整地理解本发明。在附图中,图1A至1C描述了客户端-服务器模式的各种安排方式,其中根据不同的实施例实施本发明的各个方面;
图2描述了根据本发明的一个实施例,SMTP会话处理器与客户端交互的实例;
图3描述了根据本发明的一个实施例,操作垃圾邮件机器人检测系统的实例;
图4示出了根据本发明的一个实施例,实施反垃圾邮件机器人处理的示例性系统;
图5描述了可在其上实施本发明的实施例的示例性计算机系统
[0014] 尽管本发明能够接受各种修改和替换形式,但其细节已通过附图中的实例的方式展现并将被详细地描述。然而,应该理解这样做的目的并非是将本发明限制为所描述的具体实施例。相反,这样做是为了囊括落在由后附权利要求所限定的本发明的主旨和范围内的所有修改、等同和替换形式。

具体实施方式

[0015] 涉及电子数据传输的每个垃圾邮件机器人使用特定的协议来与邮件服务器通信。尽管下面的实施例是围绕简单邮件传输协议(SMTP)描述的,但应该理解的是本发明的原理可以适当修改并应用于其它协议,在这些协议中这种修改和应用是切实可行的。下面的表1是使用这种协议的简单会话的实例,这有助于演示垃圾邮件机器人执行的各种操作。在这个示例性的SMTP会话中,由服务器和作为潜在的垃圾邮件机器人的客户端执行的操作被作为时间的函数逐步制图记录(时间轴按由上至下顺序进行)。
[0016] 表1SMTP协议本质上是对话,通常是单方的:客户端发送命令(即,“请求”),服务器用“应答”来响应。
[0017] 本发明一方面认识到SMTP协议中有一种方法可以使服务器引发客户端的特定行为。根据这种行为的出现(或缺失),服务器可以记录客户端的在相关垃圾邮件方面的名誉度等级。
[0018] 在一个典型实施例中,服务器有意地把异常状况引入与客户端的通信中,例如通过提供对客户端请求的非标准响应,对所述非标准响应客户端可以或无法正确地响应。服务器监控客户端的后续请求以了解后续请求是否以某种方式响应异常状况。在监控中,观察后续请求的内容和/或其时序,并与参考标准相比较,所述参考标准为根据SMTP协议被认为是对这种异常状况的正确响应。
[0019] 这种方法的一个前提是SMTP客户端的合格的实施方式往往能够正确响应服务器的这种非标准响应,而SMTP客户端的不合格的实施方式(诸如常见的垃圾邮件机器人的情形)不能够正确响应服务器的这种非标准响应。
[0020] 在某些实施例中,识别客户端程序的缺陷的机制是根据在服务器的应答发送之前和期间不时引入的延迟。在服务器操作中的这种类型的异常状况与对客户端响应时序的监控相结合。拙劣设计的客户端会无法适应异常状况,由此暴露出自身的缺陷。
[0021] 在相关的实施例中,服务器的非标准操作或异常状况通过由服务器发布的各种数字应答代码来实施。应答代码被定义在SMTP标准RFC-2821中,在此将其通过引用并入本文。例如,应答代码可以采用从100到999范围的数字的形式,表现为字符串。
[0022] 如RFC-2821所规定,应答的三位数字的每一位均具有特定含义。第一位数字表示响应是好的、坏的或者不完整的。简单的SMTP客户端或接收到异常代码的客户端将能够通过检查这个第一位数字确定它的下一个操作(按计划继续做、重新做、删除等)。想要知道大概发生了哪种错误(例如,邮件系统错误、命令语法错误)的SMTP客户端可以检查第二位数字。第三位数字和可能出现的任何补充信息被留做用于最精细的信息分级。例如,通过第一位数字分类的应答代码包括以下类别:2xx – 命令成功完成
3xx –需要来自客户端的更多数据
4xx – 临时错误,客户端必须在一定时间后重新尝试
5xx – 致命错误
正确开发的SMTP客户端应当正确地处理服务器的所有应答代码,包括很少使用的代码,并且考虑延迟(即,服务器响应的等待时间)。恶意软件设计者通常并不考虑符合标准,这意味着他们做出的恶意软件常常无法执行某些操作以响应特定的应答代码。例如,3xx和
4xx类别的应答代码通常引发符合标准的客户端的重试尝试。根据应答代码的性质,重试尝试可以被快速地正确执行,或者在一段延迟之后被执行。垃圾邮件机器人可能完全忽略这种应答代码,或者可能以不符合应答代码的方式重试,例如当延迟的重试为最适合的响应时,垃圾邮件机器人却立即或者不间断地重试。
[0023] 现在转向附图,附图1A-1C和4描述了用于检测和可选择地修复或禁止垃圾邮件机器人的一组计算机实施的系统。根据本发明的实施例,这些系统通常实施在客户端-服务器模式的服务器端。每个计算机实施的系统可以是一个物理机器,或者可以是诸如根据作用或功能,或通过计算分布式模型情形下的程序线程分布到多个物理机器之中作用功能。在各种实施例中,本发明的各个方面可以被配置以运行在虚拟机上,而所述虚拟机则运行在一个或多个物理机器上。本领域的技术人员将会理解本发明的特征可以通过各种不同的适当的机器实施方式实现。在附图1A-1C和4的系统中,描述了各种模块,例如SMTP服务器120,SMTP会话处理器模块130,以及客户端策略模块140。这里使用的术语“服务器”或“模块”表示实体元件,组件,或使用硬件实施的组件安排,诸如通过专用集成电路(ASIC)或现场可编程门阵列(FPGA),或硬件和软件的组合,诸如通过微处理器系统和一组指令来实现服务器或模块的功能并且(在被执行时)将该微处理器系统转换为专用装置。一个模块也可以实施为两个模块的组合,某些功能仅用硬件帮助实现,其它功能用硬件和软件的组合来帮助实现。在某些实施方式中至少有一部分,而且在一些情况下整个的服务器或模块都可以在一个或多个通用计算机(例如在下面更加详细地描述的那个计算机)的处理器上执行,所述处理器在执行操作系统、系统程序以及应用程序的同时也使用多任务、多线程、分布式(例如,云)处理、或其它此类技术来实施服务器或模块。因此,服务器或模块可用多种适当的配置来实现,并且不应被限制于本文中任何特定的示例性的实施方式。
[0024] 图1A至1C示出了实施SMTP协议的各种模块。图1A描述了客户端110与SMTP服务器120交互的典型模型。在这种安排下,客户端110(也称为邮件用户代理(MUA),即,允许用户在他们的计算机上发送和接收消息的程序)传送数据到SMTP服务器120(也称为MTA,邮件传输代理,即,在服务器上负责发送邮件的程序)。如上面给出的SMTP会话的实例所示,交互作用表现为与客户端的服务器的单向对话,其中服务器仅通知客户端关于执行的操作的状态。
[0025] 图1B描述了根据一个实施例的SMTP会话处理器模块的实例。会话处理器模块包括用于跟踪SMTP会话框架中的交互作用的顺序和时序的模块。SMTP会话处理器模块130位于客户端110和SMTP服务器120之间。除了处理客户端110向SMTP服务器120的请求,SMTP会话处理器模块130也连接到客户端策略模块140。客户端策略模块140可包括使用IP地址黑名单、关于电子邮件信函传输的各种禁止等。策略可以实施为在某些时间段(这是由于某些垃圾邮件机器人在一天中的某些时段工作以躲避检测)阻止电子邮件的发出。
[0026] 图1C示出了根据上面的图1B的实施例的变体,SMTP会话处理器模块130和客户端策略模块140模块作为SMTP服务器120的集成子部件。
[0027] 大多数垃圾邮件机器人以批量加载的方式开始上传他们的数据,即不是以通知服务器交换的方式而是以即时数据流的方式。很多服务器支持SMTP流线的扩展(如RFC2920中所规定的)或不检查客户端所发送的命令的顺序。这使垃圾邮件机器人能够无需执行任何对服务器的响应的读取操作而向服务器发送消息,这简化了设计非法的客户端(例如垃圾邮件机器人)的任务。很多垃圾邮件机器人的行为完全按照这种方式。在一个实施例中,SMTP会话处理器模块130通过检查客户端所发送的命令的顺序和时序来检测垃圾邮件机器人。在一个示出的实例中,在对客户端的MAIL命令发出肯定响应的过程中执行下列检查:
0. 客户端发送MAIL命令
1. 服务器发出应答代码:250-OK 。由于服务器提供多行应答代码(在数字应答代码后的连字符表明将会有更多的应答到来,并且每行以符号 结束),客户端的正确响应应该是在发送新命令之前等待附加行。
[0028] 2. 服务器在5秒的超时期内监控套接字。如果在超时期期间客户端发送数据,则服务器记录关键性错误并且更新该客户端的名誉度值以提高该客户端的可疑等级。如果在5秒的超时期期间没有来自客户端的响应,则假定客户端正在正确地等待多行应答序列的附加行,并且过程继续进行。
[0029] 3. 服务器发送表明其为多行应答的最后一行(即,没有连字符)但是不包含字符的不完整应答:250 OK
[0030] 4. 服务器在5秒的超时期内监控套接字。如果在超时期期间客户端发送数据,则服务器记录关键性错误并且更新该客户端的名誉度值以提高该客户端的可疑等级(即,生成更差的名誉度记录)。如果在5秒的超时期期间没有来自客户端的响应,则假定客户端正在正确地等待最后的字符,并且过程继续进行。
[0031] 5. 服务器发送表明多行应答结束的结尾字符:
[0032] 6. 服务器在5秒的超时期内监控下一个命令的套接字。如果这期间没有数据,则服务器记录非关键性错误,并且更新客户端的名誉度等级以仅少许提高该客户端的可疑等级。
[0033] 在相关的实施例中,SMTP服务器制定一系列延迟和/或提示,用于暴露无法正确响应这些延迟和/或提示的拙劣设计的SMTP客户端。这些延迟和/或提示本身可以是不合法的。例如,尽管成功地接收了来自SMTP客户端的数据或SMTP客户端成功地发出了请求,服务器仍然会发出应答代码421(指示该服务不可用,并且服务器将关闭传输信道)但不实际关闭信道。而是,服务器等待并监控客户端是否重新发送其数据或其请求,客户端是否断开连接并尝试重新连接,或客户端是否完全忽略消息并继续发出其下一个请求。根据客户端对这种由服务器虚构的异常的响应,客户端的名誉度等级可被调整。
[0034] 在另一个相关的实施例中,如果客户端成功响应某些异常,客户端的名誉度可一定程度地恢复。
[0035] 图2示出了SMTP会话处理器模块130和客户端110交互的实例算法。在SMTP会话开始步骤210服务器在套接字连接时开始进行读取操作。读取操作通常发生在服务器将要发出标题之前。标题是来自服务器的响应,是关于在会话开始后其接受客户端命令的意愿。如果套接字在发出标题之前已经接收到数据,则这个过程表明有错误发生,并且表明这个客户端潜在地是垃圾邮件机器人。另一方面,如果在发出标题之后客户端在规定的时间内没有发出数据,则意味着客户端是迟钝的,或服务器正在遭受拒绝服务(DoS)攻击。
[0036] 在步骤220,检查客户端的IP地址或主机名等地址是否出现在例如DUL(拨号用户列表)数据库中,其出现通常表明SMTP会话被用于发送垃圾邮件。在客户端的响应中也检查超时期,即,在特定的服务器响应之后的客户端响应时间。
[0037] 例如,在对多行响应组合的处理进行检查时,查找响应的最后行是否存在字符 (即,到新的行的过渡)是很重要的。如果在发出命令行250-OK 之后并且在5秒的超时期内通过读取套接字获得了任何数据,这可看做关键性错误。这样的评价操作随着其它相似的操作一起在步骤230执行。当收集到关于客户端在响应服务器的非标准操作时发生的过失的数据时,则提高客户端的负面名誉度等级,将其当作为潜在的垃圾邮件机器人。
[0038] 当一组特定的规则被触发时,在步骤240中计算客户端的名誉度,每个规则描述了数据传输协议的各种不同实施方式错误。下面的表2示出了实施SMTP协议的实例。名誉度等级 参数 响应值 参数寿命
关键性 传输客户端数据 标题之前 1个月
非关键性 没有收到客户端命令 发出标题后5秒 1周
关键性 接收到客户端数据 缺少数据 1个月
[0039] 表2每条规则以其自身的评价或名誉度等级为特征。在这个实例中,名誉度等级可通过例如“关键性”、“非关键性”等的类别来表示。评价也可以被数字化表示(例如,发明人为Zaitsev等、申请号为7,530,106的美国专利申请中描述的计算的安全评分,其公开的内容以提述的方式纳入本文)。此外,寿命表示触发的名誉度规则的有效性的持续时间。因此,每个客户端都有其作为潜在垃圾邮件机器人可能性的名誉度等级的特征,所述名誉度等级随时间变化,由此避免可能的误报。
[0040] 图3描述了根据本发明的一个实施例的实例过程。在接收到客户端的请求后,步骤310确定使用的协议的类型(例如,TCP,SSL,IP等等)以及客户端的数据传输行为。客户端的数据传输行为的实例包括客户端响应服务器的应答所需的时间,以及客户端是否正确响应了服务器的应答中的任何有意引入的异常状况。
[0041] 图2描述了步骤310的操作的实例(示出了使用SMTP协议传输数据以及后续的对客户端110的名誉度的判定)。在这个步骤中,服务器执行试图引发客户端的错误的步骤。这些错误可分为两类:(1)关键性错误,表示进一步与客户端工作是不可能或没有意义的(例如,断开连接,致命错误,诸如SSL错误的传输协议错误);(2)一般性错误,由客户端的特定操作或无操作导致,并且不会阻止与客户端的进一步交互。
[0042] 然后,在步骤320检查检测到的客户端使用的协议是否与垃圾邮件机器人相关联。对步骤330的否定回答可以得出结论请求不是垃圾邮件机器人的操作。否则,在步骤340中分析从客户端到服务器的相似请求的数量。在一个实例中相似请求可包括具有相似消息主体内容的发送给各种不同接收者的电子邮件消息。然后,在步骤350检查请求的数量,如果没有超过预定的阈值,则在步骤360系统可以得出结论,请求不是垃圾邮件机器人的操作。
[0043] 否则,如果过程到达步骤370,则系统处于这样的阶段,客户端的请求具有一些特征,即客户端具有和垃圾邮件机器人相符合的名誉度等级(在步骤310确定)、通信协议与已知垃圾邮件机器人使用的协议相符合(在步骤320确定)以及从客户端到服务器的请求的数量足够大以表示客户端可能是垃圾邮件机器人(在步骤340确定)。总之,这些评价表明对服务器的请求是垃圾邮件机器人的操作。
[0044] 在步骤370中,收集客户端被观察到的特征并将其与特定的已知垃圾邮件机器人类型的特征相比较,用以识别出怀疑正在由客户端实施的那个特定的垃圾邮件机器人。如果特定的垃圾邮件机器人可以被识别(或被新近描述出),则其弱点可能已经被知道,或垃圾邮件机器人表现为新类型的情况下可以确定其弱点以开发对付这种垃圾邮件机器人的特定处理程序包。同样在步骤370中,更新日志用以将可疑的垃圾邮件机器人类型与客户端相关联(例如,与客户端的电子邮件或IP地址,主机名,域等等)。最后,在步骤380中向与所分析的客户端表现出相同或充分相似的行为的所有客户端地址发送通知或处理。
[0045] 在一个实例中,通知表明客户端处于垃圾邮件机器人的控制下,它可以有助于电子邮件所有者(或系统管理员)进行修正操作。已设想出多种方法用以传递和应用处理程序包。在一个实例中,此实例适用于使用恶意软件删除工具的客户端计算机系统,可以通知恶意软件删除工具的服务程序关于已发现的垃圾邮件机器人类型,并且可发布包括删除垃圾邮件机器人的指令的恶意软件删除工具更新。在另一个实例中,自定义垃圾邮件机器人删除程序可以专门适用于已发现的或检测到的垃圾邮件机器人类型。这种自定义垃圾邮件机器人删除程序可以发送到在步骤370中被记入日志的、与被分析的客户端表现出相同或相似行为的所有客户端地址。在又一个处理实例中,对垃圾邮件机器人的分析可能已经暴露出其可被利用(例如,使用缓冲器溢出技术,或其它已知或将被确定的技术成果)的弱点,并且服务器能够执行利用这些技术成果来对付垃圾邮件机器人的操作。
[0046] 图4示出了根据本发明的一个实施例的实施反垃圾邮件机器人处理的示例性系统。工具410确定所使用的数据传输协议的类型以及特定的数据根据名誉度规则数据库420来评价名誉度等级。此外,工具430评估来自其它客户端的相似请求的数量。通过结合从两个来源接收到的信息,工具440确定垃圾邮件机器人的类型并将这个信息与垃圾邮件机器人特征数据库450中存储的数据相比较。在垃圾邮件机器人被成功地确定后,反机器人工具460向发送了与被分析的请求相似的请求的地址发送处理,或开始其它诸如上述的修正操作。
[0047] 图5是一个通用计算机系统实例,在其上可实施本发明的垃圾邮件机器人检测器的各个实施例。个人计算机或服务器20包含CPU 21,系统存储器22和系统总线23,系统总线23包含各种系统组件,其中包括与CPU 21相关联的存储器。系统总线23被实施为任何公知的总线结构,包括总线存储器、总线存储控制器、外围总线和局部总线并且可以和任何其它总线结构交互。系统存储器包含只读存储器(ROM)24和随机访问存储器(RAM)25。基本输入/输出系统(BIOS)包含例如在使用ROM 24启动时保证个人计算机20的部件间信息传输的主程序,。
[0048] 个人计算机20包含用于读写的硬盘驱动器27、用于读写可擦除磁盘29的磁盘驱动器28以及光盘驱动器30,光盘驱动器30用于读写例如CD-ROM、DVD-ROM或其它光学介质的可擦除光盘31。硬盘驱动器27、磁盘驱动器28、光盘驱动器30分别通过硬盘接口32、磁盘接口33或光盘接口34全部连接到系统总线23。驱动器和相应的计算机存储介质是个人计算机20的计算机指令、数据结构、程序模块和其它数据的非易失存储装置。这个描述展示出使用硬盘、可擦除磁盘29和可擦除光盘31的系统的实施方式,但是应该理解的是可以使用能以计算机可读形式存储数据的其它类型的计算机存储介质盒式录音带、闪存驱动器或其它非易失存储器、数码盘、贝努里盒式磁带、随机访问存储器(RAM)、只读存储器(ROM)等等)。
[0049] 一些可能包括操作系统35在内的软件模块存储在硬盘、磁盘29、光盘31、ROM 24或RAM 25中。计算机20具有文件系统36,所述文件系统36存储操作系统35和附加的软件应用程序37、其它程序模块38和程序数据39。用户能够通过输入设备(键盘40,鼠标42)输入命令和信息到个人计算机20。其它输入设备可以是(未示出):麦克风、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等等。这种输入设备通常通过转而连接到系统总线的串行端口46连接到CPU 21,但也可以通过诸如并行端口、游戏端口或通用串行总线(USB)的其它装置连接。显示器47或其它类型的显示设备通过诸如视频适配器48的接口也连接到系统总线23。除显示器47之外,个人计算机可以装备诸如扬声器和打印机等的其它外围输出设备(未示出)。
[0050] 个人计算机20可以通过使用连接到另一台或多台远程计算机49的逻辑连接以在网络环境中操作。一台(或多台)远程计算机49与个人计算机、服务器、路由器、网络站、对等设备(peering device)或其它网络节点相同,通常具有之前描述的个人计算机20的实体部分的大部分或全部部件,如图5所示,但是仅示出存有应用程序37的存储设备50。逻辑连接包括局域网(LAN)51和广域网(WAN)52,这些网络是常用的办公设施,并且也用于协同计算机网络、公司内部网和互联网。
[0051] 在使用LAN网络时,个人计算机20通过网络适配器或接口53连接到LAN 51。在使用WAN网络时,个人计算机20具有调制解调器54或其它与诸如互联网的广域计算机网络52通信的装置。调制解调器54通过串行端口46连接到系统总线23,并且可以是内置式或者外置式。在网络环境中暴露的个人计算机20的软件模块或部分这类程序被存储在远程存储设备中。应该指出的是网络连接仅仅是说明性的而无需显示出确切的网络配置和网络,即,实际上有建立逻辑连接的其它方式和计算机相互之间通信的其它手段。
[0052] 上述实施例是意图说明而非限制。其它更多的实施例包含在权利要求中。此外,尽管通过参照特定实施例来描述本发明的各个方面,本领域的技术人员将认识到在不背离权利要求限定的本发明的精神和范围的情况下,可以做出形式上和细节上的改变。例如,将异常状况有意引入到服务器对客户端请求的应答的原理可以应用于其它的非SMTP的协议,服务器可以使用该协议请求客户端应答(这种情况下将异常状况引入到服务器的请求中,并且监控客户端对请求的应答)。
[0053] 本领域的技术人员将认识到本发明可以包括比上述任一单独实施例更少的特征。本文描述的实施例并非是意图穷举本发明的各个特征能够被组合的方式。因此,实施例并不是特征的互斥组合,而是如本领域的技术人员所理解的,本发明可包括选自不同的单独实施例的不同的单独特征的组合。
[0054] 上述任何通过引用文件的合并被限制为与本文的明确公开相悖的主题不被合并。上述任何通过引用文件的合并被进一步限制为包含在这些文件中的权利要求不被通过引用合并到本申请的权利要求。但是,除非明确地被排除在外,否则任何这些文件的权利要求被合并成为本文公开的一部分。上述任何通过引用文件的合并还被进一步限制为除非明确地被包含到本文,否则这些文件提供的任何定义都不被通过引用合并到本文。
[0055] 出于解释本发明权利要求的目的,明确意图是不援引美国专利法第112节第六段的内容,除非权利要求使用特定术语“用于…的方法”和“用于…的步骤”。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈