一种网络空间探测方法、装置及计算设备与流程

文档序号:13450107阅读:536来源:国知局
一种网络空间探测方法、装置及计算设备与流程
本发明涉及计算机网络领域,特别涉及一种网络空间探测方法、装置及计算设备。
背景技术
:随着互联网技术的不断发展,越来越多的人开始通过各种终端设备来接入互联网,以获取所需的资讯以及享受互联网服务带来的生活便利。为了更好地利用互联网,需要对互联网这一网络空间进行探测来探明其中所存在的终端设备。现有的网络空间探测方法在针对批量目标ip地址探测,或者针对批量目标端口探测时,使用的多是计数器累加法,探测的目标设备是按照一定的规律,比如递增进行的,具有较强的规律性。而在网络空间中的部分网络节点上设置有防止扫描的设备系统,一般是入侵检测设备,此类设备会对网络空间的探测行为进行感知,一旦识别到网络空间探测来源,就会切断与探测来源之间的连接。特别是当探测行为具有规律性时,更容易触发入侵检测设备的检测规则,导致探测行为被感知,降低了探测的成功率。因此,需要一种新的网络空间探测方案来改进上述处理过程。技术实现要素:为此,本发明提供一种网络空间探测的技术方案,以力图解决或者至少缓解上面存在的问题。根据本发明的一个方面,提供一种网络空间探测方法,适于在计算设备中执行,该计算设备与多个目标主机通信连接,每个目标主机具有对应的目标参数,该方法包括如下步骤:获取各待探测的目标主机的目标参数;将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列;按照目标探测序列中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈;接收所发出的各探测数据包对应的反馈数据包;对各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态;若反馈状态指示该反馈数据包为正常数据包,则从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。可选地,在根据本发明的网络空间探测方法中,目标参数为目标ip地址和/或目标端口。可选地,在根据本发明的网络空间探测方法中,将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列的步骤包括:获取目标参数的总个数作为第一数量;生成第一数量个预设的第一数值区间内的随机数,并依次分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。可选地,在根据本发明的网络空间探测方法中,将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列的步骤包括:对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对;获取目标参数对的总个数作为第二数量;生成第二数量个预设的第二数值区间内的随机数,并依次分配给各目标参数对;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。可选地,在根据本发明的网络空间探测方法中,将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列的步骤包括:获取目标参数的总个数作为第三数量;按从小到大的顺序依次生成第三数量个预设的第三数值区间内的随机数,并随机分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。可选地,在根据本发明的网络空间探测方法中,探测数据包为异常数据包。可选地,在根据本发明的网络空间探测方法中,目标主机信息包括目标主机的系统、版本、协议和/或时间戳。可选地,在根据本发明的网络空间探测方法中,还包括:若反馈状态指示该反馈数据包为异常数据包,则经过预设的时间间隔后,再次发送该反馈状态对应的探测数据包。根据本发明的又一个方面,提供一种网络空间探测装置,适于驻留在计算设备中,该计算设备与多个目标主机通信连接,每个目标主机具有对应的目标参数,该装置包括获取模块、随机化模块、发送模块、接收模块、解析模块和存储模块。其中,获取模块适于获取各待探测的目标主机的目标参数;随机化模块适于将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列;发送模块适于按照目标探测序列中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈;接收模块适于接收所发出的各探测数据包对应的反馈数据包;解析模块适于对各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态;存储模块适于当反馈状态指示该反馈数据包为正常数据包时,从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。根据本发明的又一个方面,提供一种计算设备,包括根据本发明的网络空间探测装置。根据本发明的又一个方面,提供一种计算设备,包括一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序包括用于执行根据本发明的网络空间探测方法的指令。根据本发明的又一个方面,还提供一种存储一个或多个程序的计算机可读存储介质,一个或多个程序包括指令,指令当由计算设备执行时,使得计算设备执行根据本发明的网络空间探测方法。根据本发明的网络空间探测的技术方案,对各待探测的目标主机的目标参数进行随机化排序,生成相应的目标探测序列,按照其中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈,对接收到的各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态,若反馈状态指示该反馈数据包为正常数据包,则从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。在上述方案中,对各目标参数进行随机化排序时,考虑到目标主机可能存在多个待探测的目标端口,则对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对,再获取目标参数对的总数量,生成总数量个随机数并依次分配给各目标参数对,将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。基于此,实现了对具有多个待探测的目标端口的目标主机,发送与其待探测的目标端口数量一致的探测数据包,且探测数据包的发送次序是具有随机性的,在保证探测完整性的同时还降低了探测行为被感知的可能性,提高了探测的成功率。附图说明为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。图1示出了根据本发明的一个实施例的网络系统100的示意图;图2示出了根据本发明的一个实施例的计算设备200的结构框图;图3示出了根据本发明的一个实施例的脚本执行方法300的流程图;以及图4示出了根据本发明的一个实施例的脚本执行装置400的示意图具体实施方式下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。图1示出了根据本发明一个实施例的网络系统100的示意图。应当指出,图1中的网络系统100仅是示例性的,在具体的实践情况中,网络系统100中可以有不同数量的计算设备和目标主机,而且目标主机的数量通常是非常多的,本发明对网络系统100中所包括的计算设备和目标主机的数量不做限制。如图1所示,网络系统100中包括计算设备200、目标主机500、目标主机600和目标主机700。其中,计算设备200分别与目标主机500、600和700通信连接。具体来说,计算设备200先获取各待探测的目标主机500、600和700的目标参数,将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列,按照目标探测序列中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈。当目标主机500、600和700接收到对应的探测数据包后会对其进行反馈,分别向计算设备200发送相应的反馈数据包,而计算设备200在接收到所发出的各探测数据包对应的反馈数据包后,对各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态,若反馈状态指示该反馈数据包为正常数据包,则从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。图2是根据本发明的一个实施例的计算设备200的结构框图。在基本的配置202中,计算设备200典型地包括系统存储器206和一个或者多个处理器204。存储器总线208可以用于在处理器204和系统存储器206之间的通信。取决于期望的配置,处理器204可以是任何类型的处理,包括但不限于:微处理器(μp)、微控制器(μc)、数字信息处理器(dsp)或者它们的任何组合。处理器204可以包括诸如一级高速缓存210和二级高速缓存212之类的一个或者多个级别的高速缓存、处理器核心214和寄存器216。示例的处理器核心214可以包括运算逻辑单元(alu)、浮点数单元(fpu)、数字信号处理核心(dsp核心)或者它们的任何组合。示例的存储器控制器218可以与处理器204一起使用,或者在一些实现中,存储器控制器218可以是处理器204的一个内部部分。取决于期望的配置,系统存储器206可以是任意类型的存储器,包括但不限于:易失性存储器(诸如ram)、非易失性存储器(诸如rom、闪存等)或者它们的任何组合。系统存储器206可以包括操作系统220、一个或者多个程序222以及程序数据224。在一些实施方式中,程序222可以布置为在操作系统上由一个或多个处理器204利用程序数据224执行指令。计算设备200还可以包括有助于从各种接口设备(例如,输出设备242、外设接口244和通信设备246)到基本配置202经由总线/接口控制器230的通信的接口总线240。示例的输出设备242包括图形处理单元248和音频处理单元250。它们可以被配置为有助于经由一个或者多个a/v端口252与诸如显示器或者扬声器之类的各种外部设备进行通信。示例外设接口244可以包括串行接口控制器254和并行接口控制器256,它们可以被配置为有助于经由一个或者多个i/o端口258和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备246可以包括网络控制器260,其可以被布置为便于经由一个或者多个通信端口264与一个或者多个其他计算设备262通过网络通信链路的通信。网络通信链路可以是通信介质的一个示例。通信介质通常可以体现为在诸如载波或者其他传输机制之类的调制数据信号中的计算机可读指令、数据结构、程序模块,并且可以包括任何信息递送介质。“调制数据信号”可以这样的信号,它的数据集中的一个或者多个或者它的改变可以在信号中编码信息的方式进行。作为非限制性的示例,通信介质可以包括诸如有线网络或者专线网络之类的有线介质,以及诸如声音、射频(rf)、微波、红外(ir)或者其它无线介质在内的各种无线介质。这里使用的术语计算机可读介质可以包括存储介质和通信介质二者。计算设备200可以实现为服务器,例如文件服务器、数据库服务器、应用程序服务器和web服务器等,也可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(pda)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备200还可以实现为包括桌面计算机和笔记本计算机配置的个人计算机。在一些实施例中,计算设备200被配置为执行根据本发明的网络空间探测方法300。程序222包括根据本发明的网络空间探测装置400。图3示出了根据本发明的一个实施例的网络空间探测方法300的流程图。网络空间探测方法300适于在计算设备(例如图2所示的计算设备200)中执行。如图3所示,方法300始于步骤s310。在步骤s310中,获取各待探测的目标主机的目标参数,目标参数为目标ip地址和/或目标端口。根据本发明的一个实施例,待探测的目标主机共计10个,分别记为a1、a2、a3、……、a9和a10,目标参数为目标ip地址,则目标主机a1~a10的目标ip地址依次为b1、b2、b3、……、b9和b10,每个目标主机待探测的目标端口均为c1。表1示出了根据本发明的一个实施例的目标主机与目标参数的关联示例,具体如下所示:目标主机目标ip地址目标端口a1b1c1a2b2c1a3b3c1………a9b9c1a10b10c1表1随后,进入步骤s320,将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列。根据本发明的一个实施例,可以通过以下方式根据各目标参数来生成目标探测序列。首先,获取目标参数的总个数作为第一数量,生成第一数量个预设的第一数值区间内的随机数,并依次分配给各目标参数,将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。在该实施方式中,目标参数为目标ip地址,第一数值区间预设为[1,100],表示不小于1且不大于100的数值范围。先获取目标ip地址的总个数作为第一数量,可得第一数量为10,再生成10个不小于1且不大于100的随机数,分别是56、23、17、90、25、6、78、11、63和39,将这些随机数依次分配给目标ip地址b1~b10。表2示出了根据本发明的一个实施例的目标ip地址与随机数的对应关系示例,具体如下所示:目标ip地址随机数b156b223b317……b963b1039表2接下来,将各随机数按照从小到大的顺序进行排序,可得排序后的随机数依次为6、11、17、23、25、39、56、63、78和90,根据该排序结果对各随机数对应的目标ip地址进行排序,以生成相应的目标探测序列,该目标探测序列中各目标ip地址依次为b6、b8、b3、b2、b5、b10、b1、b9、b7和b4。表3示出了根据本发明的一个实施例的目标探测序列的示例,具体如下所示:次序目标ip地址1b62b83b3……9b710b4表3考虑到一个目标主机可能存在多个待探测的目标端口,则对各目标主机对应的目标参数进行随机化排序时,同一目标ip地址对应的待探测的各目标端口也需要参与排序,从而生成目标探测序列。根据本发明的又一个实施例,待探测的目标主机共计10个,分别记为a1、a2、a3、……、a9和a10,目标参数为目标ip地址,则目标主机a1~a10的目标ip地址依次为b1、b2、b3、……、b9和b10,目标主机a1待探测的目标端口为c1、c2和c3,目标主机a2待探测的目标端口为c1和c3,目标主机a3~a10待探测的目标端口均为c1。表4示出了根据本发明的又一个实施例的目标主机与目标参数的关联示例,具体如下所示:表4在上述目标主机待探测的目标端口数量可能不只一个的情况下,可以通过以下方式生成目标探测序列。首先,对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对,再获取目标参数对的总个数作为第二数量,生成第二数量个预设的第二数值区间内的随机数,并依次分配给各目标参数对,最后将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。在该实施方式中,第二数值区间预设为[1,200],表示不小于1且不大于200的数值范围。先将目标主机a1~a10待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对。比如,对目标主机a1而言,其具有3个待探测的目标端口,分别是c1、c2和c3,将目标端口c1、c2和c3与目标ip地址b1关联,得到3个目标参数对(b1,c1)、(b1,c2)和(b1,c3)。基于此,获取目标主机a2~a10的目标参数对,表5示出了根据本发明的又一个实施例的目标主机与目标参数对的关联示例,具体如下所示:表5随后,获取目标参数对的总个数作为第二数量,可得第二数量为13,则生成13个不小于1且不大于200的随机数,分别是135、46、34、2、98、177、15、72、85、61、191、144和29,将这13个随机数依次分配给各目标参数对。表6示出了根据本发明的又一个实施例的目标参数对与随机数的对应关系示例,具体如下所示:表6接下来,将各随机数按照从小到大的顺序进行排序,可得排序后的随机数依次为2、15、29、34、46、61、72、85、98、135、144、177和191,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列,该目标探测序列中各目标参数对依次为(b2,c1)、(b4,c1)、(b10,c1)、(b1,c3)、(b1,c2)、(b7,c1)、(b5,c1)、(b6,c1)、(b2,c3)、(b1,c1)、(b9,c1)、(b3,c1)和(b8,c1)。表7示出了根据本发明的又一个实施例的目标探测序列的示例,具体如下所示:次序目标参数对1(b2,c1)2(b4,c1)3(b10,c1)……12(b3,c1)13(b8,c1)表7此外,在对各目标参数进行随机化排序时,根据本发明的又一个实施例,还可以获取目标参数的总个数作为第三数量,按从小到大的顺序依次生成第三数量个预设的第三数值区间内的随机数,并随机分配给各目标参数,然后将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。在该实施方式中,目标主机与目标参数的关联示例参照表1所示,第三数值区间预设为[1,100],表示不小于1且不大于100的数值范围。先获取目标ip地址的总个数作为第三数量,可得第三数量为10,再按从小到大的顺序依次生成10不小于1且不大于100的随机数,分别是3、15、26、37、42、51、69、77、86和98,将这些随机数随机分配给目标ip地址b1~b10,则目标ip地址b1~b10对应的随机数依次为37、77、98、3、15、69、42、26、86和51。表8示出了根据本发明的一个实施例的目标ip地址与随机数的对应关系示例,具体如下所示:目标ip地址随机数b137b277b398……b986b1051表8接下来,将各随机数按照从小到大的顺序进行排序,可得排序后的随机数依次为3、15、26、37、42、51、69、77、86和98,根据该排序结果对各随机数对应的目标ip地址进行排序,以生成相应的目标探测序列,该目标探测序列中各目标ip地址依次为b4、b5、b8、b1、b7、b10、b6、b2、b9和b3。表9示出了根据本发明的又一个实施例的目标探测序列的示例,具体如下所示:次序目标ip地址1b42b53b8……9b910b3表9此外,当目标参数为目标端口时,在对各目标端口进行随机化排序以生成相应的目标探测序列时,可采用如上所述的对各目标ip地址进行随机化排序以生成相应的目标探测序列的方式来处理,此处不再赘述。而关于以上随机化排序生成目标探测序列的具体算法,本发明并不限制,这些算法对于了解本发明方案的技术人员来说是可以容易想到的,并且也在本发明的保护范围之内,此处不予以赘述。在生成相应的目标探测序列后,进入步骤s330,按照目标探测序列中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈。根据本发明的一个实施例,探测数据包为异常数据包,目标参数为目标ip地址,目标探测序列的示例参照表3。根据如表3所示的目标探测序列中各目标ip地址的次序,依次向目标ip地址b6、b8、b3、b2、b5、b10、b1、b9、b7和b4对应的目标主机发送异常数据包q1、q2、q3、q4、q5、q6、q7、q8、q9和q10,即依次向目标主机a6、a8、a3、a2、a5、a10、a1、a9、a7和a4发送异常数据包q1~q10,以便各目标主机对该异常数据包进行反馈。表10示出了根据本发明的一个实施例的目标主机与探测数据包之间的对应关系示例,具体如下所示:目标主机探测数据包(异常数据包)a6q1a8q2a3q3……a7q9a4q10表10异常数据包为不符合rfc(requestforcomments)规范定义的数据包,可以利用包含数据包头值的漏洞来故意违反rfc标准以形成人工定义的异常数据包。对于ip数据包、udp数据包、tcp数据包和icmp数据包这四类数据包,通过设置其包头字段的异常特征即可形成相应的异常数据包,比如将ip数据包头的版本号、ip数据包首部长度、ip地址、udp数据包的报文长度、tcp数据包首部校验结果、icmp数据包的端口号和icmp数据包的tcp标志组合值等设置为非正常值。对于异常数据包的生成方法,本发明并不限制,这些方法对于了解本发明方案的技术人员来说是可以容易想到的,并且也在本发明的保护范围之内,此处不予以赘述。各目标主机接收到计算设备200发出的各探测数据包后,会对该探测数据包进行响应而生成对应的反馈数据包,并将各反馈数据包发送给计算设备200。反馈数据包包括反馈信息及关联的反馈状态,反馈状态用于指示该反馈数据包是正常数据包还是异常数据包。探测数据包q1~q10分别对应于反馈数据包r1、r2、r3、r4、r5、r6、r7、r8、r9和r10。表11示出了根据本发明的一个实施例的目标主机与探测数据包、反馈数据包之间的对应关系示例,具体如下所示:目标主机探测数据包(异常数据包)反馈数据包a6q1r1a8q2r1a3q3r3………a7q9r9a4q10r10表11在步骤s340中,计算设备200接收所发出的各探测数据包对应的反馈数据包。根据本发明的一个实施例,计算设备200接收到反馈数据包r1~r10。随后执行步骤s350,对各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态。根据本发明的一个实施例,对反馈数据包r1~r10分别进行解析处理以获取对应的反馈信息及关联的反馈状态,反馈数据包r1~r10所包含的反馈信息依次为t1、t2、t3、t4、t5、t6、t7、t8、t9和t10,关联的反馈状态依次为1、1、1、1、1、1、1、1、1、1和0。反馈状态以1表示其关联的反馈数据包为正常数据包,以0表示其关联的反馈数据包为异常数据包。表12示出了根据本发明的一个实施例的反馈数据包与反馈信息及反馈状态的对应关系示例,具体如下所示:反馈数据包反馈信息反馈状态r1t11r1t21r3t31………r9t91r10t100表12对接收到的反馈数据包完成解析处理后,执行步骤s360,若反馈状态指示该反馈数据包为正常数据包,则从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。根据本发明的一个实施例,目标主机信息包括目标主机的系统、版本、协议和/或时间戳。在该实施方式中,由反馈状态可知,反馈数据包r1~r9是正常数据包,而反馈数据包r10是异常数据包,则从反馈信息t1~t9中分别提取出相应的目标主机信息,从而得到目标主机信息依次为v1、v2、v3、v4、v5、v6、v7、v8和v9,将各目标主机信息v1~v9与其对应的目标ip地址b6、b8、b3、b2、b5、b10、b1、b9和b7关联存储。表13示出了根据本发明的一个实施例的目标参数与目标主机信息的存储关系示例,具体如下所示:表13为了便于查看目标主机信息,可按照目标参数进行随机化排序前的次序来调整目标参数与目标主机信息的存储关系的顺序。表14示出了根据本发明的一个实施例的目标参数与目标主机信息的存储关系顺序调整后的示例,顺序调整前的示例如表13所示,表14具体如下所示:目标参数(目标ip地址)目标主机信息b1v7b2v4b3v3b5v5b6v1b7v9b8v2b9v8b10v6表14进一步的,若反馈状态指示该反馈数据包为异常数据包,则经过预设的时间间隔后,再次发送该反馈状态对应的探测数据包。在该实施方式中,时间间隔预设为10分钟,由于反馈数据包r10为异常数据包,则经过10分钟后,计算设备200会再次发送探测数据包q10至目标主机a4。图4示出了根据本发明的一个实施例的网络空间探测装置400的示意图。如图4所示,网络空间探测装置400包括获取模块410、随机化模块420、发送模块430、接收模块440、解析模块450和存储模块460。获取模块410适于获取各待探测的目标主机的目标参数。目标参数为目标ip地址或目标端口。获取模块410执行上述操作的具体细节可参见方法300中的步骤s310,此处不予以赘述。随机化模块420与获取模块410相连,适于将获取到的各目标参数进行随机化排序,以生成相应的目标探测序列。随机化模块420进一步适于获取目标参数的总个数作为第一数量;生成第一数量个预设的第一数值区间内的随机数,并依次分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。随机化模块420进一步适于对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对;获取目标参数对的总个数作为第二数量;生成第二数量个预设的第二数值区间内的随机数,并依次分配给各目标参数对;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。随机化模块420进一步适于获取目标参数的总个数作为第三数量;按从小到大的顺序依次生成第三数量个预设的第三数值区间内的随机数,并随机分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。随机化模块420执行上述操作的具体细节可参见方法300中的步骤s320,此处不予以赘述。发送模块430与随机化模块420相连,适于按照目标探测序列中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈。发送模块430还适于当反馈状态指示该反馈数据包为异常数据包时,经过预设的时间间隔后,再次发送该反馈状态对应的探测数据包。其中,探测数据包为异常数据包。发送模块430执行上述操作的具体细节可参见方法300中的步骤s330,此处不予以赘述。接收模块440与发送模块430相连,适于接收所发出的各探测数据包对应的反馈数据包。接收模块440执行上述操作的具体细节可参见方法300中的步骤s340,此处不予以赘述。解析模块450与接收模块440相连,适于对各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态。解析模块450执行上述操作的具体细节可参见方法300中的步骤s350,此处不予以赘述。存储模块460分别与随机化模块420和解析模块450相连,适于当反馈状态指示该反馈数据包为正常数据包时,从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。其中,目标主机信息包括目标主机的系统、版本、协议和/或时间戳。存储模块460执行上述操作的具体细节可参见方法300中的步骤s360,此处不予以赘述。现有的网络空间探测方法在针对批量目标ip地址或目标端口进行探测时,使用的多是计数器累加法,探测的目标设备是按照一定的规律,比如递增进行的,具有较强的规律性,很容易触发入侵检测设备的检测规则,导致探测成功率的下降。根据本发明实施例的网络空间探测的技术方案,对各待探测的目标主机的目标参数进行随机化排序,生成相应的目标探测序列,按照其中各目标参数的次序,依次向该目标参数对应的目标主机发送探测数据包,以便该目标主机对该探测数据包进行反馈,对接收到的各反馈数据包进行解析处理以获取对应的反馈信息及关联的反馈状态,若反馈状态指示该反馈数据包为正常数据包,则从反馈信息中提取出目标主机信息,并将目标主机信息与其对应的目标参数关联存储。在上述方案中,对各目标参数进行随机化排序时,考虑到目标主机可能存在多个待探测的目标端口,则对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对,再获取目标参数对的总数量,生成总数量个随机数并依次分配给各目标参数对,将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。基于此,实现了对具有多个待探测的目标端口的目标主机,发送与其待探测的目标端口数量一致的探测数据包,且探测数据包的发送次序是具有随机性的,在保证探测完整性的同时还降低了探测行为被感知的可能性,提高了探测的成功率。a7.如a1-6中任一项所述的方法,所述目标主机信息包括目标主机的系统、版本、协议和/或时间戳。a8.如a1-7中任一项所述的方法,还包括:若所述反馈状态指示该反馈数据包为异常数据包,则经过预设的时间间隔后,再次发送该反馈状态对应的探测数据包。b10.如b9所述的装置,所述目标参数为目标ip地址或目标端口。b11.如b9或10所述的装置,所述随机化模块进一步适于:获取目标参数的总个数作为第一数量;生成第一数量个预设的第一数值区间内的随机数,并依次分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。b12.如b10所述的装置,所述随机化模块进一步适于:对每一个目标主机,将该目标主机待探测的一个或多个目标端口与其目标ip地址关联,以生成与待探测的目标端口数量相同的目标参数对;获取目标参数对的总个数作为第二数量;生成第二数量个预设的第二数值区间内的随机数,并依次分配给各目标参数对;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数对进行排序,以生成相应的目标探测序列。b13.如b9或10所述的装置,所述随机化模块进一步适于:获取目标参数的总个数作为第三数量;按从小到大的顺序依次生成第三数量个预设的第三数值区间内的随机数,并随机分配给各目标参数;将各随机数按照从小到大的顺序进行排序,根据该排序结果对各随机数对应的目标参数进行排序,以生成相应的目标探测序列。b14.如b9-13中任一项所述的装置,所述探测数据包为异常数据包。b15.如b9-14中任一项所述的装置,所述目标主机信息包括目标主机的系统、版本、协议和/或时间戳。b16.如b9-15中任一项所述的装置,所述发送模块还适于:当所述反馈状态指示该反馈数据包为异常数据包时,经过预设的时间间隔后,再次发送该反馈状态对应的探测数据包。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组间可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组间组合成一个模块或单元或组间,以及此外可以把它们分成多个子模块或子单元或子组间。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。这里描述的各种技术可结合硬件或软件,或者它们的组合一起实现。从而,本发明的方法和设备,或者本发明的方法和设备的某些方面或部分可采取嵌入有形媒介,例如软盘、cd-rom、硬盘驱动器或者其它任意机器可读的存储介质中的程序代码(即指令)的形式,其中当程序被载入诸如计算机之类的机器,并被所述机器执行时,所述机器变成实践本发明的设备。在程序代码在可编程计算机上执行的情况下,计算设备一般包括处理器、处理器可读的存储介质(包括易失性和非易失性存储器和/或存储元件),至少一个输入装置,和至少一个输出装置。其中,存储器被配置用于存储程序代码;处理器被配置用于根据该存储器中存储的所述程序代码中的指令,执行本发明的网络空间探测方法。以示例而非限制的方式,计算机可读介质包括计算机存储介质和通信介质。计算机可读介质包括计算机存储介质和通信介质。计算机存储介质存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息。通信介质一般以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息传递介质。以上的任一种的组合也包括在计算机可读介质的范围之内。如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本
技术领域
内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本
技术领域
的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1