发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的DNS的PING包检测方法及装置。
基于本发明的一个方面,提供了一种DNS的PING包检测方法,包括:
在DNS处接收来自发送方的PING包;
对所述PING包进行解析,根据所述PING包的属性确定所述PING包是否为灰PING包;
若确定所述PING包为灰PING包,则确定所述发送方被入侵。
可选地,对所述PING包进行解析,根据所述PING包的属性确定所述PING包是否为灰PING包,包括:
对所述PING包进行解析,获取所述PING包的、用于标识灰包的附加标识;
根据所述PING包的附加标识确定所述PING包是否为灰PING包。
可选地,对所述PING包进行解析,根据所述PING包的属性确定所述PING包是否为灰PING包,包括:
对所述PING包进行解析,获取所述PING包的数据内容;
判断所述数据内容是否符合PING包的数据规则;
若否,则确定所述PING包为灰PING包。
可选地,对所述PING包进行解析,根据所述PING包的属性确定所述PING包是否为灰PING包,包括:
判断所述PING包所包含的行为规则是否符合所述发送方的行为规则;
若否,则确定所述PING包为灰PING包。
可选地,所述方法应用于DNS。
基于本发明的另一个方面,提供了一种DNS的PING包检测装置,包括:
接收模块,适于在DNS处接收来自发送方的PING包;
解析模块,适于对所述PING包进行解析,根据所述PING包的属性确定所述PING包是否为灰PING包;
确定模块,适于若确定所述PING包为灰PING包,则确定所述发送方被入侵。
可选地,所述解析模块还适于:
对所述PING包进行解析,获取所述PING包的、用于标识灰包的附加标识;
根据所述PING包的附加标识确定所述PING包是否为灰PING包。
可选地,所述解析模块还适于:
对所述PING包进行解析,获取所述PING包的数据内容;
判断所述数据内容是否符合PING包的数据规则;
若否,则确定所述PING包为灰PING包。
可选地,所述解析模块还适于:
判断所述PING包的行为规则是否符合所述发送方的行为规则;
若否,则确定所述PING包为灰PING包。
可选地,所述装置设置于DNS。
根据本发明实施例中的方法,在DNS处接收来自发送方的PING包,对发送方的PING包进行解析,确定该PING包是否为灰PING包。灰PING包与标准PING包相比存在不同,例如,未加载成功、被恶意修改或者被木马等恶意程序感染等,这些不同的特征修改原PING包的属性,使得修改后的PING包可能会执行恶意操作或传播恶意程序。当确定一个标准PING包为灰PING包时,证明标准PING包的发送方环境存在变动,可以据此确定发送方被入侵。在确定发送方被入侵的情况下,DNS可以提高对被入侵的发送方的警惕性,对其发送的数据包(包括PING包)进行过滤删除等处理,以免DNS也会被感染或攻击,提高了DNS的安全性能。并且,DNS处对发送方的数据包进行过滤删除处理,进一步保证被恶意程序攻击或感染的发送方无法与其他客户端建立联系,避免使得网络环境中的其他客户端也被同样的恶意程序攻击或感染。即,本发明实施例提供的灰PING包的检测方法能够防止恶意程序在网络环境中的漫延,快速有效,安全性高。另外,若确定发送方的PING包并非是灰PING包,则确定发送方的环境是安全的,进一步保证发送方向服务器发送的数据包的安全性,避免服务器响应发送方请求时被恶意程序攻击,为服务器提供了有效防护。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
根据下文结合附图对本发明具体实施例的详细描述,本领域技术人员将会更加明了本发明的上述以及其他目的、优点和特征。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
为解决上述技术问题,本发明实施例提供了一种DNS的PING包检测方法。图1示出了根据本发明一个实施例的DNS的PING包检测方法的处理流程图。参见图1,该方法至少包括以下步骤S102至步骤S106。
首先,本发明实施例执行步骤S102,在DNS处接收来自发送方的PING包。
本发明实施例中的发送方为客户端,可以包括能够发送PING包的终端或者移动终端,例如手机、电脑、手持平板电脑、服务器等。因特网技术发展壮大以后,发送方还可以包括终端(尤其是移动终端)上运行、可独立发送PING包的客户端(例如各种APP),较常用的该类客户端包括如万维网使用的网页浏览器,收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端软件等。实施时,移动终端上的各客户端需要和服务器端建立特定的通信连接,来保证应用程序的正常运行。目前,移动终端上的客户端通常采用向DNS处发送PING包,检查与服务器端建立的网络连接是否连通。
DNS处接收来自发送方的PING包后,继续执行步骤S104,对接收的PING包进行解析,根据PING包的属性确定PING包是否为灰PING包。
灰PING包是指与标准PING包相比存在不同的PING包,且该不同的方面通常对于PING包的执行来说是恶意的,可能会引起恶意操作。例如未加载成功的PING包、被恶意修改过的PING包(内容被删减、恶意增加等)、被木马等恶意程序感染的PING包等等。当一个标准PING包被感染为灰PING包时,证明标准PING包的发送方环境存在变动。
最后,执行步骤S106,若确定PING包为灰PING包,则确定发送方被入侵。正是因为灰PING包具备如上特性,因此,若步骤S104判断出当前接收的PING包为灰PING包,则确定出该PING包的发送环境被更改,发送方被入侵。那么DNS在确定发送方被入侵的情况下,可以提高对被入侵的发送方的警惕性,对其发送的数据包(包括PING包)进行过滤删除等处理,以免DNS也会被感染或攻击,提高了DNS的安全性能。
当然,若步骤S104判断出PING包并非是灰PING包,则确定发送方环境是安全的,进一步保证发送方向服务器发送的数据包的安全性,避免服务器响应发送方请求时被恶意程序攻击,为服务器提供了有效防护。
综上可知,根据本发明实施例中的方法,在DNS处接收来自发送方的PING包,对发送方的PING包进行解析,确定该PING包是否为灰PING包。灰PING包与标准PING包相比存在不同,例如,未加载成功、被恶意修改或者被木马等恶意程序感染等,这些不同的特征修改原PING包的属性,使得修改后的PING包可能会执行恶意操作或传播恶意程序。当确定一个标准PING包为灰PING包时,证明标准PING包的发送方环境存在变动,可以据此确定发送方被入侵。在确定发送方被入侵的情况下,DNS可以提高对被入侵的发送方的警惕性,对其发送的数据包(包括PING包)进行过滤删除等处理,以免DNS也会被感染或攻击,提高了DNS的安全性能。并且,DNS处对发送方的数据包进行过滤删除处理,进一步保证被恶意程序攻击或感染的发送方无法与其他客户端建立联系,避免使得网络环境中的其他客户端也被同样的恶意程序攻击或感染。即,本发明实施例提供的灰PING包的检测方法能够防止恶意程序在网络环境中的漫延,快速有效,安全性高。另外,若确定发送方的PING包并非是灰PING包,则确定发送方的环境是安全的,进一步保证发送方向服务器发送的数据包的安全性,避免服务器响应发送方请求时被恶意程序攻击,为服务器提供了有效防护。
在本发明的一个优选实施例中,对发送方的PING包进行解析,根据PING包的属性确定PING包是否为灰PING包,至少包括以下步骤。
步骤1、对发送方的PING包进行解析,获取该PING包的、用于标识灰包的附加标识。
步骤2、根据步骤1获取的PING包的附加标识确定该PING包是否为灰PING包。
具体地,PING包的附加标识可以在原始数据包中以增加字节的形式显示,也可以使用原始数据包中之前未被使用过的某一位或几位字节表示。例如,PING包的附加标识为在原始数据包中增加的一位字节,当这一字节被设置为0时,标志PING包为正常PING包,若设置为1,标志PING包为灰PING包。在DNS处获取发送方PING包的附加标识,并且该PING包的附加标识的增加的字节上显示1,则确定该发送方的PING包为灰PING包。
再例如,PING包的附加标识可以在PING包原始数据包中的最后一位字节显示,该原始数据包的最后一位字节设置为0时,标志该PING包为正常PING包,设置为1时,标志该PING包为灰PING包。本发明实施例中获取发送方PING包的附加标识,并且该PING包原始数据包的最后一位字节显示1,则确定该发送方的PING包为灰PING包。
为了发送方与DNS一侧均能够识别修改后的PING包,本发明实施例对发送方与DNS间的性能协议进行协商。协商后的性能协议包括发送方端与DNS端之间设定的支持各自性能的内容,该内容能在DNS处及发送方识别。
其中,除了根据发送方的PING包的附加标识确定该PING包是否为灰PING包外,在本发明的一个优选实施例中,还可以根据发送方的PING包的数据内容确定该PING包是否为灰PING包,至少包括以下步骤。
步骤1、对发送方的PING包进行解析,获取该PING包的数据内容。
步骤2、判断步骤1获取的PING包的数据内容是否符合PING包的数据规则。
步骤3、若步骤2的判断结果为否,则确定发送方的PING包为灰PING包。
每个PING包中携带有不同的数据内容,其携带方式是符合具体的数据规则的,例如,数据内容中的多个参数需按字母顺序排列,或者逆序排列,或者数据内容必须不能超过32位字节,等等。具体的数据规则有多种,本发明实施例仅仅提供了几种用以说明,对数据规则本身并不造成任何限定。
优选地,本发明实施例提供了一种PING包的数据内容以字母循环顺序作为数据规则的例子。在本发明实施例中,PING包的数据内容是以ABCDEFG…XYZ…ABCDEFG…的循环顺序为数据规则,即按照字母顺序从A开始依次到Z,然后再从A开始直至结束。此时,DNS处接收PING包后获取到其中数据内容,解析确定该数据内容的数据规则与本优选实施例中规定的数据规则不一致,例如ABFG…XYZ…ABFG,数据内容从字母B直接到字母F,中间缺失了CDE部分,没有按照从字母A依次到字母Z的数据规则,说明该PING包被恶意修改或者被恶意程序感染,则可以确定该发送方的PING包为灰PING包。
再例如,本发明实施例规定发送方的PING包的附加标识中的数据类型是以32字节进行储存。若获取的PING包的附加标识中的数据的字节数与32字节不一致,例如该附加标识中的数据是以16字节进行存储,则确定该发送方的PING包为灰PING包。
进一步,还可以根据发送方的PING包的行为规则确定该PING包是否为灰PING包,在本发明的一个优选实施例中,至少包括以下步骤。
步骤1、判断发送方的PING包所包含的行为规则是否符合发送方的行为规则。
步骤2、若步骤1的判断结果为否,则确定发送方PING包为灰PING包。
具体地,接收到发送方的PING包后,判断该PING包所包含的行为规则是否符合发送方的行为规则,以即时通讯的聊天软件为例,即时通讯的聊天软件的行为规则包括发送消息、图片或者读取消息、文件等,若获取的该即时通讯软件的PING包的行为为更改系统请求,该即时通讯软件的PING包的行为规则不符合发送方的行为规则,则确定发送方PING包为灰PING包。
另外,还可以在DNS处设置一个行为库,该行为库记载了客户端的行为规则。该行为库根据客户端的行为规则还可以进行具体划分,将具有类似行为规则的客户端归为同一行为库,例如即时通讯类客户端的行为归为A类行为库,网页浏览器客户端的行为归为B类行为库等等。以网页浏览器为例,DNS处的行为库记载的该网页浏览器的行为规则为发送查询搜索的请求等,若获取的该网页浏览器的PING包对应的行为准则不在DNS处B类行为库设置的范围内,则确定该网页浏览器的PING包为灰PING包。
本发明实施例还可以在DNS处设置一个白名单,白名单中仅包括与DNS建立PING包发送连接的客户端名称,其中白名单中不包括与DNS处没有建立连接的系统程序。例如,若某一系统程序向DNS处发送PING包,由于该系统程序与DNS处并没有建立连接,说明该系统程序被恶意加上一个PING包,此时说明系统程序的PING包为灰PING包。
本发明实施例仅仅提供了几种具体实例用以说明PING包的行为规则的判断方法,对行为规则本身并不造成任何限定。
需要说明地是,本发明实施例中的方法应用于DNS。在DNS中对发送方的PING包进行解析,确定该PING包是否为灰PING包,若该PING包为灰PING包,则确定发送方被入侵,例如被木马或者其他恶意程序入侵。
下面以即时通讯客户端的PING包作为本发明一个具体实施例,进一步说明本发明提供的DNS的PING包检测方法的操作流程。图2示出了根据本发明一个实施例的即时通讯客户端的PING包检测方法的处理流程图,至少包括以下步骤S202至步骤S216。
在本发明实施例中,首先执行步骤S202,在DNS处接收来自即时通讯客户端的PING包。
DNS处接收到即时通讯客户端的PING包后,对接收的PING包进行解析,执行步骤S204,获取即时通讯客户端的PING包的、用于标识灰包的附加标识,根据附加标识确定该PING包为灰PING包。若确定该PING包为灰PING包,执行步骤S206,确定即时通讯客户端被入侵。若该PING包不是灰PING包,继续对即时通讯客户端的PING包的其他属性进行解析。例如,即时通讯客户端的PING包的附加标识是在原始数据包中以增加字节的形式显示,当这一字节被设置为0时,标志PING包为正常PING包,若设置为1时,标志PING包为灰PING包。若本发明实施例中即时通讯客户端的原始数据包中增加的字节显示1,则确定该即时通讯客户端的PING包为灰PING包。
若该即时通讯客户端的原始数据包中增加的字节显示0,则确定该PING包为正常PING包,继续对该PING包的其他属性进行解析,执行步骤S208,获取即时通讯客户端的PING包的数据内容,判断数据内容判断符合数据规则。若该PING包的数据内容不符合本发明实施例中规定的数据规则,则执行步骤S210,确定该PING包为灰PING包,同时确定即时通讯客户端被入侵。若该PING包的数据内容符合本发明实施例中规定的数据规则,则继续对即时通讯客户端的PING包的行为规则进行解析。例如,本发明实施例中PING包的数据内容是以ABCDEFG…XYZ…ABCDEFG…的循环顺序为数据规则,即按照字母顺序从A到Z,再从A开始直至结束的循环顺序。若获取的PING包的数据内容的数据规则与本发明实施例中规定的数据规则不一致,例如ABFG…XYZ…ABCDEFG,数据内容缺失了CDE部分,则确定该即时通讯客户端的PING包为灰PING包,同时确定该即时通讯客户端被入侵。
若该即时通讯客户端的PING包的数据内容符合数据规则,继续执行步骤S212,PING包所包含的行为规则符合即时通讯客户端的行为规则。若获取的PING包的行为规则不符合该即时通讯客户端的行为规则,则执行步骤S214,确定该PING包为灰PING包,同时确定即时通讯客户端被入侵。具体地,即时通讯的客户端的行为规则包括发送消息、图片或者读取消息、文件等,若获取的该即时通讯客户端的PING包的行为为更改系统请求,该PING包的行为规则不符合该即时通讯客户端的行为规则,则确定该PING包为灰PING包,同时确定该即时通讯客户端被入侵。
对即时通讯客户端的PING包进行步骤S204至步骤S214的解析后,该PING包符合本发明实施例的相关规则,则执行步骤S216,确定该即时通讯客户端没有被入侵。
需要说明地是,本发明实施例中对即时通讯客户端的PING包的属性(附加标识、数据内容以及行为规则)进行解析,针对每种属性的解析仅提供了一种具体实施方式进行说明,对PING包属性的解析方法并不造成任何限定。
此外,对即时通讯客户端的PING包的用于标识灰包的附加标识、数据内容及行为规则进行解析,不需要严格按照本发明实施例中的次序,可以任意排列组合顺序执行,或者设定同时进行。
基于同一发明构思,本发明实施例还提供了一种DNS的PING包检测装置。图3示出了根据本发明一个实施例的DNS的PING包检测装置的结构示意图。参见图3,该装置至少包括:
接收模块310,适于在DNS处接收来自发送方的PING包;
解析模块320,与接收模块310耦合,适于对发送方的PING包进行解析,根据PING包的属性确定发送方的PING包是否为灰PING包;
确定模块330,与解析模块330耦合,适于若确定发送方PING包为灰PING包,则确定发送方被入侵。
需要说明地是,本发明实施例提供的PING包检测装置应用在DNS。
在一个优选的实施例中,解析模块320还适于:
对发送方的PING包进行解析,获取该PING包的、用于标识灰包的附加标识;根据PING包的附加标识确定发送方的PING包是否为灰PING包。
在一个优选的实施例中,解析模块320还适于:
对发送方的PING包进行解析,获取该PING包的数据内容;
判断获取数据内容是否符合PING包的数据规则;
若获取的数据内容不符合PING包的数据规则,则确定发送方的PING包为灰PING包。
在一个优选的实施例中,解析模块320还适于:
判断发送方的PING包的行为规则是否符合发送方的行为规则;
若该发送方的PING包的行为规则不符合发送方的行为规则,则确定该发送方的PING包为灰PING包。
综上,采用本发明实施例提供的DNS的PING包及装置可以达到如下有益效果:
根据本发明实施例中的方法,在DNS处接收来自发送方的PING包,对发送方的PING包进行解析,确定该PING包是否为灰PING包。灰PING包与标准PING包相比存在不同,例如,未加载成功、被恶意修改或者被木马等恶意程序感染等,这些不同的特征修改原PING包的属性,使得修改后的PING包可能会执行恶意操作或传播恶意程序。当确定一个标准PING包为灰PING包时,证明标准PING包的发送方环境存在变动,可以据此确定发送方被入侵。在确定发送方被入侵的情况下,DNS可以提高对被入侵的发送方的警惕性,对其发送的数据包(包括PING包)进行过滤删除等处理,以免DNS也会被感染或攻击,提高了DNS的安全性能。并且,DNS处对发送方的数据包进行过滤删除处理,进一步保证被恶意程序攻击或感染的发送方无法与其他客户端建立联系,避免使得网络环境中的其他客户端也被同样的恶意程序攻击或感染。即,本发明实施例提供的灰PING包的检测方法能够防止恶意程序在网络环境中的漫延,快速有效,安全性高。另外,若确定发送方的PING包并非是灰PING包,则确定发送方的环境是安全的,进一步保证发送方向服务器发送的数据包的安全性,避免服务器响应发送方请求时被恶意程序攻击,为服务器提供了有效防护。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的DNS的PING包检测装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
至此,本领域技术人员应认识到,虽然本文已详尽示出和描述了本发明的多个示例性实施例,但是,在不脱离本发明精神和范围的情况下,仍可根据本发明公开的内容直接确定或推导出符合本发明原理的许多其他变型或修改。因此,本发明的范围应被理解和认定为覆盖了所有这些其他变型或修改。