基于全网环境下的快速互联网资产特征探测方法及装置与流程

文档序号:13807997阅读:241来源:国知局
基于全网环境下的快速互联网资产特征探测方法及装置与流程

本发明涉及网络安全领域,具体而言,涉及基于全网环境下的快速互联网资产特征探测方法及装置。



背景技术:

在信息全球化高速发展的互联网环境下,个人可以快速的部署网站,企业可以很快在网络中部署各种服务器例如web服务器dns服务器等。同时对于网络中的黑客(本文指非法收集,窃取相对有价值资料的人)会针对服务器去攻击,窃取企业资料,敏感信息。导致网络安全风险的产生,同时在大数据的高速发展下,黑客也更容易利用大数据的攻击方式来攻击不同的服务器。

在企业网络安全中,网络资产统计是信息安全的基础,只有了解了自己的网络资产才能进一步对信息安全做规划,以及部署安全设备。通常情况下用户对内网进行人工资产统计,和使用扫描器对服务器,pc电脑,端口扫描进行资产统计。传统的网络扫描通常利用syn包syn(synchronous)是tcp/ip建立连接时使用的握手信号。在客户机和服务器之间建立正常的tcp(传输控制协议)网络连接时,客户机首先发出一个syn消息,服务器使用syn+ack应答表示接收到了这个消息,最后客户机再以ack消息响应。这样在客户机和服务器之间才能建立起可靠的tcp连接,数据才可以在客户机和服务器之间传递。然而现有技术中存在无法针对全网快速扫描和资产探测的技术问题。



技术实现要素:

本发明提供基于全网环境下的快速互联网资产特征探测方法及装置,旨在改善上述技术问题。

本发明提供的基于全网环境下的快速互联网资产特征探测方法,包括:根据目标ip和目标端口号生成序列号值;基于所述序列号值生成tcp报文;将所述tcp报文发送至所述目标端口号所对应的目标端口;获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文;获取所述应答报文所携带的返回ip地址和返回端口号;判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配;若是,获取所述应答报文所携带的应答数据;识别所述应答数据所对应的服务类型。

优选地,所述的根据目标ip和目标端口号生成序列号值,包括:所述序列号值满足:seq值=目标ip+目标端口,其中,所述seq(sequencenumber)值表示所述序列号值。

优选地,所述的获取所述应答报文所携带的返回ip地址和返回端口号,包括:获取所述应答报文所携带的确认字符所对应的确认值;对所述确认值做逆向运算,以获取所述确认值所对应的返回ip地址和返回端口号。

优选地,所述的识别所述应答数据所对应的服务类型,包括:获取所述应答数据所携带的特征字符;查找所述特征字符所对应的服务类型。

优选地,所述的识别所述应答数据所对应的服务类型,之后还包括:将所述应答数据存储到本地。

本发明提供的基于全网环境下的快速互联网资产特征探测装置,包括:第一数据获取单元,用于根据目标ip和目标端口号生成序列号值;报文生成单元,用于基于所述序列号值生成tcp报文;报文发送单元,用于将所述tcp报文发送至所述目标端口号所对应的目标端口;报文获取单元,用于获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文;第二数据获取单元,用于获取所述应答报文所携带的返回ip地址和返回端口号;数据处理单元,用于判断所述序列号值所对应的所述目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的所述目标端口号是否与所述返回端口号匹配;执行单元,用于若是,获取所述应答报文所携带的应答数据;识别单元,用于识别所述应答数据所对应的服务类型。

优选地,所述的第一数据获取单元具体用于:所述序列号值满足:seq值=目标ip+目标端口,其中,所述seq(sequencenumber)值表示所述序列号值。

优选地,所述第二数据获取单元具体用于:获取所述应答报文所携带的确认字符所对应的确认值;对所述确认值做逆向运算,以获取所述确认值所对应的返回ip地址和返回端口号。

优选地,所述识别单元具体用于:获取所述应答数据所携带的特征字符;查找所述特征字符所对应的服务类型。

优选地,所述识别单元之后,还包括:存储单元,用于将所述应答数据存储到本地。

上述本发明提供的基于全网环境下的快速互联网资产特征探测方法及装置,根据目标ip和目标端口号生成序列号值,从而基于所述序列号值生成tcp报文,再将所述报文并发至目标端口上进行扫描探测,从而有效地提高了发送效率,通过获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文,从而对所述应答报文进行解析,以判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配,当匹配时,最后通过识别应答数据所对应的服务类型,使得用户能够快速对互联网资产识别,有效地帮助用户对全网环境下做有效的安全风险评估。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的一种电子设备的结构框图;

图2为本发明第一实施例提供的基于全网环境下的快速互联网资产特征探测方法的流程图;

图3为图2所示的基于全网环境下的快速互联网资产特征探测方法中的tcp报文发送示意图;

图4为图2所示的基于全网环境下的快速互联网资产特征探测方法中的目标服务器返回应答报文示意图;

图5为图2所示的基于全网环境下的快速互联网资产特征探测方法中的服务类型识别示意图;

图6为本发明第二实施例提供的基于全网环境下的快速互联网资产特征探测方法的流程图;

图7为本发明第三实施例提供的基于全网环境下的快速互联网资产特征探测装置的功能模块示意图;

图8为本发明第四实施例提供的基于全网环境下的快速互联网资产特征探测装置的功能模块示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,为本发明实施例提供的一种电子设备的结构框图。所述电子设备300包括基于全网环境下的快速互联网资产特征探测装置、存储器302、存储控制器303、处理器304及外设接口305。

所述存储器302、存储控制器303、处理器304及外设接口305各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述基于全网环境下的快速互联网资产特征探测装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器302中或固化在所述电子设备300的操作系统(operatingsystem,os)中的软件功能模块。所述处理器304用于执行存储器302中存储的可执行模块,例如所述基于全网环境下的快速互联网资产特征探测装置包括的软件功能模块或计算机程序。

其中,存储器302可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。其中,存储器302用于存储程序,所述处理器304在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的服务器100所执行的方法可以应用于处理器304中,或者由处理器304实现。

处理器304可能是一种集成电路芯片,具有信号的处理能力。上述的处理器304可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

所述外设接口305将各种输入/输入装置耦合至处理器304以及存储器302。在一些实施例中,外设接口305、处理器304以及存储控制器303可以在单个芯片中实现。在其他一些实例中,他们可以分别由独立的芯片实现。

请参阅图2,是本发明第一实施例提供的基于全网环境下的快速互联网资产特征探测方法的流程图。下面将对图2所示的具体流程进行详细阐述。

步骤s101,根据目标ip和目标端口号生成序列号值。

作为一种实施方式,在全网环境下,在本地构造目标ip以及目标端口号,从而根据所述目标ip和所述目标端口号生成序列号值。具体的,所述序列号值满足:seq值=目标ip+目标端口。其中,seq(sequencenumber)值表示所述序列号值。所述目标ip表示所述目标ip的地址,所述目标端口表示所述目标端口的端口号。例如,在本地随意构造一个目标ip为1.1.1.1,目标端口号为1,此时,seq值=(1.1.1.1+1)=123456。又如,在本地随意构造一个目标ip为253.253.253.253,目标端口号为65533,此时,seq值=(253.253.253.253+65533)=56789。其中,根据预设规则使得所述目标ip加上所述目标端口为一个数值。

其中,所述序列号值是指tcp(transmissioncontrolprotocol)协议中的序列号所对应的数值。

步骤s102,基于所述序列号值生成tcp报文。

其中,tcp报文是指包含有所述序列号值的并基于传输控制协议的报文。

作为一种实施方式,将所述序列号值插入所述tcp包头,以生成所述tcp报文。

步骤s103,将所述tcp报文发送至所述目标端口号所对应的目标端口。

在本实施例中,优选地,通过并发的方式将所述tcp报文发送至所述目标端口号所对应的目标端口上,如图3所示。

在本实施例中,为了快速提高发送效率,不在单独等待返回包,优选地,开放单独端口,以等待所述目标服务器持续回报。

在本实施例中,优选地,在步骤s103之后,还包括持续等待所述目标服务器返回数据。

步骤s104,获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文。

其中,所述tcp报文作为探测包,用于对所述目标ip端口进行探测,如图4所示。

步骤s105,获取所述应答报文所携带的返回ip地址和返回端口号。

其中,所述返回ip地址是指所述应答报文所携带的ip地址。所述返回端口号是指所述应答报文所携带的端口号。

作为一种实施方式,获取所述应答报文所携带的确认字符所对应的确认值;对所述确认值做逆向运算,以获取所述确认值所对应的返回ip地址和返回端口号。

其中,确认字符是指所述应答报文所携带的ack(acknowledgement)。通过对所述ack做逆向运算,从而获取所述ack所对应的返回ip地址和返回端口号。

步骤s106,判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配。

在本实施例中,例如,所述应答报文所携带的ip地址为10.0.0.1,端口为80。将ack值减1得到seq值,即所述seq值=ack值-1,通过逆向算法还原出所述ack值所对应的目标ip和目标端口号。将目标ip与所述应答报文所携带的返回ip地址进行比对以及将目标端口号与所述应答报文所携带的返回端口号进行比对。从而判断所述目标ip与所述应答报文所携带的返回ip地址是否相同以及目标端口号与所述应答报文所携带的返回端口号是否相同。

步骤s107,若是,获取所述应答报文所携带的应答数据。

在本实施例中,如果相同,即表示目标服务器正确应答了所述tcp报文,即可判定为目标端口开放。以及获取所述应答报文所携带的应答数据。

如果不同,即表示目标服务器应答的报文不是所述tcp报文,则丢弃数据。

步骤s108,识别所述应答数据所对应的服务类型。

其中,所述服务类型可以是http服务、ftp服务、telnet服务和/或smtp服务。在此,不作具体限定。

作为一种实施方式,获取所述应答数据所携带的特征字符;查找所述特征字符所对应的服务类型。如图5所示,不同服务器所返回的不同服务类型。

其中,所述特征字符是指所述应答数据中所携带的字符串。例如,http服务中,在返回应答数据中所携带字符串“http/1.1200forbidden”。又如,ftp服务在返回包中携带字符串“"data":"220----------welcometopure-ftpd[privsep]”。在此,不作具体限定。

所述的查找所述特征字符所对应的服务类型是指如当所述应答数据中头部携带“http/1.1200”,则判定目标ip和目标端口号开放的服务是http服务。

请参阅图6,是本发明第二实施例提供的基于全网环境下的快速互联网资产特征探测方法的流程图。下面将对图6所示的具体流程进行详细阐述。

步骤s201,根据目标ip和目标端口号生成序列号值。

步骤s202,基于所述序列号值生成tcp报文。

步骤s203,将所述tcp报文发送至所述目标端口号所对应的目标端口。

步骤s204,获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文。

步骤s205,获取所述应答报文所携带的返回ip地址和返回端口号。

步骤s206,判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配。

步骤s207,若是,获取所述应答报文所携带的应答数据。

步骤s208,识别所述应答数据所对应的服务类型。

步骤s201至步骤s208的具体实施方式请参照第一实施例中所对应的步骤,在此,不再赘述。

步骤s209,将所述应答数据存储到本地。

在本实施例中,将满足步骤s206的所述应答报文所携带的应答数据且所述应答数据已经被识别出服务类型的数据进行存储到本地。

请参阅图7,是本发明第三实施例提供的基于全网环境下的快速互联网资产特征探测装置的功能模块示意图。所述快速互联网资产特征探测装置400包括:第一数据获取单元410、报文生成单元420、报文发送单元430、报文获取单元440、第二数据获取单元450、数据处理单元460、执行单元470和识别单元480。

第一数据获取单元410,用于根据目标ip和目标端口号生成序列号值。

其中,所述的第一数据获取单元410具体用于:所述序列号值满足:seq值=目标ip+目标端口,其中,所述seq(sequencenumber)值表示所述序列号值。

报文生成单元420,用于基于所述序列号值生成tcp报文。

报文发送单元430,用于将所述tcp报文发送至所述目标端口号所对应的目标端口。

报文获取单元440,用于获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文。

第二数据获取单元450,用于获取所述应答报文所携带的返回ip地址和返回端口号。

其中,所述第二数据获取单元450具体用于:获取所述应答报文所携带的确认字符所对应的确认值;对所述确认值做逆向运算,以获取所述确认值所对应的返回ip地址和返回端口号。

数据处理单元460,用于判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配。

执行单元470,用于若是,获取所述应答报文所携带的应答数据。

识别单元480,用于识别所述应答数据所对应的服务类型。

请参阅图8,是本发明第四实施例提供的基于全网环境下的快速互联网资产特征探测装置的功能模块示意图。所述快速互联网资产特征探测装置500包括:第一数据获取单元510、报文生成单元520、报文发送单元530、报文获取单元540、第二数据获取单元550、数据处理单元560、执行单元570、识别单元580和存储单元590。

第一数据获取单元510,用于根据目标ip和目标端口号生成序列号值。

其中,所述的第一数据获取单元510具体用于:所述序列号值满足:seq值=目标ip+目标端口,其中,所述seq(sequencenumber)值表示所述序列号值。

报文生成单元520,用于基于所述序列号值生成tcp报文。

报文发送单元530,用于将所述tcp报文发送至所述目标端口号所对应的目标端口。

报文获取单元540,用于获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文。

第二数据获取单元550,用于获取所述应答报文所携带的返回ip地址和返回端口号。

其中,所述第二数据获取单元550具体用于:获取所述应答报文所携带的确认字符所对应的确认值;对所述确认值做逆向运算,以获取所述确认值所对应的返回ip地址和返回端口号。

数据处理单元560,用于判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配。

执行单元570,用于若是,获取所述应答报文所携带的应答数据。

识别单元580,用于识别所述应答数据所对应的服务类型。

存储单元590,用于将所述应答数据存储到本地。

综上所述,本发明提供的基于全网环境下的快速互联网资产特征探测方法及装置,根据目标ip和目标端口号生成序列号值,从而基于所述序列号值生成tcp报文,再将所述报文并发至目标端口上进行扫描探测,从而有效地提高了发送效率,通过获取所述目标端口所对应的目标服务器基于所述tcp报文所返回的应答报文,从而对所述应答报文进行解析,以判断所述序列号值所对应的目标ip是否与所述返回ip地址匹配以及所述序列号值所对应的目标端口号是否与所述返回端口号匹配,当匹配时,最后通过识别应答数据所对应的服务类型,使得用户能够快速对互联网资产识别,有效地帮助用户对全网环境下做有效的安全风险评估。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

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