一种访问点的筛选方法和装置与流程

文档序号:14072390阅读:154来源:国知局

本方案涉及数据处理技术领域,尤其涉及一种访问点的筛选方法和装置。



背景技术:

互联网基于tcp/ip(transmissioncontrolprotocol/internetprotocol,传输控制协议/因特网互联协议)协议进行数据包传输,但是对于被传输的数据包的真伪并没有进行严格控制,即无法识别数据包是否为有效数据包,导致目前互联网充斥着大量伪造数据包。

当前伪造数据包的产生原因在于为了找到目标站点的准确位置,需要进行大范围的网络探索,来扫描整个互联网,此时就要伪造出互联网上包含的所有ip地址的数据包,并将这些数据包并行发送,这就造成了互联网上充斥了大量伪造数据包,伪造数据包对于基于真实网络访问数据进行计算和控制的系统有很大影响,在进行数据分析时会使分析出的结果不准确。在现有技术中,对伪造数据的识别方法有以下三种:

第一种方法:对目标站点的数据包进行dns(domainnamesystem,域名系统)解析,如果解析的ip地址不在目标站点的网络内,则判定访问点接收的数据包为伪造数据包,即该访问点被伪造数据包攻击。

第二种方法:基于网络探测类访问是无持续访问需求(即连续访问次数比较低)的前提条件,统计单位时间内目标host的访问次数。若访问次数低于某个统一的阈值,就判定在该单位时间内对该目标host的访问数据包为伪造数据包。

方法三:基于目标host不会对伪造访问产生响应的前提条件,检查没有匹配到响应的网络请求均为伪造访问。在实现本方案的过程中,发明人发现现有技术至少存在如下问题:

在第一种方法中,由于在进行dns解析时,由于dns服务器的链路和地域的不同,解析出来的ip地址是不同的,因此通过该方法对访问点是否被伪造数据包攻击进行判断的结果是不准确的。

在第二种方法中,由于不同的网络探测方策略不同,探测的规律不同,因此,需要只是用一种阈值来进行检测,准确率很低。

在第三种方法中,由于大部分的web服务器并未控制只对自己提供服务的主机才有响应,几乎对任何访问都有响应,所以依靠是否具有响应来识别伪造数据包攻击会有极大的漏检率。



技术实现要素:

本方案实施例提供的一种访问点的筛选方法和装置,能够在一定程度上提高被攻击站点的识别准确率。

第一方面,本方案实施例提供了一种访问点的筛选方法,包括:

采集至少两个访问点各自对应的被访问次数;

根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点包括:

根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度,以及,所述访问点的总数量与所述被访问次数的总数量之间的扁平度;

根据所述平坦度和所述扁平度,确定所述伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度包括:

根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值;

将所述标准差除以所述平均值,得到所述平坦度。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定所述访问点的总数量与所述被访问次数的总数量之间的扁平度包括:

根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值;

将所述总数量除以所述平均值,得到所述扁平度。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述平坦度和所述扁平度,确定所述伪造访问点包括:

当所述平坦度满足第一阈值范围并且所述扁平度满足第二阈值范围时,确定所述至少两个访问点为伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,在所述确定所述至少两个访问点为伪造访问点之后,还包括:

采集包括已确定的伪造访问点在内的至少三个访问点各自对应的被访问次数;

根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,确定新的伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,当根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,无法确定新的伪造访问点时,所述方法还包括:

采集与所述已确定的伪造访问点完全不同的其它至少两个访问点的被访问次数;以及,根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,还包括:

当所述平坦度不满足第一阈值范围,或,所述扁平度不满足第二阈值范围时,比较所述访问点的总数量与额定数量的大小关系,所述额定数量不小于2;

当所述访问点的总数量等于额定数量时,采集与所述至少两个访问点不完全相同的其它至少两个访问点的被访问次数;以及,根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,在所述采集至少两个访问点各自对应的被访问次数之前,还包括:

采集数据包;

获取已采集的数据包对应的访问点;

根据已采集的数据包对应的访问点,确定各个访问点对应的顶级域名;

在对应于同一顶级域名的访问点中选择不小于所述额定数量的访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,在所述根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点之后,还包括:

从已采集的数据包中获取目标数据包,所述目标数据的目的地址为所述伪造访问点中的一个;

采集当前数据流量;

对所述数据流量中与所述目标数据包具有相同源地址的数据包进行指定操作。

第二方面,本方案实施例还提供了一种访问点的筛选装置,包括:

采集单元,用于采集至少两个访问点各自对应的被访问次数;

确定单元,用于根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述确定单元包括:

第一确定子单元,用于根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度,以及,所述访问点的总数量与所述被访问次数的总数量之间的扁平度;

第二确定子单元,用于根据所述平坦度和所述扁平度,确定所述伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述第一确定子单元具体用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值;将所述标准差除以所述平均值,得到所述平坦度。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述第一确定子单元具体用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值;将所述总数量除以所述平均值,得到所述扁平度。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述第二确定子单元具体用于当所述平坦度满足第一阈值范围并且所述扁平度满足第二阈值范围时,确定所述至少两个访问点为伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,

所述采集单元,用于采集包括已确定的伪造访问点在内的至少三个访问点各自对应的被访问次数;

所述确定单元,用于根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,确定新的伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,

所述采集单元,用于采集与所述已确定的伪造访问点完全不同的其它至少两个访问点的被访问次数;

所述确定单元,用于根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:

比较单元,用于当所述平坦度不满足第一阈值范围,或,所述扁平度不满足第二阈值范围时,比较所述访问点的总数量与额定数量的大小关系,所述额定数量不小于2;

所述采集单元,用于当所述访问点的总数量等于额定数量时,采集与所述至少两个访问点不完全相同的其它至少两个访问点的被访问次数;

所述确定单元,用于根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:

所述采集单元,用于采集数据包;

第一获取单元,用于获取已采集的数据包对应的访问点;

所述确定单元,用于根据已采集的数据包对应的访问点,确定各个访问点对应的顶级域名;

选择单元,用于在对应于同一顶级域名的访问点中选择不小于所述额定数量的访问点。

如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述装置还包括:

第二获取单元,用于从已采集的数据包中获取目标数据包,所述目标数据的目的地址为所述伪造访问点中的一个;

所述采集单元,用于采集当前数据流量;

操作单元,用于对所述数据流量中与所述目标数据包具有相同源地址的数据包进行指定操作。

本方案实施例提供的一种访问点的筛选方法和装置,通过对访问点的被访问次数和访问点的总数量来计算各个访问点的统计学特性,并依靠统计学特性来识别哪些是被伪造数据包攻击的伪造访问点,相比于现有技术中来说,本方案实施例提供的识别方法更贴近实际情况能够避免因dns解析、网络探测策略及服务响应而带来的干扰因素,从而更加准确地实现对伪造访问点的识别。

附图说明

为了更清楚地说明本方案实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本方案的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本方案实施例中的一种访问点的筛选方法的流程图;

图2为本方案实施例中的另一种访问点的筛选方法的流程图;

图3为本方案实施例中的另一种访问点的筛选方法的流程图;

图4为本方案实施例中的另一种访问点的筛选方法的流程图;

图5为本方案实施例中的另一种访问点的筛选方法的流程图;

图6为本方案实施例中的另一种访问点的筛选方法的流程图;

图7为本方案实施例中的另一种访问点的筛选方法的流程图;

图8为本方案实施例中的另一种访问点的筛选方法的流程图;

图9为本方案实施例中的另一种访问点的筛选方法的流程图;

图10为本方案实施例中的另一种访问点的筛选装置的组成框图;

图11为本方案实施例中的另一种访问点的筛选装置的组成框图;

图12为本方案实施例中的另一种访问点的筛选装置的组成框图;

图13为本方案实施例中的另一种访问点的筛选装置的组成框图;

图14为本方案实施例中的另一种访问点的筛选装置的组成框图;

图15为本方案实施例中的另一种访问点的筛选装置的组成框图。

具体实施方式

为使本方案实施例的目的、技术方案和优点更加清楚,下面将结合本方案实施例中的附图,对本方案实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本方案一部分实施例,而不是全部的实施例。基于本方案中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本方案保护的范围。

目前利用伪造数据包进行访问的行为,一般包括伪造目标host的大范围网络探测。例如,善意的典型为zmap的44分钟扫遍互联网,恶意的典型为攻击cdn源站节点而扫描全国的ip。

另外还包括伪造来源ip集中访问某些目标host,例如synflood的ddos网络攻击,或者基于某些商业目的的刷单刷票行为。

这些伪造数据包的访问行为由于其短时间内需要访问大量访问点,因此通常在一定时间内对于同一访问点的访问次数不会太高,可能只有几个或者十几个。而且,由于访问点数量比较大,都是以诸如国家或地区或全网等规模的网络地址进行访问,因此,单个访问点的访问次数相比于访问点的总数量来说也是相对比较小的。在本方案中会被大范围网络探测行为访问到的访问点即为伪造访问点,通过伪造访问点接收到数据包和流量可以确定相应的伪造数据包和伪造流程。

为解决现有技术问题,基于前述情况,本方案实施例针对伪造数据包的统计学特性进行了分析,发现有以下两点规律:

1)使用伪造数据包对网络进行探测时,由于只要保证网络内所有的访问点都是能被访问到即可,因此,并不需要特别针对性地对某一个或多个访问点增加或减少访问次数,如此来说,对于探测目标的探测访问是无差别的,可以理解为对于探测范围内的伪造访问点的访问次数是基本平均的,可用平坦度来描述,

2)使用伪造数据包对网络进行探测的过程中,为了达到遍历的目的,每个访问点产生访问行为的数量并不多,因此,相对于整个探测范围的广度(即被探测网络内的访问点数量)来说,对每个访问点的探测深度(即每个访问点被访问次数)是有限的,可以理解为每个访问点的访问次数比探测范围内的访问点总数要小得多,可用扁平度来描述,即

本方案实施例将以以上两点规律作为决策依据,以实现对各个访问点的识别。

本方案实施例提供的一种访问点的筛选方法,如图1所示,包括:

101、采集至少两个访问点各自对应的被访问次数。

其中,访问点是指由指定主机名host、指定ip地址以及指定port端口号所限定的站点设备,可以是网关、运营商服务器等各类网络设备。访问点可以用于接收用户发送的请求,并响应该请求完成处理,同时返回处理结果。

为了在本方案实施例的实现过程中能够较好地利用前述两点统计学特性,因此对于被采集访问点的数量尽可能选得多一点,当然可以根据对判断精度的实际需要,自行设置采集数量,本方案实施例对此不作过多限制。

102、根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点。

本方案实施例提供的一种访问点的筛选方法,通过对访问点的被访问次数和访问点的总数量来计算各个访问点的统计学特性,并依靠统计学特性来识别哪些是被伪造数据包攻击的伪造访问点,相比于现有技术中来说,本方案实施例提供的识别方法更贴近实际情况,即能够基于伪造数据访问过程中访问次数与访问点的总数量之间的各项关系来进行识别,进而能够有效避免因dns解析、网络探测策略及服务响应而带来的干扰因素,从而更加准确地实现对伪造访问点的识别。

具体来说,与dns解析相比,本方案实施例以访问次数和访问点总数量为基础,并不需要执行对访问ip的归属进行识别,能够排除dns解析过程中的干扰。

与设置统一阈值来衡量访问次数来说,本方案实施例并不单独以访问次数进行判断,而是使用访问次数与访问点数量之间的平坦度和扁平度进行识别,脱离了不同访问策略下对于访问次数数量规模的限制,从而能够排除阈值设置带来的影响。

与采集是否有处理响应来说,本方案实施例并不需要基于该结果进行判断,从而能够排除处理响应带来的影响。

针对步骤102的实现,本方案实施例在此提供以下流程,如图2所示,包括:

1021、根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度。

其中,平坦度用于反映对于探测范围内的伪造访问点的访问次数是否是基本平均的。

有关平坦度的获取方法,本方案实施例在此提供了一种可行的实施方式,具体为:

根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值;将所述标准差除以所述平均值,得到所述平坦度。

标准差和平均值是指已采集到的若干个访问点对应的多个访问次数的标准差和平均值,是能够反映平均性的评价参数,与此类似的方差、加权平均值等参数都可以适用于本方案实施例提供的技术方案中。

另外,平坦度体现为标准差和平均值的比值即可,本方案实施例并不限制分子分母的设置关系。

1022、根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定所述访问点的总数量与所述被访问次数的总数量之间的扁平度。

扁平度用于反映每个访问点的访问次数比探测范围内的访问点总数是否要小得多。

有关扁平度的获取方法,本方案实施例在此提供了一种可行的实施方式,具体为:

根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值;将所述总数量除以所述平均值,得到所述扁平度。

平均值是指已采集到的若干个访问点对应的多个访问次数的平均值,是能够反映平均性的评价参数,与此类似的加权平均值等参数都可以适用于本方案实施例提供的技术方案中。

另外,扁平度体现为总数量和平均值的比值即可,本方案实施例并不限制分子分母的设置关系。

1023、根据所述平坦度和所述扁平度,确定所述伪造访问点。

伪造访问点的具体判断原则是当所述平坦度满足第一阈值范围并且所述扁平度满足第二阈值范围时,确定所述至少两个访问点为伪造访问点。

其中,第一阈值范围可以是(0,a),a取5%到10%中的一个值,第二阈值范围可以是(b,+∞),b取较大的数值,例如100,200等。当然此处的赋值只是示例,第一阈值范围和第二阈值范围可以根据平坦度和扁平度的表达方式和其它实际需要另行设置,本方案实施例对此不作限制。

补充说明的是,有关平坦度和扁平度的先后计算顺序并没有在本方案实施例中做明确的限定。步骤1021和1022的顺序只是一种可能的实现方式。

另外,需要说明的是,由于前述两点统计学规律需要在有一定样本容量的情况下,才有一定的参考价值,因此对于访问点的采集样本在本方案实施例中有一定样本容量的限制。因此当所述平坦度不满足第一阈值范围,或,所述扁平度不满足第二阈值范围时,说明暂时不能识别出已采集的访问点是否被伪造数据包攻击,因此,需要重新采集一定数量的访问点进行识别,相关的流程如图3所示,执行于步骤1023之后,包括:

103、比较所述访问点的总数量与额定数量的大小关系。

其中,所述额定数量是保证计算过程中能够体现出前述两个统计学规律的最小样本容量,此处限定为不小于2。2只是一个示例,根据实际需要可以增设至50、100、200,甚至更多。

104、当所述访问点的总数量等于额定数量时,采集与所述至少两个访问点不完全相同的其它至少两个访问点的被访问次数。

为了不作重复识别工作,因此尽量避免选择与步骤101已采集过的访问点完全一样的访问点。

当所述访问点的总数量等于额定数量时,标明选择最少的样本容量也无法识别出伪造访问点,则可以认为当前选择的内容需要重构,即执行步骤104。当所述访问点的总数量大于额定数量时,则说明在样本扩充的过程中引入了无法识别的访问点信息,此时就可以结束对已采集访问点的识别过程。样本扩充过程中可参照后续步骤106和107所示内容。

另外,由于在所述访问点的总数量等于额定数量时需要重构,因此,不会出现所述访问点的总数量小于额定数量的情况出现。

105、根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

重新选的访问点的识别方法可参照步骤101、102及相关描述,本方案实施例在此不再赘述。

以上描述的方法流程为针对已采集到的访问点的识别流程,可以一次性识别出已采集到的访问点是否均为伪造访问点。若已采集到的访问点均为伪造访问点,则可以作为其它未采集访问点的识别参考样本。

基于已采集到的访问点均为伪造访问点的条件下,在执行步骤102在所述确定所述至少两个访问点为伪造访问点之后,如图4所示,还包括:

106、采集包括已确定的伪造访问点在内的至少三个访问点各自对应的被访问次数。

107、根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,确定新的伪造访问点。

对于此处采集的至少三个访问点的识别过程与前述采集至少两个访问点的识别过程是一致的,本方案实施例对此不再赘述。

进一步来说,若增加至至少三个访问点后,存在平坦度和扁平度无法识别出伪造访问点的情况,此时,就需要重新选择新的访问点进行采集,并基于采集结果重新计算。具体流程如图5所示,包括:

201、采集与所述已确定的伪造访问点完全不同的其它至少两个访问点的被访问次数。

此时,已经确定的伪造访问点则可以不参与后续的识别流程。

202、根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

重新选的访问点的识别方法可参照步骤101、102及相关描述,本方案实施例在此不再赘述。

为了提供更好的针对性,以上所涉及到的各个访问点一般隶属于同一顶级域名(例如,形如abc.com的顶级域名)之下,这样就需要在网络入口采集访问流量,记录下全部网络访问数据包的核心数据,并在获取到的所有核心数据中确定待识别的访问点。相关的实现流程,如图6所示,包括:

301、采集数据包。

302、获取已采集的数据包对应的访问点。

303、根据已采集的数据包对应的访问点,确定各个访问点对应的顶级域名。

由于各个数据包会携带源ip、源端口号、目标host、目标ip、目标端口号等信息,因此,域名可以通过对目标host进行后缀识别得到。

304、在对应于同一顶级域名的访问点中选择不小于所述额定数量的访问点。

进一步来说,当确定了伪造访问点后,则需要针对性地对伪造数据包进行处理,相关实现流程,如图7所示,包括:

401、从已采集的数据包中获取目标数据包,所述目标数据的目的地址为所述伪造访问点中的一个。

402、采集当前数据流量。

403、对所述数据流量中与所述目标数据包具有相同源地址的数据包进行指定操作。

指定操作可以包括识别、标记、拦截等操作。

结合前述描述,本方案实施例在此提供一个整体流程示例,以体现本方案技术方案的整体执行思路。本方案可适用于任何顶级域名下的伪造访问点识别,在识别过程中需要采集该顶级域名下各host、ip地址和port端口号所指向的访问点接收的数据流程(至少包括访问次数)。

该方案的一种可行的整体流程具体可参照图8所示内容,包括:

501、采集同属于同一顶级域名(例如,www.cnn.com)下的10000个访问点中的1000个访问点各自对应的访问次数。完成501之后,执行步骤502完成平坦度计算以及执行步骤503完成扁平度计算。

这1000个访问点各自所属的主机名host、指定ip地址以及指定port端口不完全相同。

这1000个访问点各自对应的访问次数从1到10不等,例如,各个访问点对应的访问次数依次对应1、5、4、6、9、7、5、3、9、8、4、1、6、6、1、9、7、6……。

502、根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值,并将所述标准差除以所述平均值,得到所述平坦度。

平坦度的取值需要根据实际采集到的各个访问点的访问次数及总数量进行计算。但是,为方便后续描述,此处假设平坦度为6%。

503、根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值,并将所述总数量除以所述平均值,得到所述扁平度。

扁平度的取值需要根据实际采集到的各个访问点的访问次数及总数量进行计算。但是,为方便后续描述,此处假设扁平度为200。

504、结合步骤502和步骤503得到的计算结果,判断所述平坦度是否满足第一阈值范围,并且,所述扁平度也同时满足第二阈值范围。

在本流程步骤中,为方便后边描述,仅示例性地设定第一阈值范围为5%到10%,第二阈值范围为大于100。由于平坦度6%满足5%到10%的第一阈值范围,同时,扁平度200也满足大于100的第二阈值范围,可执行步骤505。

505、确定所述1000个访问点均为伪造访问点。

506、再次采集包括505已确认的伪造访问点在内的1001个访问点。

假设新添加的访问点访问数量为10000。

507、根据该1001个访问点各自的被访问次数和总数量,重新计算平坦度和扁平度。

此时,该1001个访问点的平坦度可能会升至40%,而平坦度会降到60。

508、结合步骤507得到的计算结果,判断所述平坦度是否满足第一阈值范围,并且,所述扁平度也同时满足第二阈值范围。

此时,很显然新的平坦度和扁平度并不满足第一阈值范围和第二阈值范围。此时,该1001个访问点由于新引入的1个访问点而导致无法识别。

509、对步骤505识别出的1000个访问点接收的数据包的源地址进行拦截。

510、在剩余的9000个访问点中再重新选择1000个访问点,并重新执行步骤502和503。

以上各项参数的取值仅是为了举例说明,并不需要限定作用。实际操作中需要根据实际情况和采集到的数据进行设置和计算。

另外,补充说明的是,由于实际采集到的访问次数可能会产生差异,因此步骤504的判断结果可能是平坦度不满足第一阈值范围或者扁平度不满足第二阈值范围,此时可能需要从步骤501中确定的10000个访问点中重新选择与步骤501已选择的访问点不完全相同的1000个访问点,并重新完成步骤502之后的流程。

另外,补充说明的是,若在步骤508的判断结果是这1001个访问点所述平坦度满足第一阈值范围,并且,所述扁平度也同时满足第二阈值范围,则可以进一步再选择包括这1001个访问点在内的1002的访问点重新执行步骤502来完成伪造访问点的识别流程。以此类推,只要始终能确定出伪造访问点则可以一直从10000个访问点持续添加新的访问点到已确定的伪造访问点集合中,以完成新的伪造访问点识别流程。

结合前述描述,本方案实施例在此提供本方案一种可行的实施方式,如图9所示,包括:

601、在单个顶级域名下统计各个访问点“目标host+目标ip+目标端口号”的访问次数,并按照访问次数倒序排列,即次数较高的访问点排在前面,次数较低的排在后面。

602、从次数最高的排列前面取额定数量xmin个访问点形成x集合,此时x集合的个数xn=xmin。

603、计算x集合的平坦度和扁平度。如果x集合的平坦度和扁平度都满足阈值,则执行步骤504;否则执行步骤506。

604、判断是否还有待查的访问点。若仍有待查的访问点,则执行步骤505;否则执行步骤510。

605、向后扩大x集合1个访问点,重新执行步骤503进行计算。

606、判断当前xn是否与xmin相同。当xn=xmin时,则执行步骤507。

607、判断是否还有待查的访问点。若仍有待查的访问点,则执行步骤508;否则执行步骤509。

608、向后平移x集合窗口,重新执行步骤503开始计算。

609、将当前x集合中最新添加的访问点去除。

610、当前x集合内的访问点确定为伪造访问点。

611、判断当前剩余未识别的访问点数量是否大于xmin。当当前剩余未识别的访问点数量大于xmin时,则执行步骤502。否则结束识别流程。

结合前述各方法流程,本方案实施例还提供了一种访问点的筛选装置,其组成如图10所示,包括:

采集单元71,用于采集至少两个访问点各自对应的被访问次数。

确定单元72,用于根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点。

可选的是,如图10所示,所述确定单元71包括:

第一确定子单元711,用于根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度,以及,所述访问点的总数量与所述被访问次数的总数量之间的扁平度。

第二确定子单元712,用于根据所述平坦度和所述扁平度,确定所述伪造访问点。

可选的是,所述第一确定子单元711具体用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值;将所述标准差除以所述平均值,得到所述平坦度。

可选的是,所述第一确定子单元711具体用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值;将所述总数量除以所述平均值,得到所述扁平度。

可选的是,所述第二确定子单元712具体用于当所述平坦度满足第一阈值范围并且所述扁平度满足第二阈值范围时,确定所述至少两个访问点为伪造访问点。

可选的是,所述采集单元71,用于采集包括已确定的伪造访问点在内的至少三个访问点各自对应的被访问次数。

所述确定单元72,用于根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,确定新的伪造访问点。

可选的是,所述采集单元71,用于采集与所述已确定的伪造访问点完全不同的其它至少两个访问点的被访问次数。

所述确定单元72,用于根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

可选的是,如图12所示,所述装置还包括:

比较单元73,用于当所述平坦度不满足第一阈值范围,或,所述扁平度不满足第二阈值范围时,比较所述访问点的总数量与额定数量的大小关系,所述额定数量不小于2。

所述采集单元71,用于当所述访问点的总数量等于额定数量时,采集与所述至少两个访问点不完全相同的其它至少两个访问点的被访问次数。

所述确定单元72,用于根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

可选的是,如图13所示,所述装置还包括:

所述采集单元71,用于采集数据包。

第一获取单元74,用于获取已采集的数据包对应的访问点。

所述确定单元72,用于根据已采集的数据包对应的访问点,确定各个访问点对应的顶级域名。

选择单元75,用于在对应于同一顶级域名的访问点中选择不小于所述额定数量的访问点。

可选的是,如图14所示,所述装置还包括:

第二获取单元77,用于从已采集的数据包中获取目标数据包,所述目标数据的目的地址为所述伪造访问点中的一个;

所述采集单元71,用于采集当前数据流量;

操作单元78,用于对所述数据流量中与所述目标数据包具有相同源地址的数据包进行指定操作。

本方案实施例提供的一种访问点的筛选装置,通过对访问点的被访问次数和访问点的总数量来计算各个访问点的统计学特性,并依靠统计学特性来识别哪些是被伪造数据包攻击的伪造访问点,相比于现有技术中仅依靠对dns的识别而实现的识别过程来说,本方案实施例提供的识别方法更贴近实际情况,因此更为准确。

另外,针对访问点筛选装置的实现,本方案实施例还提供了一种可能的实现方式,如图15所示,为访问点筛选装置80的简化框图。该访问点筛选装置81可以包括与一个或多个数据存储工具连接的处理器81,该数据存储工具可以包括存储介质82和内存单元83。访问点筛选装置80还可以包括输入接口84和输出接口85,用于与另一装置或系统进行通信。被处理器81的cpu执行的程序代码可存储在内存单元82或存储介质83中。

访问点筛选装置80中的处理器81调用上述程序代码,以执行下属各步骤:

采集至少两个访问点各自对应的被访问次数;根据各个所述访问点的被访问次数和所述访问点的总数量,确定伪造访问点。

所述处理器81还用于根据所述各个所述访问点的被访问次数和所述访问点的总数量,确定每个所述访问点的被访问次数之间的平坦度,以及,所述访问点的总数量与所述被访问次数的总数量之间的扁平度;根据所述平坦度和所述扁平度,确定所述伪造访问点。

所述处理器81还用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的标准差和平均值;将所述标准差除以所述平均值,得到所述平坦度。

所述处理器81还用于根据所述各个所述访问点的被访问次数和所述访问点的总数量进行计算,得到各个所述访问点的被访问次数的平均值;将所述总数量除以所述平均值,得到所述扁平度。

所述处理器81还用于当所述平坦度满足第一阈值范围并且所述扁平度满足第二阈值范围时,确定所述至少两个访问点为伪造访问点。

所述处理器81还用于采集包括已确定的伪造访问点在内的至少三个访问点各自对应的被访问次数;根据所述至少三个访问点各自的被访问次数和所述至少三个访问点的总数量,确定新的伪造访问点。

所述处理器81还用于采集与所述已确定的伪造访问点完全不同的其它至少两个访问点的被访问次数;以及,根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

所述处理器81还用于当所述平坦度不满足第一阈值范围,或,所述扁平度不满足第二阈值范围时,比较所述访问点的总数量与额定数量的大小关系,所述额定数量不小于2;当所述访问点的总数量等于额定数量时,采集与所述至少两个访问点不完全相同的其它至少两个访问点的被访问次数;以及,根据所述其它两个访问点的被访问次数和所述其它至少两个访问点的总数量,确定伪造访问点。

所述处理器81还用于采集数据包;获取已采集的数据包对应的访问点;

根据已采集的数据包对应的访问点,确定各个访问点对应的顶级域名;在对应于同一顶级域名的访问点中选择不小于所述额定数量的访问点。

所述处理器81还用于从已采集的数据包中获取目标数据包,所述目标数据的目的地址为所述伪造访问点中的一个;采集当前数据流量;对所述数据流量中与所述目标数据包具有相同源地址的数据包进行指定操作。

本方案实施例提供的一种访问点的筛选装置,通过对访问点的被访问次数和访问点的总数量来计算各个访问点的统计学特性,并依靠统计学特性来识别哪些是被伪造数据包攻击的伪造访问点,相比于现有技术中仅依靠对dns的识别而实现的识别过程来说,本方案实施例提供的识别方法更贴近实际情况,因此更为准确。

上述实施例中,存储介质可以是只读存储器(read-onlymemory,rom),或是可读写的,例如硬盘、闪存。内存单元可为随机存取存储器(randomaccessmemory,ram)。内存单元可与处理器物理集成或集成在存储器中或构建为单独的单元。

处理器为上述设备(该设备为上述服务器或者上述客户端)的控制中心,并提供处理装置,用于执行指令,进行中断操作,提供计时功能以及多种其他功能。可选地,处理器包括一个或多个中央处理单元(cpu),例如图12中示出的cpu0和cpu1。上述设备中包括一个或者多个的处理器。处理器可为单核(单cpu)处理器或多核(多cpu)处理器。除非另有声明,描述为用于执行任务的例如处理器或存储器的部件可实现为通用部件,其暂时用于在给定时间执行任务,或实现为专门制造用于执行该任务的特定部件。此处所用的术语“处理器”指一个或多个装置,电路和/或处理核,用于处理数据,例如计算机程序指令。

被处理器的cpu执行的程序代码可存储在内存单元或存储介质中。可选地,存储在存储介质中的程序代码可以被复制入内存单元以便处理器的cpu执行。处理器可执行至少一个内核(例如linuxtm、unixtm、windowstm、androidtm、iostm),众所周知,该内核用于通过控制其他程序或过程的执行、控制与外围装置的通信以及控制计算机设备资源的使用来控制上述设备的操作。

以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到至少两个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

最后应说明的是:以上各实施例仅用以说明本方案的技术方案,而非对其限制;尽管参照前述各实施例对本方案进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本方案各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1