信息处理装置以及方法与流程

文档序号:13672045阅读:106来源:国知局
技术领域本发明涉及用于判定协议的技术。

背景技术:
以往,提出了一种侵入检测装置,该侵入检测装置具备:数据段组建部,在来自外部网络的信息包是基于TCP的通信的情况下,将信息包中包括的数据段的副本与会话信息关联起来并临时性地保留,如果接收到具有与会话信息相同的最后的数据段的信息包,则组建具有相同的会话信息的数据段;以及不正当访问解析部,解析所接收到的数据段或者组建了的数据段,在包括不正当访问的情况下,丢弃包括最后接收到的数据段的信息包(参照专利文献1)。另外,提出了一种数据信息包检查方法,该数据信息包检查方法使用所接收到的数据信息包的组头以及内容中包括的信息来对数据信息包进行分类,根据组头信息以及内容这两者来确定处理信息包的流命令,使用流命令来处理信息包(参照专利文献2)。现有技术文献专利文献专利文献1:日本特开2004-179999号公报专利文献2:日本特开2008-011537号公报

技术实现要素:
发明要解决的技术问题以往,在通信的分类中,使用基于通信协议的分类,进行基于目的地端口号的识别。但是,在该方法中,对于不利用协议标准的端口号的通信、故意伪装了端口号的通信,无法正确地识别协议。另外,作为其他识别方法,有使用通信初始的数据来识别协议的方法,但在该方法中,关于类似的协议(例如,HTTP(HypertextTransferProtocol,超文本传输协议)和SIP(SessionInitiationProtocol,会话初始化协议)、FTP(FileTransferProtocol,文件传送协议)与POP3(PostOfficeProtocolversion3,邮局协议版本3)等),可能产生协议识别的错误。进一步地,除了这样的类似协议以外,有时还对协议标准追加任意的方法、指令来利用,或者修订协议规格而追加新的方法、指令。因此,难以通过初始数据正确地识别协议,在正确地识别的情况下,需要累积全部的接收数据直到能够唯一地识别协议,缺乏实时性。本公开鉴于上述的问题,以实时地进行准确性更高的协议判定作为课题。解决技术问题的技术手段本公开的一个例子涉及一种信息处理装置,其特征在于,具备:流管理单元,识别所获取到的数据所属的通信流;第一解析单元,每当接收到属于所述通信流的数据时,依照预先设定了的第一协议的特征来解析该数据,由此推定该通信流所涉及的协议是否是该第一协议;以及第二解析单元,不论由所述第一解析单元得到的解析结果如何,每当接收到属于所述通信流的数据时,依照预先设定了的第二协议的特征来解析该数据,由此推定该通信流所涉及的协议是否是该第二协议,所述流管理单元在属于所述通信流的数据的解析的结果满足了一个或者多个中止条件中的任一个的情况下,使由所述第一解析单元或者所述第二解析单元实施的、所述通信流所涉及的数据的解析中止。本公开能够作为信息处理装置、系统、通过计算机来执行的方法或者使计算机执行的程序来把握。另外,本公开也能够将这样的程序作为在计算机等其他装置、设备等可读的记录介质中记录了的程序来把握。在这里,计算机等可读的记录介质是指:能够通过电、磁、光学、机械或者化学作用来累积数据、程序等信息并且从计算机等读取的记录介质。发明效果根据本公开,能够实时地进行准确性更高的协议判定。附图说明图1是示出实施方式的系统的结构的概略图。图2是示出实施方式的网络监视装置的硬件结构的图。图3是示出实施方式的网络监视装置的功能结构的概略的图。图4是示出实施方式的流表格的概要的图。图5是示出实施方式的数据处理的流的概要的流程图。图6是示出实施方式的协议解析/检查处理的流的概要的流程图。图7是示出实施方式的解析重新开始/中止处理的流的概要的流程图。图8是示出实施方式的系统的结构的变形的概略图。符号说明1系统20网络监视装置90节点具体实施方式下面,根据附图来说明本公开的信息处理装置、方法以及程序的实施方式。但是,下面说明的实施方式是例示实施方式,并非将本公开的信息处理装置、方法以及程序限定于下面说明的具体结构。在实施时,可以适当采用与实施的形式相应的具体结构,另外,也可以进行各种改进、变形。在本实施方式中,说明当在用于监视网络的系统中实施了本公开的信息处理装置、方法以及程序的情况下的实施方式。但是,本公开的信息处理装置、方法以及程序能够针对用于判定协议的技术广泛地使用,本公开的应用对象不限定于本实施方式中示出了的例子。<系统的结构>图1是示出本实施方式的系统1的结构的概略图。本实施方式的系统1具备连接多个信息处理终端90(下面,称为“节点90”)的网络段2、以及用于监视节点90所涉及的通信的网络监视装置20。另外,网络段2内的节点90能够经由路由器10,与经由因特网、广域网而在远程位置处被连接了的各种服务器进行通信。在本实施方式中,网络监视装置20被连接在网络段2的开关或者路由器(在图1所示的例子中,为路由器10)、与位于其上一级的其他开关或者路由器之间,由此获取通过的信息包、帧等。在这种情况下,网络监视装置20在针对所获取到的信息包中的、不切断也行的信息包进行转送的联机模式下进行动作。图2是示出本实施方式的网络监视装置20的硬件结构的图。此外,在图2中,关于网络监视装置20以外的结构(路由器10、节点90等),省略了图示。网络监视装置20是具备CPU(CentralProcessingUnit,中央处理单元)11、RAM(RandomAccessMemory,随机存取存储器)13、ROM(ReadOnlyMemory,只读存储器)12、EEPROM(ElectricallyErasableandProgrammableReadOnlyMemory,电可擦除和可编程只读存储器)、HDD(HardDiskDrive,硬盘驱动器)等存储装置14、NIC(NetworkInterfaceCard,网络接口卡)15等通信单元等的计算机。图3是示出本实施方式的网络监视装置20的功能结构的概略的图。此外,在图3中,关于网络监视装置20以外的结构(路由器10以及节点90等),省略了图示。通过存储装置14中记录的程序被读出到RAM13,并由CPU11执行,网络监视装置20作为具备通信获取部21、流管理部22、多个协议解析部23.1-23.n(在仅指某一个协议解析部的情况下,仅记载为“协议解析部23”)、多个检查部24.1-24.m(在仅指某一个检查部的情况下,仅记载为“检查部24”)、以及事件处理部25的信息处理装置来发挥功能。此外,在本实施方式中,网络监视装置20所具备的各功能通过作为通用处理器的CPU11来执行,但这些功能的一部分或者全部也可以通过一个或者多个专用处理器来执行。另外,这些功能的一部分或者全部也可以使用云技术等,通过在远程位置设置的装置、分散设置的多个装置来执行。通信获取部21获取通过与网络连接了的终端来发送接收的通信的数据。此外,在本实施方式中,在成为由网络监视装置20实施的监视以及检测的对象的“终端”中,除了与网络段2连接的节点90之外,还包括经由路由器10而与节点90进行通信的其他装置(属于其他网络的节点、外部服务器等)。流管理部22识别通过通信获取部21获取到的数据所属的通信流(下面,也称为“流”),另外,每当接收到属于各个流的数据时,根据所获取到的数据、解析结果、检查结果来更新流表格,由此管理流。在这里,流是指TCP(TransmissionControlProtocol,传输控制协议)的连接(Connection)等、用于识别1组数据的发送接收的单位。图4是示出本实施方式的流表格的概要的图。在流表格中,针对通过网络监视装置20获取的每个通信流,管理该流所涉及的信息(下面,称为“流关联信息”)。在本实施方式中,通过附加流ID来识别流,流管理部22能够以流ID作为关键字,从流表格中检索出目的流关联信息。另外,流能够通过参照信息包的组头中包括的协议编号(但是,有可能被伪装)、发送源IP地址、目的地IP地址、发送源端口号、目的地端口号等来识别。因此,如果接收到新的流所涉及的信息包,则流管理部22对流ID进行取号,保持与上述的流的识别中使用的信息的对应关系。在各个流关联信息中,储存了各协议解析部23针对其关联起来了的流是否继续解析数据的解析状态、以及其解析环境。在解析状态中,设定了“解析”或者“不解析”。解析状态的初始值为“解析”。另外,在解析环境中,储存与该协议和流关联的检查部24进行检查所需的信息以及其检查状况(在本实施方式中,是“与检查项目相符”、“与检查项目不相符”以及“保留”中的某一个)。另外,流管理部22参照对象数据的解析结果以及检查结果,在属于流的数据的解析或者检查的结果满足了一个或者多个中止条件中的任一个的情况下,使由满足了该中止条件的协议解析部23实施的、该流所涉及的数据的解析中止。在这里,用于中止由某个协议解析部23实施的解析的一个或者多个中止条件包括以下情形中的至少一个:在流中该协议所涉及的全部检查项目的检查完成了的情形、在流中该协议结束的情形、以及作为流的该协议的解释失败的情形。例如,用于中止由HTTP解析部23.1实施的解析的中止条件包括以下情形中的至少一个:在流中HTTP所涉及的全部的检查项目的检查完成了的情形、在流中HTTP结束了的情形(例如,TCP连接的结束等)、以及作为流的HTTP的解释失败了的情形。另外,例如,用于中止由FTP解析部23.4实施的解析的中止条件包括以下情形中的至少一个:在流中FTP所涉及的全部的检查项目的检查完成了的情形、在流中FTP结束了的情形(例如,基于QUIT指令的结束等)、以及作为流的FTP的解释失败了的情形。进一步地,流管理部22在通过某个协议解析部23来检测到某个流的协议转变成其他协议的情况下,使由负责该其他协议的协议解析部23实施的、该流所涉及的数据的解析重新开始。例如,流管理部22在通过HTTP解析部23.1检测到流利用CONNECT方法转变成其他协议的情况下,使由包括SSL/TLS(HTTPS)解析部23.2、FTP解析部23.4等的其他协议解析部23实施的、流所涉及的数据的解析重新开始。进一步地,流管理部22在通过某个协议解析部23确定为某个流的协议是该协议解析部23所负责的协议的情况下,使由其他协议解析部23实施的、该流所涉及的数据的解析中止。例如,流管理部22在通过HTTP解析部23.1确定为流的协议是HTTP的情况下,使由SIP解析部23.3实施的、该流所涉及的数据的解析中止。关于协议解析部23,例如如HTTP解析部23.1、SIP解析部23.3以及FTP解析部23.4等那样,针对由网络监视装置20设为解析的对象的每个协议而准备,并且并行地解析对象数据。各个协议解析部23不论由其他协议解析部23得到的解析结果如何,每当接收到属于流的数据时,都依照预先设定的协议的特征来解析对象数据,由此推定该流所涉及的协议是否为该协议。例如,HTTP解析部23.1不论SIP解析部23.3、FTP解析部23.4等的解析结果如何,每当接收到属于流的数据时,都依照HTTP的特征来解析对象数据,由此推定该流所涉及的协议是否为HTTP。检查部24在通过协议解析部23判定为流所涉及的协议是该协议解析部23负责的协议的情况下,依照根据该协议确定了的检查项目来检查数据。例如,HTTP检查部24.1在通过HTTP解析部23.1判定为流所涉及的协议是HTTP的情况下,依照针对HTTP确定的检查项目来检查数据。事件处理部25在通过协议解析部23或者检查部24检测到流中的事件的情况下,保存该事件所涉及的数据(证迹)或者将该事件的检测通知给用户。作为在本实施方式中被检测的事件,例如有基于业务中不需要的应用的在网络上的通信、未按照协议的通信、基于恶意软件的通信等。<处理的流>接着,使用流程图,说明通过本实施方式的系统1来执行的处理的流。此外,下面说明的流程图所示的处理的具体内容以及处理顺序是用于实施本公开的一个例子。具体的处理内容以及处理顺序也可以根据本公开的实施方式而适当选择。图5是示出本实施方式的数据处理的流的概要的流程图。每当通过网络监视装置20获取到在网络上流动的数据时,执行本实施方式的数据处理。此外,在本实施方式中,在将数据分割成多个信息包的情况下,每当通过接收多个信息包而获取到规定的单位的数据时执行。但是,本流程图所示的处理也可以每当接收到信息包时执行。在步骤S101以及步骤S102中,获取数据,识别对象数据所涉及的流。通信获取部21获取在网络上流动的数据(步骤S101)。在这里,通信获取部21在将数据分割成多个信息包的情况下,等待被分割的多个信息包的接收,由此获取规定的单位的数据。如果获取到数据,则流管理部22通过参照包括对象数据的信息包的组头等,识别对象数据所涉及的流(步骤S102)。更具体地说,流管理部22如果通过通信获取部21新获取到通信(输入信息包),则进行输入信息包的整形、分类、以及向有效的既有流的关联建立。另外,网络监视装置20按终端单位(发送源/目的地IP地址(MAC地址)单位)、传输层的协议(TCP、UDP、ICMP等)单位来对输入信息包进行分类,并且与既有流关联起来。然后,流管理部22通过参照流表格,获取所识别到的流所涉及的信息。之后,处理前进到步骤S103。在步骤S103中,判定对象数据是否是由各协议解析部23实施的解析的对象。在本实施方式中,针对每个成为解析的对象的协议而准备了多个协议解析部23。流管理部22通过参照流表格,判定对象数据是否是由各协议解析部23实施的解析的对象。具体地说,流管理部22通过判定对象数据所属的流的各协议的解析状态被设定为“解析”还是被设定为“不解析”,来判定是否为解析对象。此外,在对象数据是流中的第2次以后的数据的情况下,根据上次的协议解析/检查的结果而对解析状态设定某个值(参照步骤S105)。在对象数据是流中的最初的数据的情况下,对解析状态设定作为初始值的“解析”。之后,处理前进到步骤S104。在步骤S104中,对所需的协议解析部23委托协议解析。流管理部22对对象数据的流被设定为解析的对象的协议解析部23进行调用,委托对象数据的协议解析。关于由协议解析部23实施的解析处理的详细情况,参照示出协议解析/检查处理的流的概要的流程图(图6),在后面叙述。如果使处理从接受了委托的全部协议解析部23返回,则处理前进到步骤S105。在步骤S105中,更新流表格。如果各协议解析部23的处理结束,则流管理部22依照协议解析/检查处理的结果(后述的步骤S210中的基于各协议解析部23的设定内容),更新流表格的解析状态,等待下次的数据。具体地说,流管理部22针对被设定成针对该流而继续解析的协议解析部23,将关于该流的该协议的解析状态更新为“解析”,针对被设定成针对该流而中止解析的的协议解析部23,将关于该流的该协议的解析状态更新为“不解析”。之后,结束本流程图所示的处理。图6是示出本实施方式的针对每个预先定义的协议执行的协议解析/检查处理的流的概要的流程图。针对每个协议准备好协议解析部23以及检查部24,在数据处理中,每当调用针对各协议的协议解析部23时,执行本实施方式的协议解析/检查处理。即,在本实施方式中,针对HTTP、FTP、以及SSL/TLS等协议的每一个,准备HTTP解析部23.1、FTP解析部23.4以及SSL/TLS解析部23.2等与各协议对应了的协议解析部23。另外,针对每个协议,准备HTTP检查部24.1、FTP检查部24.4以及SSL/TLS检查部24.2等与各协议对应了的检查部24。然后,每当获取到数据时,调用这些协议解析部23.1-23.n以及检查部24.1-24.m并且并行地执行,由此针对一个数据而执行每个协议的协议解析/检查处理。在步骤S201中,进行对象数据是否是该协议的解析(通过,pass)。各协议解析部23参照对象数据,进行数据的通过处理、交换的管理等根据各协议的需要的解析。具体地说,解析是通过与预先定义了的协议的数据模型的比较等来进行的。此时,本实施方式的协议解析部23还考虑在信息包组头中设定了的协议编号等被伪装了的可能性,不只依据协议编号而解析对象数据是否为该协议解析部23负责的协议。各协议解析部23例如将对象数据作为该协议解析部23负责的协议来解析,判定是否包含了为了使对象数据作为该协议的数据而成立所必需的要素,由此解析对象数据是否是该协议。但是,协议的解析中使用的方法不限定于本公开中的例示。例如,也可以使用针对与该协议解析部23所涉及的协议的数据模型的一致点、不一致点进行分数累积并且比较该分数与阈值的方法,判定到目前为止接收到的对象数据的该协议相似度,由此解析对象数据是否是该协议解析部23负责的协议。将作为解析的结果得到的信息(例如,上述分数等)转送到流管理部22,在上述说明了的步骤S105的流表格更新处理中,储存到解析环境。此外,在对象数据是该流所涉及的第2次以后的数据的情况下,即,在以前协议解析部23解析过该流所涉及的数据的情况下,在解析时,除对象数据之外,还参照直到上次为止的解析环境。之后,处理前进到步骤S202。在步骤S202中,判定协议解析的结果。作为在步骤S201中的协议解析的结果,在判定为对象数据的协议是该协议解析部23设为对象的协议的情况下(例如,在HTTP解析部23.1判定为对象数据是HTTP的数据的情况下等),处理前进到步骤S203。另一方面,作为协议解析的结果,在判定为对象数据的协议不是该协议解析部23设为对象的协议的情况下,处理前进到步骤S210。在步骤S203以及步骤S204中,判定对象数据是否是基于针对该协议预先准备了的多个检查规则的检查的对象。各协议解析部23针对通过协议解析被判定为是该协议的对象数据,通过参照流表格的解析环境,确定按照解析的进展能够检查并且检查结果不明确的检查项目。具体地说,协议解析部23针对关于该协议预先设定了的各检查项目,在根据例如对象数据相当于能够检查该流中的检查项目的阶段等的理由而能够检查对象数据(步骤S203)、并且关于该检查项目是未检查或者检查结果为“保留”(步骤S204)的情况下,判定为关于该检查项目而能够检查对象数据。之后,处理前进到步骤S205。在步骤S205中,对各检查部24委托检查。各协议解析部23针对在步骤S203以及步骤S204中确定了的检查项目,对检查部24委托检查。接受了检查的委托的各检查部24基于解析结果对检查项目进行检查,向协议解析部23反馈检查结果。此外,并行地处理由检查部24实施的各检查项目的检查。被反馈的检查结果是“与检查项目相符”、“与检查项目不相符”以及“保留”中的某一个。在这里,“保留”表示在到当前时刻为止接收到的数据中没有得出检查的结论的意思。之后,处理前进到步骤S206。在步骤S206中,根据反馈的结果,针对各协议决定解析的继续/中止。各协议解析部23汇集从委托了检查的各检查部24反馈了的检查结果,决定继续还是中止该协议解析部23所负责的协议的解析以及检查。之后,处理前进到步骤S207。具体地说,例如,关于该协议,在存在未得出结论的检查项目的情况下,即,在存在结论被“保留”的检查项目或者未检查的检查项目的情况下,决定继续该协议的解析以及检查。即,只要检查结果被“保留”了的检查项目有剩余,协议解析部23就继续接下来的数据的解析。但是,在协议解析部23检测到协议解释上的结束的情况下,即使在被“保留”了的检查项目有剩余的情况下,也结束该流的由该协议解析部23实施的解析。另外,例如,关于该协议,在得出了全部的检查项目的结论的情况下,具体地说,在关于全部的检查项目得到“与检查项目相符”或者“与检查项目不相符”这样的反馈、并且没有了“保留”或者未检查的检查项目的情况下,决定中止该协议的解析以及检查。在从步骤S207到步骤S209中,针对由该协议解析部23实施的解析完成了的流,进行事件处理。具体的判定基准与步骤S206中的用于决定解析的继续/中止的基准相同。即,针对对象数据所属的流,在判定为该协议所涉及的检查全部完成了(没有未完成的检查项目)的情况下(步骤S207中的“是”),或者,在判定为该协议的手续(流)等结束了的情况下(步骤S208中的“是”),进行事件处理。各协议解析部23在存在应该根据检查结果来处理的事件的情况下,向事件处理部25委托事件处理(步骤S209)。事件处理部25接受处理的委托,进行证迹的保存、向管理者通知等处理。之后,处理前进到步骤S210。例如,事件处理部25也可以在作为检查的结果判定为终端在进行不正当的活动的情况下,切断基于该终端的通信。此外,在判定为终端在进行不正当的活动的情况下的对处方法不限定于通信的切断。网络监视装置20在判定为终端在进行不正当的活动的情况下,既可以进行警报(警告)的通知,也可以进行对在进行不正当的活动的终端的修复(例如,恶意软件的去除、脆弱性的去除)。在步骤S210中,针对各协议设定解析的继续/中止。协议解析部23依照步骤S206中的决定的结果,期待对于该协议的接下来的数据,设定继续还是中止解析。另外,在步骤S202中,在协议解析部23判定为解析失败了的情况下,协议解析部23判断为与自身的协议不相符,决定中止接下来的数据以后的解析。之后,处理前进到步骤S211。在步骤S211以及步骤S212中,在检测到协议的转变或者确定的情况下,针对其他协议解析部23进行重新开始/中止委托。如上所述,在针对某个流而某个协议解析部23中止了解析的情况下,下次之后的属于该流的数据不作为该协议解析部23的解析对象。因此,在单一的流中,在发生了从解析继续中的协议到其他协议的转变的情况下,在本实施方式中,从检测到协议的转变的协议解析部23对其他协议解析部23委托重新开始解析。另一方面,在格式类似的协议所涉及的多个协议解析部23重复地继续进行解析的情况下,即使在确信某个协议解析部23是该流的协议自身负责的协议的情况下,也有可能其他协议解析部23继续解析。因此,在本实施方式中,能够实现准确度更高的识别的协议解析部23针对其他协议解析部23委托中止该其他协议解析部23的解析。之后,结束本流程图所示的处理,处理回到数据处理的步骤S105(参照图5)。图7是示出本实施方式的解析重新开始/中止处理的流的流程图。以各协议解析部23接受了从其他协议解析部23发出的解析重新开始/中止的委托(参照步骤S212)的情形作为契机,针对每个协议解析部23执行本流程图所示的处理。接受了解析重新开始/中止的委托的协议解析部23判定是否与该委托对应(步骤S301)。作为判定的结果,在与解析重新开始的委托对应的情况下,决定作为该协议解析部23期待接下来的数据而重新开始解析(步骤S302)。另外,在与解析中止的委托对应的情况下,决定中止作为该协议解析部23的解析(步骤S302)。之后,结束本流程图所示的处理,处理回到数据处理的步骤S105(参照图5)。在步骤S302中,在进行了解析的重新开始的决定的情况下,流管理部22将流表格中的该流的该协议所涉及的解析状态更新为“解析”(步骤S105)。另外,在步骤S302中,在进行了解析的中止的决定的情况下,流管理部22将流表格中的该流的该协议所涉及的解析状态更新为“不解析”(步骤S105)。<实施例1>在这里,说明在通过本实施方式的网络监视装置20进行HTTP通信的识别与检查的情况下的实施例。首先,如果节点90与服务器进行TCP3WAY握手而开始通信,则流管理部22识别这一情况,在流表格中登记节点90对服务器的通信流。然后,如果网络监视装置20获取到节点90发出了的GET请求,则流管理部22识别流,参照流表格。在流表格中,针对协议解析部23的每个协议设定好了数据解析标记,初始值为“解析”。因此,流管理部22参照解析数据的各协议解析部23的接收数据与解析环境开始解析。HTTP解析部23.1例如将数据开头字符串GET解释为GET方法,将空格后的字符串解释为URI,将之后的空格到换行解释为HTTP版本字符串。该解析结果被储存在解析环境中。在存在参照方法、URI、版本的HTTP的检查项目的情况下,如果未确定检查结果,则向HTTP检查部24.1委托检查,并进行检查。HTTP检查部24.1参照解析环境,根据检查项目来进行检查。将检查结果储存到解析环境中,但在协议解析的进展不足够而得不出结论的情况下,将检查结果设为“保留”,等待下次之后的数据。HTTP解析部23.1在HTTP检查部24.1的检查结果中存在“保留”或者存在未检查的项目的情况下,为了进行检查而需要下次之后的数据,所以继续解析。另一方面,例如SMB解析部23.5由于没有所期望的SMB幻码(magic)且不是能够解释的数据,所以作为解析失败而中止解析。<实施例2>接着,说明在通过本实施方式的网络监视装置20执行针对“检查项目X:在通信是HTTP/1.1通信的情况下是否设定了Host组头”的检查的情况下的实施例。在所获取到的第一个数据是“GET/HTTP/1.1”,第二个数据是“Host:aaa.bbb.ccc”的情况下,HTTP解析部23.1解析第一个数据,解析成功直到方法、URI、版本为止,并储存在解析环境中。HTTP检查部24.1针对检查项目X,参照该解析环境而进行检查,但在该时刻下没有Host组头的信息,无法得出检查的结论。因此,检查结果为“保留”,等待下次的数据。由于检查结果是“保留”,所以HTTP解析部23.1将流表格更新为“解析”。接着,通过HTTP解析部23.1来解析第二个数据,可知除方法、URI、版本之外,还存在Host组头,将该信息储存到解析环境中。HTTP检查部24.1针对检查项目X,参照该解析环境,确认是HTTP/1.1通信并且设定了Host组头,由此将该检查结果判定为“与检查项目X相符”。另一方面,如果在所获取到的第一个数据是“GET/HTTP/1.0”的情况下,HTTP解析部23.1解析第一个数据,解析成功直到方法、URI、版本为止,但由于关于检查项目X,HTTP的版本是1.0,所以HTTP检查部24.1在第一个数据的时刻下判定为“与检查项目X不相符”。然后,如果检查项目仅为检查项目X,则HTTP解析部23.1无需继续解析,所以中止以后的解析。<实施例3>接着,说明在通过本实施方式的网络监视装置20在节点90发送使用HTTP的CONNECT方法的请求后,从代理服务器接收到“200ConnectionEstablished响应”,并获取到开始利用隧道的HTTPS通信的通信流的数据的情况下的实施例。HTTP解析部23.1能够使用流最初的获取数据来解释CONNECT方法,所以解析继续。关于SSL/TLS解析部23.2等其他协议解析部23,由于CONNECT请求的格式依照自身的协议无法解释,所以解析失败而中止以后的解析。接着,如果通过网络监视装置20接收到“200响应”,则上次的解析成功并且处于继续解析中的HTTP解析部23.1解析该数据。在这里,由于“200响应”表示CONNECT方法的成功,所以可知,之后,代理服务器成为隧道,能够实现基于任意的协议的通信。因此,HTTP解析部23.1针对中止了解析的其他协议解析部23,进行解析重新开始的委托。接受了重新开始的委托的各协议解析部23针对下次之后的数据重新开始解析。在这里,在隧道通信是HTTPS的情况下,接下来的数据是“ClientHello”。重新开始了解析的SSL/TLS解析部23.2对于该数据解析成功,继续以后的解析。另一方面,由于HTTP解析部23.1、其他协议解析部23解析失败,所以中止以后的解析。<变形>在上述实施方式中,说明了网络监视装置20被连接于开关或者路由器、与位于其上一级的其他开关或者路由器之间,由此获取通过节点90发送接收的信息包、帧等,并且在针对不切断也行的信息包进行转送的联机模式下进行动作的例子(参照图1)。但是,上述实施方式所示的网络结构是用于实施本公开的一个例子,也可以在实施时采用其他网络结构。例如,网络监视装置20也可以通过与开关或者路由器(在图1所示的例子中,为路由器10)的监控端口(镜像端口)连接,获取通过节点90发送接收的信息包、帧等(参照图8)。在这种情况下,网络监视装置20在不转送所获取到的信息包的被动模式下进行动作。另外,例如,网络监视装置20在不与监控端口(镜像端口)连接而仅与网络段2连接了的情况下,通过还包括不是发给自身的MAC地址的帧地全部获取流过网络段2的帧,也能够获取通过节点90发送接收的信息包、帧等。在这种情况下,网络监视装置20也在被动模式下进行动作。另外,例如,网络监视装置20也可以包括在路由器或者开关中。<效果>根据本实施方式的信息处理装置、方法以及程序,能够实时地进行准确性更高的协议判定。进一步地,根据本实施方式,无需累积直到能够唯一地识别协议为止的接收数据,所以能够以少的数据累积量进行准确性高的协议判定。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1