CN103294947A - 程序解析系统及方法 - Google Patents

程序解析系统及方法 Download PDF

Info

Publication number
CN103294947A
CN103294947A CN2013100572275A CN201310057227A CN103294947A CN 103294947 A CN103294947 A CN 103294947A CN 2013100572275 A CN2013100572275 A CN 2013100572275A CN 201310057227 A CN201310057227 A CN 201310057227A CN 103294947 A CN103294947 A CN 103294947A
Authority
CN
China
Prior art keywords
corpse
program
laboratory examination
chemical testing
speed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013100572275A
Other languages
English (en)
Inventor
川口信隆
锻忠司
山口演己
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN103294947A publication Critical patent/CN103294947A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)
  • Medical Treatment And Welfare Office Work (AREA)

Abstract

本发明涉及程序解析系统及方法。根据本发明实现了对在起动后一定时间以后或仅在特定的日期时间进行活动的程序的高效的解析。边调整程序执行环境的时间经过速度边进行程序的解析的程序解析系统,设定执行环境的时间经过速度及程序执行开始时间、执行结束时间等解析条件,根据解析管理部的决定调整时间经过速度及程序执行开始时间,执行程序直至执行结束时间,监视执行环境,获取程序的活动记录,解析活动记录,明了程序的举动。另外,基于解析结果再设定解析条件,进行再解析,且监视检体与外部终端的通信,以在通信中不产生超时的方式变更通过解析管理部设定的时间经过速度。

Description

程序解析系统及方法
技术区域
本发明涉及解析计算机程序的举动的程序解析系统。
背景技术
作为不使用源代码(source code)解析计算机程序的举动的方法,有静态解析和动态解析这两种。静态解析通过分析记载于程序的文件的命令编码来调查举动。另一方面,动态解析中,在计算机上执行程序且观测此时的举动,由此调查举动。有的程序为了阻止静态解析而实施了各种防御对策。特别是现今的恶意软件(malware:计算机病毒或间谍软件等非法程序)为了阻止静态解析有时使文件构造难读或加密化,因此产生了静态解析的调查中文件构造的解读和解码花费时间、需要熟练的技术员这样的问题。另一方面,相比静态解析,动态解析观测实际的举动从而调查举动,因此,不容易受到文件难读化或加密化带来的影响,能够较短时间完成解析。
因此,如专利文献1、专利文献2、非专利文献1等所示,将动态解析的处理自动化,实现高效的解析的系统的研究开发正在进行中。这些系统中,在执行环境下执行恶意软件,获取并解析一定时间内观测到的举动(例如恶意软件的文件访问(file access)和网络通信)。
专利文献1:日本特开2009-181335号公报
专利文献2:日本特开2009-37545号公报
非专利文献1:
IEEE International Conference of Communications2008Proceedings,“Malware Behavior Analysis in Isolated Miniature Network for RevealingMalware’s Network Activity”
但是,有的程序在起动后经过一定时间之后或仅在特定的日期时间进行实质活动。另外,如遇到Y2K问题那样,存在当超过特定的日期时间时引起误动作的情况。通过上述的系统解析这种程序时,存在解析耗费大量时间或解析失败的问题。非专利文献1中,作为解析对象的恶意软件停止一定时间活动所以通过使执行的函数无效化,实现了解析的高效化。但是,该方法对执行函数后需要验证时间经过的恶意软件或仅在特定的日期时间进行活动的恶意软件没有效果。
发明内容
本发明的目的在于,提供一种对在起动后一定时间以后或仅在特定的日期时间进行活动的程序进行高效解析的系统及方法。
本发明的程序解析系统中,操作程序动作的执行环境的时刻管理功能,不对与外部的通信活动带来不良影响,使执行环境内的时间经过速度比实际时间更高速或低速地变化,记录活动,由此边调整程序执行环境的时间经过速度边进行程序的解析。
程序解析系统的主要的功能部为解析管理部、检体执行部、活动记录部、活动解析部、通信监视部这五部分。在此,“检体“是指作为解析对象的恶意软件。解析管理部设定执行环境下的时间经过速度、以及程序执行开始时间和执行结束时间等解析条件。检体执行部根据解析管理部设定的解析条件调整时间经过速度以及程序执行开始时间,执行程序直至执行结束时间。活动记录部监视执行环境,获取程序的活动记录。活动解析部基于活动记录解析程序的举动。另外,解析管理部基于解析结果再设定解析条件,进行再解析。通信监视部监视检体与外部终端的通信,以在通信中不产生超时的方式变更由解析管理部设定的时间经过速度。
根据本发明,实现了针对起动后一定时间以后或仅特定的日期时间进行活动的程序的高效的解析。
附图说明
图1是表示用于实施本发明的系统的整体结构的图;
图2是表示系统管理装置的物理结构的图;
图3是表示系统管理装置的逻辑结构的图;
图4是表示检体执行装置的物理结构的图;
图5是表示检体执行装置的逻辑结构的图;
图6是表示计时器装置的物理结构的图;
图7是表示活动解析装置的物理结构的图;
图8是表示活动解析装置的逻辑结构的图;
图9是表示通信监视装置的物理结构的图;
图10是表示通信监视装置的逻辑结构的图;
图11是表示解析脚本DB的记录例的图;
图12是表示活动记录DB的记录例的图;
图13是表示再解析规则DB的记录例的图;
图14是表示解析结果DB的记录例的图;
图15是表示记录规则DB的记录例的图;
图16是表示解析规则DB的记录例的图;
图17是表示时刻经过速度DB的记录例的图;
图18是表示管理席管理处理的流程的图;
图19是表示检体执行处理的流程的图;
图20是表示时间经过速度变更处理的流程的图;
图21是表示计时器装置和时钟部的关系的图;
图22是表示时刻经过处理的调整处理的流程的图;
图23是表示活动记录处理的流程的图;
图24是表示活动解析处理的流程的图;
图25是表示通信管理处理的流程的图;
图26A是表示发送器的脉冲和向CPU的时钟信号的对应关系的图;
图26B是表示发送器的脉冲和向CPU的时钟信号的对应关系的图;
图27是表示发送器的脉冲和向CPU的时钟信号的对应关系的各种设定模式的图。
符号说明
10:检体;20:解析脚本;30:时间经过速度;40:解析开始时刻;50:解析结束时刻;60:活动记录;701解析结果;80:时间经过速度变更命令;90:镜像数据包;100:系统管理装置;200:检体执行装置;300:活动解析装置;400:通信监视装置;500、600、900:通信网络;700:数据包镜像装置;800:检体通信目的地终端
具体实施方式
下面,基于附图所示的实施例说明本发明的实施方式。本实施例中对四台装置经由网络协作解析恶意软件的系统进行说明,该恶意软件从起动到活动的时间或活动时刻不明。说明了本实施例后,描述变更例。
(系统结构)
图1是表示用于实施本发明的系统的整体结构的图。作为构成本系统的要素,有系统管理装置100、检体执行装置200、活动解析装置300、通信监视装置400、通信网络500、通信网络600、数据包镜像装置700、检体通信目的地终端800、通信网络900。经由通信网络500连接的装置100、200、300及400协作进行程序的解析。
系统管理置100由一个以上的公知的个人计算机或工作站等计算机构成。系统管理装置100管理在本系统中进行的恶意软件解析处理的进行。另外,决定成为解析对象的检体(恶意软件)10和解析脚本(scenario)20,对检体执行装置200进行指令,其中,解析脚本20由指定在执行环境下设定成开始解析时的时刻的解析开始时刻40、指定结束解析的时刻的解析结束时刻50、及时间经过速度30构成。系统管理装置100的结构的详情及与其它装置的通信的详情后述。
检体执行装置200由一个以上的公知的个人计算机或工作站等计算机构成。检体执行装置200根据从系统管理装置100发送的指令在执行环境下执行检体10。另外,在进行检体10的执行时,将文件访问及网络通信等检体的活动信息作为活动记录60进行记录。检体执行装置200的结构的详情及与其它装置的通信的详情后述。
活动解析装置300由一个以上的公知的个人计算机或工作站等计算机构成。活动解析装置300解析由检体执行装置200发送的活动记录60中包含的检体的活动信息,生成表示检体进行哪一活动的解析结果70。系统管理装置100参照解析结果70决定再解析的有无或过程。活动解析装置300的结构的详情及与其它装置的通信的详情后述。
通信监视装置400由一个以上的公知的个人计算机或工作站等计算机构成。通信监视装置400利用经由数据包镜像装置700及通信网络900获取的镜像数据包90,监视经由通信网络600进行的检体执行装置200与检体通信目的地终端800之间的TCP(Transmission Control Protoco1:传输控制协议)通信。而且,以通信不受时间经过速度的高速化的不良影响的方式,根据通信状态控制时间经过速度。活动解析装置400的结构的详情及与其它装置的通信的详情后述。
通信网络500也可以是WAN(WorldArea Network:广域网)或LAN(LocalArea Network:局域网)、便携电话、PHS等公共线路网。系统管理装置100、检体执行装置200、活动解析装置300、及通信监视装置400间的通信经由通信网络500进行。
通信网络600也可以是WAN或LAN、便携电话、PHS等公共线路网。检体执行装置200和检体通信目的地终端800的通信经由通信网络600进行。
通信网络900也可以是WAN或LAN、便携电话、PHS等公共线路网。数据包镜像装置700和检体通信目的地终端800的通信经由通信网络600进行。
数据包镜像装置700将检体执行装置200和检体通信目的地终端800经由通信网络600进行的TCP通信中含有的所有的TCP数据包作为镜像数据包90转发到通信监视装置400。
检体通信目的地终端800是与在检体执行装置200内执行的检体进行通信的终端的总称。
图1的线路1表示系统管理装置100和检体执行装置200之间的信息的逻辑流。同样,线路2表示检体执行装置200和活动解析装置300之间的信息的逻辑流,线路3表示活动解析装置300和系统管理装置100之间的信息的逻辑流。线路1、线路2、线路3均使用通信网络500作为物理的信息传递手段。另外,物理的信息的传递不需要在各装置间直接进行,也可以经由外部存储装置等进行。
经由线路1将检体10和解析脚本20这两种信息从系统管理装置100传递到检体执行装置200。解析脚本20中含有检体执行装置200内的时间经过速度30、解析开始时刻40、解析结束时刻50。接收到解析脚本20的检体执行装置200将执行环境的时刻设定为解析开始时刻40,将解析环境的时刻经过速度设定为时间经过速度30。然后,进行解析直至执行环境的时刻达到解析结束时刻50为止。系统管理装置100同时发送一个以上的解析脚本20。
经由线路2将活动记录60从检体执行装置200传递到活动解析装置300。同样,经由线路3将解析结果70从活动解析装置300传递到系统管理装置100。
另外,线路4表示检体执行装置200和通信监视装置400之间的信息的逻辑流。同样,线路5表示数据包镜像装置700和通信监视装置400之间的信息的逻辑流。
经由线路4将时间经过速度变更命令80从通信监视装置400传递到检体执行装置200。同样,经由线路5将镜像数据包90从数据包镜像装置700传递到通信监视装置400。
另外,图1中,系统管理装置100、检体执行装置200、活动解析装置300、及通信监视装置400分别由不同的处理装置构成,但由一个处理装置来实现这些装置也可以。还可以是如下结构:检体执行装置200、活动解析装置300、及通信监视装置400分别为多台,系统管理装置100管理他们的结构。还可以是如下结构:由一个处理装置构成检体执行装置200、活动解析装置300及通信监视装置400,系统管理装置100管理多台处理装置的结构。
图2是表示系统管理装置100的物理结构的图。系统管理装置100由装置主体110和输入输出装置180构成。
装置主体110具备CPU120、存储器130、接口140、外部存储装置150、总线160、及检体保存装置170。
CPU120是用于执行处理的运算装置。存储器130是包含将CPU120执行的命令集记述为程序的数据的存储介质。
存储器130中含有系统管理程序131。而且,通过由CPU120执行该系统管理程序131,进行检体解析的管理。具体的管理过程后述。
接口140是用于将系统管理装置100与通信网络500连接的通信装置。LAN卡等通信设备与其对应。接口140在图中被记述为IF。
外部存储装置150由HDD(Hard Disk Drive:硬盘驱动器)等存储介质构成,存储解析脚本DB151、活动记录DB152、解析结果DB153、及再解析规则DB154。这些DB的具体的内容后述。
总线160将CPU120、存储器130、IF140、外部存储装置150、检体保存装置170、及输入输出装置180连接。
检体保存装置170由HDD等存储介质构成,保存解析中的检体10。
输入输出装置180是用于对系统管理装置100进行管理者的数据输入、及系统管理装置100内的数据输出的装置。作为输入输出装置的一例有键盘及鼠标、显示器。具体的输入输出内容后述。
图3是表示系统管理装置100的功能结构、及与物理的各装置之间的关系的图。系统管理装置100的装置主体110中包含的CPU120构成为包含解析管理部121。解析管理部121的功能通过CPU120执行系统管理程序131而具体化。
解析管理部121管理检体10的解析状况,并且向检体执行装置200发送解析脚本20,指示检体执行方法。另外,从活动解析装置300接收解析结果70,判断再解析的有无及方法。详细后述。
图4是表示检体执行装置200的物理结构的图。检体执行装置200由装置主体210和输入输出装置290构成。
装置主体210具备CPU220、存储器230、接口240、接口241、外部存储装置250、总线260、计时器装置270、及映像保存装置280。
CPU220是用于执行处理的运算装置。存储器230是包含将CPU220执行的命令集记述为程序的数据的存储介质。
存储器230中含有检体执行程序231、活动记录程序232、时钟程序233、及时间经过速度变更程序234。检体执行程序231由CPU220执行,由此边调整时间经过速度30边执行检体10。活动记录程序232由CPU220执行,由此获取检体10的活动记录60。另外,时钟程序233由CPU220执行,由此对检体10、检体执行程序231、及活动记录程序232提供检体执行装置200的时刻信息。另外,时间经过程序234由CPU220执行,由此变更时间经过速度30。各程序的具体的管理过程后述。
接口240是用于将检体执行装置200与通信网络500连接的通信装置。LAN卡等通信设备与其对应。接口240在图中被记述为IF。同样,接口241是用于将检体执行装置200与通信网络600连接的通信装置。
外部存储装置250由HDD等存储介质构成,存储记录规则DB251。记录规则DB中记述有表示活动记录程序232是否记录检体10的哪一种活动的信息。DB的具体的内容后述。
总线260将CPU220、存储器230、IF240、外部存储装置250、计时器装置270、映像保存装置280、及输入输出装置290连接。
计时器装置270是含有以一定周期振动的元件的硬件,基于观测的频率测定时间经过。而且,每经过一定时间就对CPU220发送信号。CPU220通过接收信号,可以了解时间经过。计时器装置270的详情后述。
映像(image)保存装置280由HDD等存储介质构成,存储执行环境映像281。执行环境映像281是包含一般的操作系统的结构信息的文件,在CPU220上执行检体10时,提供用于执行检体10的软件环境。另外,在映像保存装置280中暂时存储与检体10执行中生成或变更的文件或登记(registry)有关的信息。
输入输出装置290是用于对检体执行装置200进行管理者的数据输入、及检体执行装置200内的数据输出的装置。作为输入输出装置的一例有键盘及鼠标、显示器。具体的输入输出内容后述。
图5是表示检体执行装置200的功能结构、及与物理的各装置之间的关系的图。检体执行装置200的装置主体210中包含的CPU220构成为包含检体执行部221、活动记录部222、时钟部223、时间经过速度变更部224。检体执行部221的功能通过CPU220执行检体执行程序231而具体化。活动记录部222的功能通过CPU220执行活动记录程序232而具体化。时钟部223的功能通过CPU220执行时钟程序233而具体化。时间经过速度变更部224的功能通过CPU220执行时间经过速度变更程序234而具体化。
检体执行部221按照解析脚本20执行从系统管理装置100接收的检体10。此时,对计时器装置270进行访问,进行时间经过速度30的调整。详情后述。
活动记录部222记录由检体执行部221执行的检体10的活动,将其作为活动记录60发送到活动解析装置300。详情后述。
时钟部223经由总线260接收来自计时器装置270的信号,决定检体执行装置200的当前时刻。决定当前时刻的过程的详情后述。另外,检体10通过参照时钟装置223,掌握当前时刻。例如,检体10在被编程为在2010年12月31日0时0分0秒开始特定活动的情况下,在时钟部223的时刻成为2010年12月31日0时0分0秒时,开始活动。
时间经过速度变更部224基于从通信监视装置400接收的时间经过速度变更命令80变更时间经过速度30。详情后述。
图6表示计时器装置270的物理结构。计时器装置270由振荡器271、计数寄存器272、计数最大值寄存器273、及总线274构成。
振荡器271是具有水晶等以一定周期振动(产生脉冲)的特性的元件。振荡器271每次振动时经由总线274对计数寄存器272给予信号。例如,在振动周期为1M(=1000000)Hz的振荡器的情况下,以1微秒一次的比例进行振动,对计数寄存器272给予信号。
计数寄存器272为可存储一定位数的数值的元件。计数寄存器272在从振荡器271接收到信号时,对所存储的值加上+1。计数寄存器272每次在对该值加上+1时,经由总线274与存储于计数最大寄存器273的值进行比较。而且,在计数寄存器272的值与计数最大值寄存器273内的值相同的情况下,经由总线260向CPU220发送信号(时钟信号)。在发送了时钟信号后,计数寄存器272的值被重置为0。
计数最大值寄存器273是存储特定的值的元件,如上述,与计数寄存器272内的值进行比较。
作为例子,在振荡器271的振动周期为1MHz且计数最大值寄存器273的值为10000的情况下,1秒为100(=1M/10000)次,计数寄存器272的值与计数最大寄存器273的值相等,将时钟信号发送到CPU220。
另外,作为计时器装置270的结构,在振荡器271每次振动时,可以将计数寄存器272的值不加上+1而加上特定的值。另外,在加上比+1大的值的情况下,相加的值越大,向CPU220发送时钟信号的期间越短。例如,在振荡器271的振动周期为1MHz且计数最大值寄存器273的值为10000的情况下,如果计数寄存器272的加法值为+2,则1秒产生50次的时钟信号。
如上所述,图26A及图26B表示图示发送器的脉冲和向CPU的时钟的对应关系的图。图26A及26B中,图示将计数器加法值设为α,将计数器最大值设为β,改变α和β的组合。图26A表示将计数器加法值α固定为α=1且使计数器最大值β可变时的对应关系。图26B表示将计数器最大值β固定为β=4且使计数器加法值α可变时的对应关系。图26所示的斜率不同的几个虚线是图中的阶梯函数的包络线(envelope),表示脉冲(Tp)和时钟(Tc)的对应关系Tc=(α/β)Tp。其中,α≦β,由α和β之比决定对应关系,通过改变该比率,可实现时钟的“高速化”或“低速化”。因此,图26A的β=2和图26B的α=2的对应关系相同(均为增加2脉冲时增加1时钟)。
另外,通过减去计数寄存器272的值,在产生时钟时,每次计数寄存器272的值成为0时,发送信号。而且,在发送信号后,计数寄存器272的值被重置为计数最大值寄存器273的值。另外,在使处理的进行停止时,使计时器装置270的计数处理停止。
如上所述,图27表示图示发送器的脉冲和向CPU的时钟的对应关系的各种设定模式的图。即,指定如下各种模式:程序的通常动作时的对应关系即“通常”、使时钟比发送器的脉冲早进行的“高速化”、使计时器动作停止而停止处理的进行的“停止”、将时钟的值变更为预定的值而不连续地变更处理的进行的“设定变更”、及使时钟比发送器的脉冲迟进行的“低速化”这样的各种设定模式。
总线260将振荡器271、计数寄存器272、计数最大值寄存器273连接。
图7是表示活动解析装置300的物理结构的图。活动解析装置300由装置主体310和输入输出装置370构成。
装置主体310具备CPU320、存储器330、接口340、外部存储装置350、及总线360。
CPU320是用于执行处理的运算装置。存储器330是包含将由CPU320执行的命令集记述为程序的数据的存储介质。
存储器330中含有活动解析程序331。而且,该活动解析程序331由CPU320执行,由此进行活动记录60的解析。具体的解析过程后述。
接口340是用于将活动解析装置300与通信网络500连接的通信装置。LAN卡等通信设备与其对应。接口340在图中被记述为IF。
外部存储装置350由HDD等存储介质构成,存储解析规则DB351。这些DB的具体的内容后述。
总线360将CPU320、存储器330、IF340、外部存储装置350、及输入输出装置370连接。
输入输出装置370是用于对活动解析装置300进行管理者的数据输入、及系统管理装置100内的数据输出的装置。作为输入输出装置的一例,有键盘及鼠标、显示器。具体的输入输出内容后述。
图8是表示系统管理装置300的功能结构、及与物理的各装置之间的关系的图。系统管理装置300的装置主体310中构成为包含CPU320包含活动解析部321。活动解析部321的功能通过CPU320执行活动解析程序331而具体化。
活动解析部321解析检体执行装置200生成的活动记录60的内容,输出检体10的解析结果70。详情后述。
图9是表示通信监视装置400的物理结构的图。通信监视装置400由装置主体410和输入输出装置490构成。
装置主体410具备CPU420、存储器430、接口440、接口441、外部存储装置450、总线460。
CPU420是用于执行处理的运算装置。存储器430是包含将由CPU420执行的命令集记述为程序的数据的存储介质。
存储器430中包含通信监视程序431。通过由CPU420执行通信监视程序431,来运算检体执行装置200和检体通信目的地终端7800的TCP通信不超时的时间经过速度,将运算的结果输入检体执行装置200。通信监视程序441的具体的过程后述。
接口440是用于将通信监视装置400与通信网络500连接的通信装置。LAN卡等通信设备与其对应。接口240在图中被记述为IF。同样,接口241是用于将通信监视装置400与通信网络900连接的通信装置。
外部存储装置450由HDD等存储介质构成,存储时间经过速度DB451。在时间经过速度DB451中记录有与检体10的TCP通信相关的信息。DB的具体的内容后述。
总线460将CPU420、存储器430、IF440、外部存储装置450、及输入输出装置490连接。
输入输出装置490是用于对通信监视装置400进行管理者的数据输入、及通信监视装置400内的数据的输出装置。作为输入输出装置的一例,有键盘或鼠标、显示器。具体的输入输出内容后述。
图10是表示通信监视装置400的功能结构、及与物理的各装置之间的关系的图。通信监视装置400的装置主体410所包含的CPU420构成为包含通信监视部421。通信监视部421的功能通过由CPU420执行通信监视程序431而具体化。
通信监视部421分析检体10和检体通信目的地终端800间的TCP通信中包含的数据包,计算TCP通信中不产生超时的时间经过速度,将算出的结果作为时间经过速度变更命令70输入检体执行装置200。详情后述。
(处理的说明)
图11之后表示本系统中包含的DB的构成例及各功能部的流程图。
图11之后的构成例假设以以下的过程进行检体10的解析。
2011/9/15 17:00:00,解析管理装置100开始检体10的解析。解析中,指示检体执行装置200以实际时间的72倍速的时间经过速度执行检体A(对其的处理),进行从2012/1/1 00:00:00到2012/1/2 23:59:59计48小时期间的处理。即,以40分(48/72=2/3小时)执行48小时期间的处理。执行结束后,活动解析装置300解析活动记录,输出解析结果。参照解析结果,由于有需要再解析的期间,所以解析管理装置100进行检体10的再解析。再解析中,指示检体执行装置200在从2012/1/1 11;55:00到2012/1/1 12:00:05的期间、和从2012/1/2 11:55:00到2012/1/2 12:00:05的期间,以与上次相同的时间经过速度(72倍速)执行检体A。再解析成功,判断为不需要进行第三次的解析,因此,对检体A的解析结束。
(各种表)
图11是表示解析脚本DB151的结构的图。解析脚本DB151内的各记录存储对某检体的检体解析的方法及解析状况。各记录在系统管理装置100决定解析脚本(20)的时刻被保存于解析脚本DB151内。
解析管理ID501用于唯一地识别解析脚本DB151内的各记录。因此,各解析管理ID501的值在解析脚本DB151内是唯一的。
记录生成时刻1002表示生成各记录的时刻。对记录生成时刻1002应用系统管理装置100内的时刻。
检体ID503是用于唯一地识别在本系统解析的各检体的编号。在对不同的记录设定了同一检体ID1003时,表示对同一检体以不同的条件进行多次解析。
解析开始时刻1004(40)以检体执行装置200内的时刻表示检体执行装置200开始检体10的执行的时刻。因此,有时输入与记录生成时刻1002较大不同的值。解析结束时刻1005(50)以检体执行装置200内的时刻表示检体执行装置200结束检体10的执行的时刻。因此,有时输入与记录生成时刻1002较大不同的值。
时间经过速度1006(30)将进行检体10的执行的检体执行装置200内的计时器装置270管理的时间的经过速度表现为通常的时间经过速度的倍率。时间经过速度1006取正数。例如,在时间经过速度1006=10倍速的情况下,在以通常的时间流动经过1秒的期间,在计时器装置270管理的时间内经过10秒。同样,在时间经过速度1006=0.1倍速的情况下,在以通常的时间的流动经过1秒的期间,在计时器装置270管理的时间内经过0.1秒。此外,虽然输入脚本,但在未执行检体的情况下,对解析状况1007设定“解析前”。
本实施例中,未指定检体执行速度1006的下限值及上限值、及间隔尺寸(0.1刻度等)。但是,也可以通过检体执行装置200的计时器装置270的性能来决定下限值或上限值及间隔尺寸。
解析状况1007表示该解析脚本的执行状况。作为解析状况1007可取的值,为“结束”或“解析中”。“结束”的情况下,该解析脚本的执行及解析结束。“解析中”的情况下,该解析脚本为检体在执行中或执行结果在解析中。
图11表示三种解析脚本的记录的例。就解析管理ID=1的记录而言,记录生成时间为2011/9/15 17:00,作为解析对象的检体为检体A。系统管理装置100指示检体执行装置200在横跨从2012/1/1 0:00:00到2012/1/2 23:59:59这48小时执行检体A。另外,作为时间经过速度1006,指定了72倍速。因此,实际时间的检体执行时间为40分钟(=48/72*60)。解析状况1007为“结束”。
就解析管理ID=2的记录而言,记录生成时间为2011/9/15 17:50,作为解析对象的检体与解析ID=1的记录相同,为检体A。系统管理装置100指示检体执行装置200在横跨从2012/1/1 11;55:00到2011/1/1 12:05:00这10分钟执行检体A。另外,作为时间经过速度1006,指定72倍速(与=实际时间的经过速度相同)。因此,实际时间的检体执行时间为10分钟。解析状况1007为“结束”。
就解析管理ID=3的记录而言,记录制作时间为2011/9/15 17:50,作为解析对象的检体与解析ID=1的记录相同,为检体A。系统管理装置100指示检体执行装置200在横跨从2012/1/2 11:55:00到2011/1/2 12:05:00这10分钟执行检体A。另外,作为时间经过速度1006,指定72倍速(与=实际时间的经过速度相同)。因此,实际时间的检体执行时间为10分钟。解析状况507为“执行中”。
图12是表示活动记录DB152的结构的图。在活动记录DB152中记录有由检体执行装置200执行检体10时活动记录部222获取的检体10的活动记录60。具体而言,对于是否记录检体10的哪一活动记录,通过后述的记录规则DB251来指定。
活动记录ID1101用于唯一地识别活动记录DB152内的各记录。因此,活动记录ID1101的值在活动记录DB152内是唯一的。解析管理ID1102由活动记录DB152内的各记录所对应的解析脚本DB151内的记录的解析管理ID1001指定。即,该记录是在执行中记录了由解析管理ID1102指定的解析脚本的检体10的活动记录。
活动记录时刻1103将记录了各记录的时刻作为检体执行装置200内的时刻进行记录。因此,有时与实际时间较大不同。
活动种类1104表示记录哪一种类的活动。图11中,作为例子示出了“IP(Internet Protocol)数据包”和“桌面图像”。“IP数据包”是指检体10收发的IP数据包。“桌面图像”是指在输入输出装置290表示的描绘包含检体10的执行环境的图像。作为除此之外的活动种类1104的变更例,有检体10调出的“函数”、检体10在执行中生成的“生成文件”及“生成登记”。
活动数据1105是指实际记录的数据。活动种类1104为“IP数据包”的情况下,对应的活动数据1105成为IP数据包的二进制数据。在活动种类1104为“桌面图像”的情况下,对应的活动数据1105为桌面图像的图像数据。
图12中表示六种活动记录DB152的记录的例子。活动记录ID1101=1的记录是在执行解析管理ID1102=1时获取的活动记录。活动记录时刻1103为2011/01/01 12:00:00,活动种类1104为“IP数据包”、活动数据1105为“AAAAA...”。
活动记录ID1101=2的记录与上述相同,是在解析管理ID1102=1的执行时获取的活动记录。活动记录时刻1103是2011/01/01 18:00:00,活动种类1104是“桌面图像”,活动数据1105是“BBBBB...”。
活动记录ID1101=3的记录与上述相同,是在解析管理ID1102=1的执行时获取的活动记录。活动记录时刻1103为2011/01/02 12:00:00,活动种类1104为“IP数据包”,活动数据1105为“CCCCC...”
活动记录ID1101=4的记录与上述相同,是在解析管理ID1102=1的执行时获取的活动记录。活动记录时刻1103为2011/01/02 18:00:00,活动种类1104为“桌面图像“,活动数据1105为”DDDDD...”。
活动记录ID1101=5的记录为在解析管理ID1102=2的执行时获取的活动记录。活动记录时刻1103为2011/01/01 12:00:00,活动种类1104为“IP数据包”,活动数据1105为“EEEEE...”。
活动记录ID1101=6的记录为在解析管理ID1102=3的执行时获取的活动记录。活动记录时刻1103为2011/01/02 12:00:00,活动种类1104为“IP数据包”,活动数据1105为“FFFFF...”。
图13是表示解析结果DB153的结构的图。解析结果DB153保存活动解析装置300生成的解析结果70。各记录表示明确了活动解析装置300的解析结果的检体10进行的活动的内容、及活动时间。
解析基于活动记录DB152进行,活动记录DB152内的记录和解析结果DB153内的记录不需要一对一地对应。例如,如果有从一个活动记录记录生成多个解析结果记录的情况的话,也有从多个解析结果记录生成一个解析结果记录的情况。
解析结果ID1201用于唯一地识别解析结果DB153内的各记录。因此,解析结果ID1201的值在解析结果DB153内是唯一的。解析管理ID1202通过解析管理ID501指定解析结果DB152内的各记录对应的解析脚本DB151内的记录。即,该记录成为对在执行中生成由解析管理ID1202指定的解析脚本的活动记录进行解析而得的结果。
在记录生成时刻1203,在活动解析装置300内的时刻记录生成该记录的时刻。在活动开始时刻1204,在检体10的执行时的检体执行装置200内的时刻记录该记录表示的活动开始的时刻。因此,活动开始时刻1204有时与实际时间较大不同。在活动结束时刻1205,在检体10的执行时的检体执行装置200内的时刻记录该记录表示的活动结束的时刻。因此,活动结束时刻1205有时与实际时间较大不同。
活动内容1206表示解析的结果明确的检体10的活动内容。检体属性1207表示基于活动内容1206明确的检体10的属性、即检体10被分类成哪一种恶意软件的组。在根据活动内容1206不能决定检体属性1207的情况下记录为“不明”。基于根据预先准备的恶意软件的活动内容的特征将恶意软件分类成组的信息,设定检体属性1207。
解析成否1208表示该记录表示的解析成功与否。在解析成功的情况下记述为“成功”,在解析失败的情况下记述为“失败”。解析的成否通过基于活动内容1206能否决定检体属性1207等来决定。如后所述,在解析成否1208为“失败”的情况下,系统管理装置100有时改变解析脚本进行再解析。解析“成功”为活动内容1206及检体属性1207明确的情况。
图13表示六种解析结果DB153的记录的例子。
解析结果ID701=1的记录为生成解析管理ID702=1的解析脚本的结果的记录。记录的生成时刻为2011/09/15 17:40:08。根据该记录的解析内容706,在2011/1/1 12:00:00到2011/1/1 12:00:00的期间,具有从检体执行装置200的IP地址(127.0.0.1)对IP地址为192.168.0.1的其它终端的TCP(Transfer Control Protoco1)的80端口进行与外部的读取的功能的计算机病毒即被称为“BOT”这种种类的恶意软件进行了“C&C通信”。因此,检体属性1207成为“BOT”,解析成否1208为“成功”。
解析结果ID1201=2的记录是生成解析管理ID1202=1的解析脚本的结果的记录。记录的生成时刻为2011/09/15 17:40:08。根据该记录的解析内容706,在2011/1/1 18:00:00到2011/1/1 18:01:00的期间显示对用户请求入账的的对话框。这是被称为“伪防病毒软件”的恶意软件固有的活动。因此,检体属性1207为“伪防病毒软件”,解析成否1208为“成功”。
解析结果ID1201=3的记录是生成解析管理ID1201=1的解析脚本的结果的记录。记录的生成时刻为2011/09/15 17:40:08。根据该记录的活动内容1206,在2011/1/2 12:00:00到2011/1/2 12:00:00的期间,具有从检体执行装置200的IP地址(127.0.0.1)对IP地址为192.168.0.2的其它终端的TCP的80端口进行与外部访问的功能的计算机病毒即被称为“BOT”这种种类的恶意软件进行了“C&C通信”。因此,检体属性1207成为“BOT”,解析成否1208为“成功”。
解析结果ID1201=4的记录是生成解析管理ID1202=1的解析脚本的结果的记录。记录的生成时刻为2011/09/15 17:40:08。根据该记录的活动内容1206,在从2011/1/2 18:00:00到2011/1/2 18:01:00的期间显示对用户请求入账的对话框。因此,检体属性1207成为“伪防病毒软件”,解析成否1208为“成功”。
解析结果ID1201=5的记录为生成解析管理ID1202=2的解析脚本的结果的记录。记录的生成时刻为2011/09/15 18:00:08。根据该记录的活动内容1206,在2011/1/1 12:00:00到2011/1/1 12:01:00的期间,具有从检体执行装置200的IP地址(127.0.0.1)对IP地址为192.168.0.1的其它终端的TCP的80端口进行与外部的访问的功能的计算机病毒即被称为“BOT”这种种类的恶意软件进行了“C&C通信”。因此,检体属性1207成为“BOT”,解析成否1208为“成功”。
解析结果ID1201=6的记录为生成解析管理ID1202=3的解析脚本的结果的记录。记录的生成时刻为2011/09/15 18:00:08。根据该记录的活动内容1206,在2011/1/2 12:00:00到2011/1/2 12:01:00的期间,具有从检体执行装置200的IP地址(127.0.0.1)对IP地址为192.168.0.1的其它终端的TCP的80端口进行了“C&C通信”。因此,检体属性1207成为“BOT”,解析成否1208为“成功”。
图14是表示再解析规则DB154的结构的图。再解析规则DB154用于系统管理装置100根据解析结果DB153的内容判断是否需要进行检体10的再解析。各记录通过解析结果DB153的记录应满足的条件和满足条件时的再解析的有无的对应而构成。
再解析规则ID1301用于唯一地识别各记录。因此,再解析规则ID1301的值在再解析规则DB154的中是唯一的。
解析结果条件1302表示在应用再解析规则的基础上解析结果DB153的记录应满足的条件。条件1302表现为使用了解析结果DB153的记录的各列(column)以及从该记录参照的解析脚本DB151的记录的各列而得的逻辑式。
再解析判定1303在解析结果DB153的记录满足解析结果条件802的情况下,定义是否进行再解析的判定结果。再解析判定803的值取“需要”或“不需要”这2值。在“需要”的情况下,进行再解析。在“不需要”的情况下不进行再解析。
再解析脚本1304在再解析判定1303为“需要”的情况下为用于再次决定新生成的解析脚本20的脚本的修正内容。具体而言,边参照解析结果DB153的记录的值,边基于再解析脚本1304修正解析脚本,决定新追加的解析脚本DB151记录的各列应取的值。此外,有关再解析判定1303为“不需要”的记录,再解析脚本1304为空白。
图13表示四种再解析规则DB154的记录的例。
再解析规则ID=1的记录适用于解析结果条件1302为解析成否1208=“失败”且时间经过速度1006大于一倍速的情况。由于再解析判定1303为“需要”,所以进行再解析。再解析脚本1304中,指定以将时间经过速度1006设为一倍速、解析开始时刻1004在活动开始时刻704的值-5分钟、解析结束时刻1005成为活动结束时刻1205的值+5分钟的方式,修正解析脚本20。
再解析规则ID=2的记录适用于解析结果条件1302为解析成否1208=“成功”且在解析时观测与2件以上的新规IP地址的BOT通信的情况。由于再解析判定1303为“需要”,所以进行再解析。再解析脚本1304中,时间经过速度1006与当前的解析相同,指定以解析开始时刻1004在活动开始时刻704的值-5分钟、解析结束时刻1005成为活动结束时刻1205的值+5分钟的方式,修正解析脚本20。例如,在图13的解析管理ID1202=1的情况下,产生与解析结果ID1201=1及3对应的192.168.0.1、及192.168.0.2这2种IP地址的BOT通信,因此满足解析结果条件1302。
再解析规则ID=3的记录适用于解析结果条件1302为解析成否1208=“失败”且时间经过速度1006为一倍速以下的情况。该情况下,由于再解析判定1303为“不需要”,所以不进行再解析。因此,再解析脚本1304为空白。
再解析规则ID=4的记录适用于解析结果条件1302为解析成否1208=“成功”的情况。该情况下,由于再解析判定1303为“不需要”,所以不进行再解析。因此,再解析脚本1304成为空白。
图15是表示记录规则DB251的结构的图。记录规则DB251决定活动记录部222记录检体10的活动中的哪一活动。
记录规则ID1401用于唯一地识别记录规则DB251的各记录。因此,记录规则ID1401的值在记录规则DB251的中是唯一的。
记录条件1402在检体10的活动满足哪一条件时指定是否记录活动。记录内容1403指定具体记录的信息的内容。设为活动记录部222具有可判断检体10是否进行了适合于记录条件1402的活动的功能和可记录在记录内容1403指定的信息的功能。
图15表示两种记忆规则DB251的记录的例。
就记忆规则ID1401=1的记录而言,在记录条件1402为“数据包发送时”时如记录内容1403所示那样记录“数据包内数据”。具体而言,活动记录部252通过观测IF240,可观测满足记录条件1402的活动。进而,通过从IF240获取数据包数据,可以获取记录条件1403表示的信息。
就记忆规则ID1401=2的记录而言,在记录条件1402为“桌面画面更新时”时如记录内容1403所示那样记录“桌面画面的图像”。具体而言,活动记录部222通过观测输入输出装置290,可观测满足记录条件902的活动。进而,通过从输入输出装置290获取图像数据,可以获取记录内容903所示的信息。
另外,作为图15中未图示的其它例,通过监视执行检体10的存储器230,可以观测从检体10的特定的函数的调用,可以记录交接给函数的参数及函数的执行结果。另外,通过监视映像保存装置280,可以观测并获取检体10生成或变更后的文件及登记的信息。
图16是表示解析规则DB351的结构的图。活动解析部321读入解析规则DB351内的记录,进行由解析规则DB351内的记录指定的解析。
解析规则ID1501用于唯一地识别解析规则DB351的各记录。因此,解析规则ID1501的值在解析规则DB351的中是唯一的。解析内容1502记述具体的解析方法。
图16表示三种解析规则DB351的记录的例。
就解析规则ID1501=1的记录而言,在解析规则DB351内的记录所示的TCP通信内存在特定字符串(PONG、JOIN、NICK等)的情况下,将通信判定为IRC(Internet Relay Chat:因特网中继聊天)通信,判断为检体10中有BOT的属性。另外,针对该记录的解析结果判定为“解析成功”。
就解析规则ID1501=2的记录而言,从解析规则DB351内的记录所示的图像提取检体输出的对话框画面。提取出的对话框为“对用户请求入账”的情况下,判断为检体10有伪防病毒软件的属性。另外,相对于该记录的解析结果判定为“解析成功”。
就解析规则ID1501=3的记录而言,在因时间经过速度的调整的影响而从解析规则DB351内的记录发现网络连接未正常进行的情况时,判断为检体10的属性不明。另外,将针对该记录的解析结果判定为“解析失败”。
图17是表示时间经过速度DB451的结构的图。通信监视部421参照时间经过速度DB451计算未产生TCP超时的时间经过速度。图17所示的各记录中存储每次接收数据包时计算时间经过速度的结果。
超时是指如下现象:在某阈值时间(RTO:Retransmission Time Out重传超时)以内未通过TCP对话接收到针对检体10发送的TCP数据包(以下称为发送TCP数据包)的、来自检体通信目的地终端800的响应TCP数据包。产生超时时,进行TCP数据包的再发送,或抑制数据包发送,因此引起通信速度的降低或通信的切断。将发送某发送TCP数据包的时间与接收到对应的响应TCP数据包的时间的时间差称作往返时间(RTT:Round Trip Time)。
在将时间经过速度设定为1倍速以上的情况下,由检体执行装置200设定的RTO比实际时间相对较短,因此容易产生超时。例如,执行通常的RTO设定为6秒的OS的检体执行装置200在以时间经过速度=10倍动作的情况下,换算为实际时间在0.6秒以内,在响应TCP数据包未到达时产生超时。因此,通信监视部421在产生TCP通信的情况下,将在不超出RTO的范围内尽可能大的值的时间经过速度设定给检体执行装置200。检体执行装置200根据通信状况保持的RTO发生变化,因此,通信监视部421推定检体执行装置200的当前的RTO值,且基于此计算时间经过速度。
TCP中,在某时刻的RTO的计算方法各种各样,但在本实施例中,以对话开始后的RTT的移动平均(以下称为SRTT(Smoothed RTT:平滑RTT))的2倍、即RTO=2×SRTT进行计算。另外,SRTT每次接收响应TCP数据包时进行更新。在本实施例中设为,在接收到当前的SRTT的值为A秒且RTT为B秒的响应TCP数据包的情况下,更新的SRTT的值以A×0.875+B×0.125求出。通常,将时刻tn+1及tn的SRTT分别设为SRTT(n+1)及SRTT(n),将时刻tn的RTT设为RTT(n),且设为预定的常数k(移动平均的加权,在上述情况下为k=0.875=7/8)时,SRTT(n+1)通过SRTT(n+1)=k·SRTT(n)+(1-k)·RTT(n)求得。使用各RTT(i)(i=1~n)表示SRTT(n+1)时,成为SRTT(n+1)=kn·SRTT(1)+(1-k)(RTT(n)+k·RTT(n-1)+…+kn-1·RTT(1)),当作为初期值设为SRTT(1)=0时,成为SRTT(n+1)=(1-k)(RTT(n)+k·RTT(n-1)+…+kn-1·RTT(1))。这表示越从当前(n)面向过去,针对RTT(i)的加权越指数函数地减小。即,表示越是过去的RTT(i),对移动平均SRTT的贡献越小。作为RTO和SRTT的计算方法,也可以使用其它式子。
对检体10发送的每个TCP数据包追加时间经过速度DB451内的各记录。因此,检体10进行多个TCP对话(以发送源IP地址、发送源端口、发送目的地IP地址、及发送目的地端口这4项目的组合来区别)的情况下,实际上与属于多个对话的TCP数据包对应的条目(entry)登记到时间经过速度DB451。但是,由于通信监视部421以对话为单位进行处理,所以时间经过速度DB451例如通过分开使用多个组,来使每个对话具有管理记录的功能。图17的例子及以后,为简单说明,着眼于在检体10和检体通信目的地终端800间确立的一个TCP对话进行说明。图25描述检体10确立了多个TCP对话时的处理。
数据包ID1601用于某TCP对话中唯一地识别发送TCP数据包。数据包ID1601=0的记录被设定RTO等的初期值,在后对其进行描述。对话的第一次的发送TCP数据包作为数据包ID1601=1被记录。
最终发送数据包观测时刻1602记录相应于发送TCP数据包的观测时刻。此外,该时刻由通信监视装置421内的时钟计算,因此是实际时间。
观测RTT1603记录发送相应的TCP数据包后到接收对应的响应TCP数据包为止的时间。此外,该时间由通信监视装置421内的时钟计算,所以是实际时间。
推定RTT1604是检体执行装置200内的时钟的RTT值,可以对观测RTT1603增加当前对检体执行装置200设定的时间经过速度来求出。
推定SRTT1605是检体执行装置200内的时钟的SRTT值。本实施例中,数据包ID1601=N的记录的推定SRTT1605通过(数据包ID1602=N-1的记录的推定SRTT1605的值)×0.875+(数据包ID1601=N的记录的推定RTT1604)×0.125求出。
推定RTO1606是基于推定SRTT1605求出的、检体执行装置200内的时钟的RTO值。本实施例中,推定RTO1606的值为推定SRTT1605的值的2倍。
最佳时间经过速度1607是在当前对话的状态下最佳的时间经过速度,基于推定RTO1606及观测RTT1603算出。本实施例中,观测数据包ID1601=N的响应TCP数据包时的最佳时间经过速度1607作为((数据包ID1601=N的推定RTO1606)×0.8)/(数据包ID1601=N的观测RTT1603)算出。也可以使用数据包ID1601=N-1以下的过去的观测RTT1603算出最佳时间经过速度1607。
在不存在另外确立的对话的情况下,最佳时间经过速度1607作为时间经过速度变更命令80被发送到检体执行装置200。此外,通过可能产生TCP对话等超时的通信以外的方法传递时间经过速度变更命令80,因此,检体执行装置200可以不依赖于时间经过速度的值,正常接收时间经过速度命令80。存在确立的其它对话的情况的处理后述。下面,描述不存在其它对话的情况。
图17表示九种时间经过速度DB451的记录的例。
对数据包ID1601=0的记录预先设定推定RTO1606的初期值“6秒”及时间经过变更速度1607的初期值“6秒”、最佳时间经过速度1607的初期值“1倍速”。因此,在观测到检体10开始TCP对话的TCP发送数据包的情况下,通信监视装置400将时间经过速度=1倍速的、时间经过速度变更命令80发送到检体执行装置200。
数据包ID1601=1的记录中,对最终发送数据包观测时刻1602设定“2011/09/1517:40:01”,对观测RTT1603设定“0.5秒”,对推定RTT1604设定“0.5秒”,对推定SRTT1605设定“2.7秒”,对推定RTO1606设定“5.4秒”,对最佳时间经过速度1607设定“8.6倍速”。这意味着检体10的最初的TCP发送数据包的观测时刻为“2011/09/1517:40:01”,其响应TCP数据包0.5秒后到达,将时间经过速度=8.6倍速的时间经过速度变更命令80发送到检体执行装置200。
同样,数据包ID1601=2的记录中,对最终发送数据包观测时刻1602设定“2011/09/1517:40:02”,对观测RTT1603设定“0.4秒”,对推定RTT1604设定“3.4秒”,对推定SRTT1605设定“2.8秒”,对推定RTO1606设定“5.6秒”,对最佳时间经过速度1607设定“11.1倍速”。这意味着检体10的第二个TCP发送数据包的观测时刻为“2011/09/15 17:40:02”,其响应TCP数据包在0.4秒后到达,将时间经过速度=11.1倍速的时间经过速度变更命令80发送到检体执行装置200。
同样,数据包ID1601=3的记录中,对最终发送数据包观测时刻1602设定“2011/09/1517:40:03”,对观测RTT1603设定“0.6秒”,对推定RTT1604设定“6.7秒”,对推定SRTT1605设定“3.3秒”,对推定RTO1606设定“6.5秒”,对最佳时间经过速度1607设定“8.7倍速”。这意味着检体10的第三个TCP发送数据包的观测时刻为“2011/09/1517:40:03”,其响应TCP数据包在0.6秒后到达,将时间经过速度=8.7倍速的时间经过速度变更命令80发送到检体执行装置200。
数据包ID1601=4~7的记录也为同样的处理。
就数据包ID1601=8的记录而言,最终发送数据包观测时刻1602为“2011/09/15 17:40:08”,对最佳时间经过速度1607记入“RESET”。这在从检体10发送结束确立的TCP对话的数据包时产生。该情况下,将时间经过速度=RESET的时间经过速度变更命令80发送到检体执行装置200。
(处理过程的详情)
图18是由解析管理部121执行的解析管理部处理的流程图。
该流程图中表示投入检体后到解析完成的一连串的流程。即,图18是本实施例的处理概要的流程图。
处理S2001中,将检体10通过系统管理装置100投入解析管理部121。作为投入方法,可以经由IF140从其它终端投入检体10,也可以经由输入输出装置180投入。投入的检体10被保存于检体保存装置170。
处理S2002中,解析管理部121进行解析脚本20的决定。具体而言,决定时间经过速度30、解析开始时刻40、解析结束时刻50。由各项目决定的值可以是预先确定的标准值,也可以经由输入输出装置180由解析者每次登记。
处理S2003中,解析管理部121将在处理S2002决定的解析脚本20保存于解析脚本DB151。此时,在解析管理ID501登记唯一的值,在记录生成时刻502登记保存时刻,在解析状况507登记“解析中”。
处理S2004中,通过线路1,将检体10和一个以上的解析脚本20从解析管理部121发送到检体执行装置200的检体执行部221。
处理S2005中,解析管理部121待机至对解析结果DB153追加新的记录、即活动解析装置300内的活动解析部321进行的活动解析结束。作为对解析结果DB153追加新的记录的通知方法,可以为在解析结果DB153中向解析管理部121发送信号的构造,也可以为从活动解析部321向解析管理部121直接发送通知的构造。
处理S2006中,解析管理部121读入解析结果DB153且获取新追加的记录。
处理S2007中,解析管理部121基于读入的解析结果DB153判定是否需要再解析。作为基本的方针,根据再解析规则DB154内的记录判断为再解析判定803=“需要”那样的解析结果DB153的记录有一个以上的情况下,判断为需要再解析。另外,也可以经由输入输出装置180将解析结果DB153的记录提示给管理者进行最终的判断。
处理S2008中,在处理S2007判断为再解析需要=“是”的情况下,解析管理部121根据再解析规则DB154内的记录进行解析脚本的再设定。再设定后,使处理返回S2003。
处理S2009中,在处理S2007判断为再解析需要=“否”的情况下,解析管理部121输出解析结果。作为输出内容,可以将解析脚本DB151和解析结果DB153内的记录通过输入输出装置180提示给管理者,也可以经由网络500向其它装置发送。
下面,使用图11、图13、图14内的记录例说明图18中进行的处理的具体例。
首先,在处理S2001中,解析管理部121获取检体A并将其保存于检体保存装置170。在处理S2002,作为检体A的解析脚本,决定时间经过速度30=72倍速、解析开始时刻40=2012/1/1 00:00:00、及解析结束时刻50=2012/1/2 23:59:59。
在处理S2003中,将决定的解析脚本作为解析管理ID=1的记录保存于解析脚本DB151中。在处理S2004中,将检体A和与解析管理ID=1对应的解析脚本20发送到检体执行装置200。在处理S2005中,待机至解析结果ID701=1、2、3、4的四个记录被输入到解析结果DB153。在处理S2006中,读入解析结果ID701=1~4的解析结果DB153内的记录。
在处理S2007中,通过解析结果ID1201=1、3的解析结果DB153内的记录的活动内容1206,与两个新的IP地址192.168.0.1、及192.168.0.2进行了BOT通信,因此,基于再解析规则DB154的再解析规则ID=2的记录判断为再解析需要=“是”。
处理S2008中,基于再解析规则DB154再设定解析脚本20。具体而言,作为与解析结果ID701=1的记录对应的解析脚本20,将“时间经过速度30=72倍速、解析开始时刻40=2012/1/1 11:55:00、解析结束时刻50=2012/1/2 12:05:00”作为与解析结果ID=3的记录对应的解析脚本20,再设定“时间经过速度30=1倍速、解析开始时刻40=2012/1/1 00:00:00、解析结束时刻50=2012/1/2 23:59:59”。
使处理返回处理S2003,将在处理S2008中决定的两个解析脚本20作为解析管理ID=2、3的记录保存于解析脚本DB151。
在处理S2004中,将检体A和在处理S2008再设定的解析脚本20发送到检体执行装置200。在处理S2005中,待机至解析结果ID1201=5、6的两个记录被输出到解析结果DB153。处理S2006中,读入解析结果ID1201=5,6的解析结果DB153内的记录。
在处理2007中,通过解析结果ID1201=5、6的解析结果DB153内的记录的活动内容1206,不存在与新的IP地址的BOT连接,因此,基于再解析规则DB154的再解析规则ID1303=4的记录,判断为再解析需要=“否”。
在处理S2009中,根据解析结果DB153内的解析结果ID=2、4、5、6的记录,经由输入输出装置180显示如下消息,即,“检体A在2012/1/1/18:00、202/1/2/18:00进行显示请求用户进款的对话框这种伪防病毒软件固有的活动。另外,在2012/1/1/12:00、202/1/2/12:00进行与192.168.0.1的80端口进行C&C通信这样的BOT固有的活动”。
图19是由检体执行装置200的检体执行部221进行的检体执行处理的流程图。
在处理S2101中,检体执行部221从系统管理装置100的解析管理部121接收检体10及一个以上的解析脚本20。
在处理S2102中,从映像保存装置280读入执行环境映像281,在存储器230上展开、执行。
在处理S2103中,根据解析脚本20的时间经过速度30设定执行环境的时间经过速度。具体的方法后述。
在处理S2104中,对检体执行装置200的时钟部223进行访问,将当前时刻设定为解析脚本20的解析开始时刻40。在处理S2105中,起动在处理S2101中接收到的检体10及活动记录部222。在处理S2106中,待机至时钟部223表示的当前时刻成为解析脚本20的解析结束时刻50。
在处理S2107中,检查是否对在处理S2101中接收到的所有的解析脚本20完成了检体的执行。在处理S2107的结果为“是”的情况下,在处理S2108停止检体10及活动记录部222,完成处理。在处理S2107的结果为“否”的情况下,返回处理S2102,再读入执行环境映像281,根据未处理的解析脚本20执行检体10。
下面,使用图11内的记录例说明图19中进行的处理的具体例。
首先,在处理S2101中,检体执行部221从解析管理部121接收与解析脚本DB151的解析管理ID501=1的记录对应的解析脚本20及检体A。
在处理S2102中,读入用于执行检体A的执行环境映像281。在处理S2103中将执行环境的时间经过速度设定为72倍速。在处理S2104中将时钟部223的当前时刻设定为“2012/1/1 00:00:00”。在处理S2105中执行检体A及活动记录部222。在处理S2106中待机至时钟部223的当前时刻成为“2012/1/2 23:59:59”。
在处理S2107中,所有的解析脚本20的处理结束,因此,在处理S2108中停止检体A及活动记录部222。
之后,在处理S2101中,检体执行部221从解析管理部121接收与解析脚本DB151的解析管理ID1001=2、3的记录相当的两个解析脚本20及检体A。
在处理S2102读入用于执行检体A的执行环境映像281。在处理S2103中,根据与解析管理ID1001=2的记录相当的解析脚本20将执行环境的时间经过速度30设定为72倍速。
在处理S2104中将时钟部223的当前时刻设定为“2012/1/1 11:55:00”。在处理S2105中执行检体A及活动记录部222。在处理S2106中待机至时钟部223的当前时刻成为“2012/1/1 12:00:05”。
在处理S2107中,由于尚未进行与解析管理ID501=3的记录对应的解析脚本20的处理,因此返回处理S2102。之后,在处理S2103~2106中根据上述解析脚本20进行检体的执行处理。
在处理S2107中,由于接收到的两个解析脚本20的处理全部结束,因此,在处理S2108中停止检体A和活动记录部222的处理,结束所有的处理。
图20是由检体执行装置200的时间经过速度变更部224进行的时间经过速度变更处理的流程图。
在处理S2201中,时间经过速度变更部224从通信监视装置400接收时间经过速度变更命令80。在时间经过速度变更命令80记载有“时间经过速度的变更值(例如5.0倍)”或“RESET编码(code)”。
在处理S2202中,根据时间经过速度变更命令而变更时间经过速度。在时间经过速度变更命令记载有变更值的情况下,将检体执行装置200的时间经过速度设定为该值,在记述了“RESET编码”的情况下,将检体执行装置200的时间经过速度设定为从系统管理装置100接收到的时间经过速度30的值。
图21表示计时器装置270和时钟部223的关系。如上所述,每当振荡器271振动时计时器装置270向时钟部223发送信号,时钟部223基于接收到的信号的次数决定当前时刻。
在处理S2301中,将计时器装置270的计数寄存器272的值初始化为0。在处理S2302中振荡器271振动1次。在处理S3203中,每当振荡器271振动时,将计数寄存器272的值加上+1。在处理S2304中,将计数寄存器272的值和计数最大值寄存器273的值进行比较。比较的结果是,在计数寄存器272的值与计数最大值寄存器273不相等的情况下,移动到处理S2302。
在计数寄存器272的值与计数最大值寄存器273的值相等的情况下,移动到处理S2305。在处理S2305中将时钟信号发送到时钟部223。
在发送了时钟信号后,移动到处理S2301。
时钟部223在处理S2306中接收从计时器装置223的处理S2305发送的时钟信号。在处理S2307中对当前时刻加上常数时间。由此,更新检体执行装置200的当前时刻。在处理S2307执行后,再次移动到处理S2206,待机至下一次时钟信号的接收。
在此,在处理S2307中,与当前时刻相加的常数时间决定时钟部223中的时刻的精度。若常数时间=1秒,则时钟部223的时刻精度以1秒为单位,若常数时间=0.01秒,时刻精度以0.01秒为单位。
计数最大值寄存器273的值在时钟部223的起动时被设定。在此,振荡器271的频率为1MHz(1秒振动1000000次),将时钟部223的时刻精度设定为0.01秒。该情况下,时钟部223在1秒需要接收100次的时钟信号,因此,计数最大值寄存器273的值被设定为10000(=1000000/100)。由此,只要计数最大值寄存器273的值不从其它程序变更,则时钟部223就在1秒以100次的比例接收时钟信号,每当那时,当前时刻前进0.01秒。
图22中叙述了在图19的检体执行部处理的S2103中执行的时刻经过速度的调整处理的流程。调整处理中,通过改变计数最大值寄存器273的值,来调整计时器装置270发送时钟信号的频度。
在处理S2401中,将计数最大值寄存器273的值读入变量Current_MAX。在处理S2402中将变量Current_MAX的值除以时刻经过速度30的值所得的值保存为变量New_Max。在处理S2403中将变量New_Max的值存储于计数最大值寄存器2403。
作为例子,如图21所示,在对计数最大值寄存器273的值设定了10000的状况下,如图11的解析管理ID1003=1的记录,考虑将时间经过速度506设为72倍速的情况。
在处理S2401中将变量Current_Max的值设定为10000。在处理S2402中对变量NewMax存储139(=10000/72)。在处理S2403中将139保存于计数最大值寄存器273。
图21的例中,振荡器271的频率为1MHz,因此,1秒约有7200次的时钟信号从计时器装置270被发送到时钟部223。每当接收到时钟信号时,时钟部223使当前时刻前进0.01秒,因此,通过接收7200次的时钟信号,检体执行装置200的时刻前进72秒。由此,实现了通过时间调整速度30指定的72倍速。
图23表示由活动记录部222执行的活动记录处理的流程。
在处理S2501中,活动记录部222读入记录规则DB251。在处理S2502中,根据读入的记录规则DB251记录执行环境上的检体10的活动。在处理S2503中,检体执行部221于在图19的处理S2108中进行活动记录部222的停止的定时,将检体10的执行中生成的活动记录60写出到活动记录DB152。
接下来,使用图12、图15内的记录例表示图23中进行的活动记录处理的具体例。
在处理S2501中,将记录规则DB251内的两个记录(记录规则ID1401=1、2)读入活动记录部222。在处理S2502中,根据读入的记忆规则DB251的记录来记录检体A的“数据包发送活动”及“桌面画面的更新”。具体的记录方法为图15的说明时所示的那样。
在处理S2503中,在检体执行部221进行了根据解析管理ID1102=1的解析脚本20的执行处理的情况下,将活动记录ID1101=1、2、3、4的记录写出到活动记录DB152。另外,在检体执行部221进行了根据解析管理ID1102=2、3的解析脚本20的执行处理的情况下,将活动记录ID1101=5、6的记录写出到活动记录DB152。
图24表示在活动解析部321执行的活动解析处理的流程。
在处理S2601中,活动解析部321进行待机,直至活动记录DB152被更新,追加新的记录。在处理S2602中,活动解析部321读入解析规则DB351及活动记录DB152。
在处理S2603中,根据解析规则DB351解析活动记录DB152的记录,生成解析结果70。此外,在解析的中途,可以由管理者经由输入输出装置370更新解析规则DB351的内容,或基于未载入解析规则DB351的判断基准手动进行解析。在处理S2604中,将在处理S2603中生成的解析结果70保存于解析结果DB153。
接下来,使用图12、图13、图16内的记录例表示图24中进行的活动解析处理的具体例。
在处理S26501中,由于将活动记录ID1101为1~4的记录追加到活动记录DB152,所以解除待机。在处理S2602中,读入活动记录ID1101为1~2的记录及解析规则DB351这三个记录。
在处理S2603中,关于活动记录ID1101=2及4的记录,应用解析规则ID1501=2的记录,判断为检体A有“伪防病毒软件”的属性。另外,关于活动记录ID1101=1及3的记录,应用解析规则ID1501=1的记录,判断为检体A有“BOT”的属性。在处理S2604中,更新解析结果DB153,新追加解析结果ID1201=1~4的记录。之后移动到处理S2601。
再次,在处理S2601中,将活动记录ID1101为5~6的记录追加给活动记录DB152,因此解除待机。在处理S2602中读入活动记录ID1101为1~2的记录及解析规则DB351这两个记录。
在处理S2603中,关于活动记录ID=5、6的记录,应用解析规则ID1501=1的记录,判断为检体A有“BOT”的属性。在处理S2604中更新解析结果DB153,新追加解析结果ID1201=5~6的记录。
图25表示由通信监视部421执行的通信监视处理的流程。
在处理S2701中,通过IF441从数据包镜像装置700接收检体10的镜像数据包90。
在处理S2702中,判断接收到的镜像数据包90是来自检体10的发送TCP数据包还是给检体10的响应TCP数据包。在为发送TCP数据包的情况下前进到处理S2703,在为响应TCP数据包的情况下前进到处理S2710。
在处理S2703中,判断发送TCP数据包是否为对话开始数据包。更详细而言,将SYN标志为ON、ACK标志为OFF的TCP数据包看作是对话开始数据包。在为对话开始数据包的情况下前进到处理S2704,在为其以外的数据包的情况下前进到处理S2706。
在处理S2704中,将时间经过速度=1倍速的时间经过速度变更命令80发送到检体执行装置200。
在处理S2705中,将数据包发送时刻作为数据包ID1602=2的记录的最终发送数据包观测时刻1602记录于时间经过速度DB451。
在处理S2706中,判定发送TCP数据包是否为对话结束数据包。更详细而言,将FIN标志为ON的TCP数据包看作是对话结束数据包。在为对话结束数据包的情况下前进到处理S2707,在其以外的情况下前进到处理S2709。
在处理S2707中,判定当前是否存在确立了检体10的其它对话。在不存在的情况下,前进到处理S2708。在存在的情况下结束处理。
在处理S2708中,将时间经过速度=RESET的时间经过速度变更命令80发送到检体执行装置200。
在处理S2709中,将数据包发送时刻作为最新记录的最终发送数据包观测时刻1602记录到时间经过速度DB451。
在处理S2710中,基于响应TCP数据包的观测时刻计算最佳时间经过速度1607。具体的运算例如图17所示。
在处理S2711中,判定是否存在最新的记录的最佳时间经过速度2710的值比在处理S2710中算出的值小的对话。在存在的情况下结束处理。在不存在的情况下前进到处理S2712。
在处理S2712中,将时间经过速度=最佳时间经过速度2710的时间经过速度变更命令80发送到检体执行装置200。
(变形例)
下面,说明图1所示的系统的变形例。
(1)检体执行装置200和通信监视装置400的连接
图1的例中,检体执行装置200和通信监视装置400经由网络500连接,但也可以使用其它连接手段。例如,可考虑使用串行电缆(serial cable)或USB电缆将两设备连接的方法。该情况下,时间经过速度变更命令80通过电缆传递到检体执行装置200。
(2)TCP通信以外的通信的监视
图1的例中,通信监视装置400监视检体10的TCP通信。除此以外,还可以监视与TCP通信一样因时间经过速度的上升而容易产生超时的通信,可控制时间经过速度。
例如,在HTTP(Hyper Text Transfer Protocol)从客户终端侧发送请求消息后在一定时间以内未接收到响应消息的情况下,产生超时。因此,通信监视装置400检测到请求消息的发送时,在到接收到响应消息为止的期间使时间经过速度暂时为低速,由此可防止HTTP的超时。

Claims (13)

1.一种程序解析系统,使作为动作验证对象的程序在可任意调整时间经过速度的执行环境上动作,其特征在于,该程序解析系统包括:
系统管理装置,其具有管理所述程序的解析状况、并决定时间经过速度的解析管理部;
至少一个检体执行装置,其具有检体执行部和活动记录部,该检体执行部基于由所述解析管理部指定的时间经过速度在所述执行环境上执行所述程序,该活动记录部将所述执行环境上的所述程序的举动作为活动记录来进行获取;
至少一个活动解析装置,其具有解析所述活动记录、并将所述程序的特征作为解析结果来进行输出的活动解析部;以及
至少一个通信监视装置,其具有以所述程序与外部进行通信时不产生超时的方式调整所述时间经过速度的通信监视部。
2.根据权利要求1所述的程序解析系统,其特征在于,
所述通信监视装置在所述程序的通信开始时将所述检体执行装置的时间经过速度设定为预定的值。
3.根据权利要求1所述的程序解析系统,其特征在于,
所述通信监视装置在所述程序的通信结束时将所述检体执行装置的时间经过速度再设定为预定的值。
4.根据权利要求1所述的程序解析系统,其特征在于,
所述通信监视装置通过将时间经过速度变更命令发送给所述检体执行装置来设定时间经过速度。
5.根据权利要求1所述的程序解析系统,其特征在于,
所述通信监视装置分析通信内容,推定通信的超时时间。
6.根据权利要求5所述的程序解析系统,其特征在于,
所述通信监视装置分析通信内容,获取来自所述检体执行装置的请求文和与之对应的响应文。
7.根据权利要求6所述的程序解析系统,其特征在于,
所述通信监视装置计算所述响应文和所述请求文的时间差,基于此推定所述超时时间。
8.根据权利要求7所述的程序解析系统,其特征在于,
所述通信监视装置基于所述时间差推定所述超时时间。
9.根据权利要求8所述的程序解析系统,其特征在于,
所述通信监视装置基于所述超时时间计算最佳时间经过速度。
10.根据权利要求8所述的程序解析系统,其特征在于,
所述通信监视装置每次更新所述最佳时间经过速度时,向所述检体执行装置发送所述时间经过速度变更命令。
11.根据权利要求10所述的程序解析系统,其特征在于,
所述通信监视装置在所述程序执行了多个通信的情况下,将由各通信得到的所述最佳时间经过速度中最小的值作为所述时间经过速度变更命令来进行发送。
12.一种程序解析方法,使用处理装置使作为动作验证对象的程序在可任意调整时间经过速度的执行环境上动作,其特征在于,该程序解析方法具有以下步骤:
管理所述程序的解析状况,并决定时间经过速度的解析管理步骤;
基于在所述解析管理步骤指定的时间经过速度在所述执行环境上执行所述程序的检体执行步骤;
将所述执行环境上的所述程序的举动作为活动记录来进行获取的活动记录步骤;
解析所述活动记录,并将所述程序的特征作为解析结果来进行输出的活动解析步骤;以及
以所述程序与外部解析通信时不产生超时的方式调整所述时间经过速度的通信监视步骤。
13.一种程序解析系统,使作为动作验证对象的程序在可任意调整时间经过速度的执行环境上动作,其特征在于,该程序解析系统包括:
系统管理装置,其具有管理所述程序的解析状况、并决定时间经过速度的解析管理部;以及
处理装置,其具有:
基于由所述解析管理部指定的时间经过速度在所述执行环境上执行所述程序的检体执行部、
将所述执行环境上的所述程序的举动作为活动记录来进行获取的活动记录部、
解析所述活动记录并将所述程序的特征作为解析结果来进行输出的活动解析部、和
以所述程序与外部进行通信时不产生超时的方式调整所述时间经过速度的通信监视部。
CN2013100572275A 2012-02-23 2013-02-22 程序解析系统及方法 Pending CN103294947A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2012-037029 2012-02-23
JP2012037029A JP2013171556A (ja) 2012-02-23 2012-02-23 プログラム解析システム及び方法

Publications (1)

Publication Number Publication Date
CN103294947A true CN103294947A (zh) 2013-09-11

Family

ID=47826895

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013100572275A Pending CN103294947A (zh) 2012-02-23 2013-02-22 程序解析系统及方法

Country Status (4)

Country Link
US (1) US20130227690A1 (zh)
EP (1) EP2631839A1 (zh)
JP (1) JP2013171556A (zh)
CN (1) CN103294947A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10511612B2 (en) 2017-01-23 2019-12-17 Fanuc Corporation System and method of detecting intrusion into communication environment

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015130008A (ja) * 2014-01-06 2015-07-16 富士通株式会社 動態解析方法及び動態解析装置
JP2015173406A (ja) * 2014-03-12 2015-10-01 株式会社東芝 分析システム、分析装置、及び分析プログラム
JP6286314B2 (ja) * 2014-07-30 2018-02-28 株式会社日立アドバンストシステムズ マルウェア通信制御装置
CN105678164B (zh) 2014-11-20 2018-08-14 华为技术有限公司 检测恶意软件的方法及装置
JP6333763B2 (ja) * 2015-03-31 2018-05-30 株式会社日立アドバンストシステムズ マルウェア解析装置およびマルウェア解析方法
US9641485B1 (en) * 2015-06-30 2017-05-02 PacketViper LLC System and method for out-of-band network firewall
US10032031B1 (en) 2015-08-27 2018-07-24 Amazon Technologies, Inc. Detecting unknown software vulnerabilities and system compromises
US10019572B1 (en) * 2015-08-27 2018-07-10 Amazon Technologies, Inc. Detecting malicious activities by imported software packages
RU2628921C1 (ru) * 2016-03-18 2017-08-22 Акционерное общество "Лаборатория Касперского" Система и способ выполнения антивирусной проверки файла на виртуальной машине
US10853478B1 (en) 2018-08-31 2020-12-01 Splunk Inc. Encrypted storage and provision of authentication information for use when responding to an information technology incident
US10757093B1 (en) * 2018-08-31 2020-08-25 Splunk Inc. Identification of runtime credential requirements

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374145B1 (en) * 1998-12-14 2002-04-16 Mark Lignoul Proximity sensor for screen saver and password delay
JP2004120082A (ja) * 2002-09-24 2004-04-15 Yuji Atsui 電子メール中継システム、方法及びプログラム並びにウィルス検知システム、方法及びプログラム
US7013482B1 (en) * 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
CN1818823A (zh) * 2005-02-07 2006-08-16 福建东方微点信息安全有限责任公司 基于程序行为分析的计算机防护方法
CN1845120A (zh) * 2006-05-16 2006-10-11 北京启明星辰信息技术有限公司 一种恶意代码自动分析系统及方法
JP2009181335A (ja) * 2008-01-30 2009-08-13 Nippon Telegr & Teleph Corp <Ntt> 解析システム、解析方法および解析プログラム
CN102254120A (zh) * 2011-08-09 2011-11-23 成都市华为赛门铁克科技有限公司 恶意代码的检测方法、系统及相关装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3899772A (en) * 1973-04-23 1975-08-12 Kustom Electronics Mobile computer terminal and system
US5446904A (en) * 1991-05-17 1995-08-29 Zenith Data Systems Corporation Suspend/resume capability for a protected mode microprocessor
US6066275A (en) * 1998-07-07 2000-05-23 Alcatel Method and apparatus for determining and controlling excess length of a communications element in a conduit
US7356736B2 (en) * 2001-09-25 2008-04-08 Norman Asa Simulated computer system for monitoring of software performance
US7729264B2 (en) * 2005-12-15 2010-06-01 Emulex Design & Manufacturing Corporation System method and software for user customizable device insertion
WO2007130806A2 (en) * 2006-05-03 2007-11-15 Sony Computer Entertainment Inc. Register mapping in emulation of a target system on a host system
US7934253B2 (en) * 2006-07-20 2011-04-26 Trustwave Holdings, Inc. System and method of securing web applications across an enterprise
JP5083760B2 (ja) 2007-08-03 2012-11-28 独立行政法人情報通信研究機構 マルウェアの類似性検査方法及び装置
WO2009132700A1 (en) * 2008-04-29 2009-11-05 Telefonaktiebolaget L M Ericsson (Publ) Improved intrusion detection and notification
US8635694B2 (en) 2009-01-10 2014-01-21 Kaspersky Lab Zao Systems and methods for malware classification
JP5389739B2 (ja) * 2010-06-08 2014-01-15 日本電信電話株式会社 解析システム、解析装置、解析方法及び解析プログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374145B1 (en) * 1998-12-14 2002-04-16 Mark Lignoul Proximity sensor for screen saver and password delay
US7013482B1 (en) * 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
JP2004120082A (ja) * 2002-09-24 2004-04-15 Yuji Atsui 電子メール中継システム、方法及びプログラム並びにウィルス検知システム、方法及びプログラム
CN1818823A (zh) * 2005-02-07 2006-08-16 福建东方微点信息安全有限责任公司 基于程序行为分析的计算机防护方法
CN1845120A (zh) * 2006-05-16 2006-10-11 北京启明星辰信息技术有限公司 一种恶意代码自动分析系统及方法
JP2009181335A (ja) * 2008-01-30 2009-08-13 Nippon Telegr & Teleph Corp <Ntt> 解析システム、解析方法および解析プログラム
CN102254120A (zh) * 2011-08-09 2011-11-23 成都市华为赛门铁克科技有限公司 恶意代码的检测方法、系统及相关装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JEDIDIAH RICHARD CRANDALL: "《Capturing and Analyzing Internet Worms》", 31 December 2007, article "section 5" *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10511612B2 (en) 2017-01-23 2019-12-17 Fanuc Corporation System and method of detecting intrusion into communication environment

Also Published As

Publication number Publication date
EP2631839A1 (en) 2013-08-28
JP2013171556A (ja) 2013-09-02
US20130227690A1 (en) 2013-08-29

Similar Documents

Publication Publication Date Title
CN103294947A (zh) 程序解析系统及方法
US10516698B2 (en) Honeypot computing services that include simulated computing resources
US10740411B2 (en) Determining repeat website users via browser uniqueness tracking
Xiao et al. Achieving accountable MapReduce in cloud computing
CN110442712B (zh) 风险的确定方法、装置、服务器和文本审理系统
US11038913B2 (en) Providing context associated with a potential security issue for an analyst
US20140157415A1 (en) Information security analysis using game theory and simulation
US20190057213A1 (en) Security in microservice architectures
US20180253737A1 (en) Dynamicall Evaluating Fraud Risk
CN103106364A (zh) 程序分析系统和方法
US11677776B2 (en) Dynamic attack path selection during penetration testing
US11558403B2 (en) Quantum computing machine learning for security threats
US11546380B2 (en) System and method for creation and implementation of data processing workflows using a distributed computational graph
US20180146002A1 (en) Cyber Security System and Method Using Intelligent Agents
CN109698809A (zh) 一种账号异常登录的识别方法及装置
US11563727B2 (en) Multi-factor authentication for non-internet applications
CN111092912B (zh) 安全防御方法及装置
US20210258305A1 (en) Probe-based risk analysis for multi-factor authentication
US20220166795A1 (en) Defense of targeted database attacks through dynamic honeypot database response generation
US20210152537A1 (en) Data security utilizing historical password data
CN110519280A (zh) 一种爬虫识别方法、装置、计算机设备及存储介质
CN108924159A (zh) 一种报文特征识别库的验证方法与装置
US11290486B1 (en) Allocating defective computing resources for honeypot services
Berger et al. Does my bft protocol implementation scale?
CN115119197B (zh) 基于大数据的无线网络风险分析方法、装置、设备及介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130911