CN101645119A - 一种基于虚拟硬件环境的恶意代码自动分析方法及系统 - Google Patents

一种基于虚拟硬件环境的恶意代码自动分析方法及系统 Download PDF

Info

Publication number
CN101645119A
CN101645119A CN200810117899A CN200810117899A CN101645119A CN 101645119 A CN101645119 A CN 101645119A CN 200810117899 A CN200810117899 A CN 200810117899A CN 200810117899 A CN200810117899 A CN 200810117899A CN 101645119 A CN101645119 A CN 101645119A
Authority
CN
China
Prior art keywords
virtual
malicious code
data
module
analysis
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.)
Granted
Application number
CN200810117899A
Other languages
English (en)
Other versions
CN101645119B (zh
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.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
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 Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN200810117899XA priority Critical patent/CN101645119B/zh
Publication of CN101645119A publication Critical patent/CN101645119A/zh
Application granted granted Critical
Publication of CN101645119B publication Critical patent/CN101645119B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于虚拟硬件环境的恶意代码自动分析方法及系统,属于网络安全技术领域,本发明通过在虚拟硬件环境之上构建恶意代码所需的运行环境,并通过操纵和控制虚拟CPU指令和各种虚拟硬件的访问操作,收集恶意代码各种操作信息,控制恶意代码的运行过程,分析所有的收集到的数据,动态显示虚拟系统状态信息和恶意代码运行信息。由于数据采集通过虚拟硬件实现,恶意代码无法感知自身是否运行在虚拟环境中,也无法分辨自身是否被跟踪,从而实现对恶意代码完全透明的分析。

Description

一种基于虚拟硬件环境的恶意代码自动分析方法及系统
技术领域
本发明属于网络安全技术领域,尤其涉及一种恶意代码分析的方法及系统。
背景技术
随着社会的不断发展和进步,计算机在社会各个领域的应用越来越广泛。由于软件漏洞的广泛存在和用户安全意识的不足,恶意代码的传播速度越来越快,感染范围不断扩大,造成的破坏日益严重,传统的安全防护手段由于受分析效率限制,响应周期难以缩短,响应速度已经逐渐不能适应这种新情况。因此,提高恶意代码分析速度和分析效率显得十分必要。
现有的恶意代码分析方法主要依赖于传统的软件分析和调试工具,主要包括静态反编译,动态跟踪调试和人工分析。
利用静态反编译技术分析恶意代码,主要是利用静态反编译工具如IDA Pro,对恶意代码的二进制文件进行静态分析,反编译出汇编指令,通过分析指令的执行流程,检查其中包含的各种操作。这种方式的主要缺陷是,无法反编译自修改代码、动态生成代码、加壳代码,同时难以消除花指令,代码混淆等技术造成的影响,极大的影响了分析效率和有效性。
利用动态跟踪调试技术分析恶意代码可以在一定程度上解决静态反编译无法解决的问题。借助软件和硬件提供的调试功能,SoftICE,OllyDbg等工具可以动态跟踪恶意代码的运行过程,观察恶意代码运行过程中的各种行为。动态跟踪调试通常还借助VMWare,Virtual PC等操作系统虚拟工具实现。这种方式的主要问题在于,调试器与恶意代码运行在同一个操作系统平台上,依赖于平台自身提供的调试功能,从而使得恶意代码可以检测到调试器的存在。并且,由于操作系统虚拟工具都存在明显的特征,也很容易被恶意代码检测到,恶意代码往往通过反跟踪,反调试,虚拟机检测技术,阻止对自身的调试,退出运行甚至隐藏特定行为等,造成动态跟踪分析难以有效开展。
利用辅助工具进行人工分析,主要指通过观察恶意代码对文件系统,网络,进程线程等运行环境资源的访问操作,推断恶意代码的行为特征。由于恶意代码的行为往往依赖于外部环境,使得这种方式难以全面覆盖恶意代码可能的所有行为。同时,这种分析方法自身特性也决定了其分析能力存在跟动态跟踪类似的同一平台竞争问题,大量的人工操作也极大地限制了其分析效率。在恶意代码数量不断膨胀的今天,人工分析的缺陷更加明显。
发明内容
本发明提供一种基于虚拟硬件环境的恶意代码自动分析方法及系统。通过在虚拟硬件环境之上构建恶意代码所需的运行环境,并通过操纵和控制虚拟CPU指令和各种虚拟硬件的访问操作,收集恶意代码各种操作信息,控制恶意代码的运行过程。由于数据采集通过虚拟硬件实现,恶意代码无法感知自身是否运行在虚拟环境中,也无法分辨自身是否被跟踪,从而实现对恶意代码完全透明的分析。
为实现以上目的,本发明的构思是:分析人员通过用户控制模块配置分析环境和分析目标的参数,启动硬件虚拟模块,加载恶意代码运行所需的操作系统镜像,启动该操作系统,并运行待分析的恶意代码。数据采集模块根据分析目标,拦截特定的虚拟CPU指令,收集并记录相关的访问数据,并可根据需要,更改恶意代码指令的执行流程。数据采集模块还拦截各种虚拟硬件的访问操作,收集并记录相关操作的数据,并根据需要提供特定的输入数据。数据分析模块综合数据采集模块收集的各种数据,通过用户控制模块实时显示最新的恶意代码运行信息,并在分析过程终止后,关联分析所有的搜集到的数据,自动输出分析结果。
基于以上构思,本发明的技术方案为:
一种基于虚拟硬件环境的恶意代码自动分析方法,包括步骤:
1)搭建恶意代码运行环境,包括根据恶意代码运行环境的要求,虚拟所需的硬件设备,准备相关的操作系统镜像;
2)配置分析环境和分析参数,包括恶意代码运行所需的操作系统镜像所在位置,虚拟硬件的各种参数,如虚拟内存大小,虚拟系统时间等,以及需要收集的恶意代码运行数据和需要监控的恶意代码操作,如网络收发数据,文件读写操作等;
3)完成各种虚拟设备的初始化后,加载恶意代码运行所需的操作系统镜像,启动该操作系统,同时拦截加载操作,并将所有支持拦截的系统调用操作转换为虚拟系统对应的系统调用的指令起始地址;
4)运行待分析的恶意代码,虚拟CPU执行任何指令之前,判断即将执行的指令是否为转换过来的指令起始地址,当匹配时,则暂停虚拟系统的运行,记录当前匹配操作,并收集该操作相关的数据,如网络数据发送操作的内容,文件创建操作的文件名等信息,然后再恢复虚拟系统的运行;同时,对于读取操作,还可根据需要提供特定的输入数据,改变恶意代码的执行流程;
5)分析所有的收集到的数据,动态显示虚拟系统状态信息和恶意代码运行信息,恶意代码退出,分析自动终止;用户终止恶意代码的运行过程,提取某一时刻虚拟内存中的恶意代码的二进制代码,关联分析搜集到的所有数据,输出分析结果。
一种基于虚拟硬件环境的恶意代码自动分析系统,其特征在于,包括一硬件虚拟模块,一数据采集模块,一数据分析模块和一用户控制模块,硬件虚拟模块和数据采集模块通过网络连接与数据分析模块和用户控制模块进行通讯和数据交互,其中:
硬件虚拟模块虚拟实现物理计算机所需的硬件设备,加载恶意代码运行所需的操作系统镜像;
数据采集模块拦截各种虚拟系统调用和虚拟硬件的访问操作,收集并记录相关操作的数据;
数据分析模块关联分析所有的搜集到的数据;
用户控制模块配置分析环境和分析目标的参数,动态显示虚拟系统状态信息和恶意代码运行信息。
根据恶意代码运行所需操作系统的不同,可以包含多个不同的数据采集模块,如图2所示。
本发明的配置信息,可以XML结构化方式组织并存储。
进一步配置信息的分析环境信息可包括:虚拟软盘镜像文件,虚拟硬盘镜像文件,虚拟CDROM镜像文件,启动顺序,虚拟内存大小,虚拟CPU数量,虚拟时间,虚拟键盘类型,虚拟USB设备,虚拟网卡MAC地址,虚拟网络端口到物理主机端口的重定向。
进一步配置信息的分析参数信息可包括:要监控的系统调用名称,参数和返回值的结构,以及可选的待分析的恶意代码文件名。
本发明的硬件虚拟模块和数据采集模块,与数据分析模块和用户控制模块可以运行在不同的体系结构和操作系统上,可以通过网络通信实现交互。
本发明的优点在于,整个分析过程对恶意代码完全透明,恶意代码无法识别是否运行在虚拟环境中还是真实环境中,也无法察觉指令执行过程是否被监控,从而能够观察到真实环境中的恶意代码的所有可能行为。并且,由于监控操作在指令在虚拟CPU上执行前展开,监控不会受到恶意代码中花指令,代码动态生成等各种保护技术的干扰。此外,由于能够控制所有虚拟硬件,本发明还能够在恶意代码运行过程中,从虚拟内存中转储当前正在执行的恶意代码的二进制代码用于静态分析,从而解决代码加壳,自修改等动态行为造成的静态分析的困难。
附图说明
图1为本发明的系统工作过程流程图
图2为本发明的系统组成与模块间详细关系示意图
具体实施方式
下面结合附图和具体实施方式对本发明作进一步详细描述:
分析人员搭建恶意代码运行环境,配置分析环境和分析目标等参数,启动硬件虚拟模块,加载并启动恶意代码运行所需的操作系统镜像,并运行待分析的恶意代码。数据采集模块根据分析目标,拦截特定的虚拟CPU指令和虚拟硬件的访问操作,收集并记录相关的访问数据。数据分析模块综合数据采集模块收集的各种数据,通过用户控制模块实时显示恶意代码运行信息,并在分析过程终止后,关联分析所有的搜集到的数据,输出分析结果。
参考附图1,下面给出详细过程。
第一步:搭建恶意代码运行环境
利用硬件虚拟模块,虚拟实现物理计算机所需的CPU,内存,硬盘等核心部件以及CDROM,网卡,软驱,USB设备等外设。由于本发明的硬件虚拟模块上运行的虚拟系统,其所有硬盘数据以虚拟系统镜像文件的形式存在。根据恶意代码针对的运行平台和操作系统要求,利用已有的虚拟系统镜像文件,或是运行硬件虚拟模块,安装相应的操作系统,制作新的虚拟系统镜像文件。如x86平台上的Windows系统上的恶意代码,则可以通过硬件虚拟模块的虚拟光驱,利用光盘安装操作系统,制作Windows系统镜像文件。
第二步:配置分析环境和分析目标参数
进一步配置信息的分析环境信息可包括:虚拟软盘镜像文件,虚拟硬盘镜像文件,虚拟CDROM镜像文件,启动顺序,虚拟内存大小,虚拟CPU数量,虚拟时间,虚拟键盘类型,虚拟USB设备,虚拟网卡MAC地址,虚拟网络端口到物理主机端口的重定向。
进一步配置信息的分析参数信息可包括:要监控的系统调用名称,参数和返回值的结构,以及可选的待分析的恶意代码文件名。
本发明的参数配置通过XML形式存储的配置文件,以及用户控制模块的图形用户界面完成。
XML配置文件包含数据采集模块支持拦截和监控的操作,各个操作对应的参数和结果的数据结构和含义。如对Windows系统,配置文件的主要内容包括数据采集模块支持监控的进程线程操作,网络操作,注册表操作,文件系统操作和系统服务操作API,形式如下:
<Entry>
    <ID>0103</ID>
    <Name>NtTerminateProcess</Name>
    <Monitor>false</Monitor>
    <Catalog>process</Catalog>
    <Detail>
        <Signature>
        NTSYSAPI
        NTSTATUS
        NTAPI
        NtTerminateProcess(
        IN HANDLE ProcessHandle OPTIONAL,
        IN NTSTATUS ExitStatus
        )
        </Signature>
        <Alias></Alias>
        <Remark>在内核模式下结束一个进程。</Remark>
        <Return>NTSTATUS,零表示成功,其他值表示失败。</Return>
        <Parameter>
        ProcessHandle,HANDLE,OPTIONAL,进程的句柄
        ExitStatus,NTSTATUS,进程退出的状态
        </Parameter>
    </Detail>
</Entry>
对于变动性较大的其他参数,通过用户控制模块的图形用户界面完成(也可以用命令行),具体包括硬件虚拟模块参数,数据分析模块参数和用户控制模块参数。
硬件虚拟模块参数包括:虚拟硬盘对应的虚拟系统镜像文件路径及名称,虚拟内存大小,虚拟系统时间设置,虚拟网卡MAC地址,虚拟光驱对应的虚拟光盘文件路径及名称等。
数据分析模块参数包括:分析历史数据保存控制,分析结果输出形式选择等。
用户控制模块参数包括:虚拟系统实时运行状态信息显示控制,分析日志记录和操作监控项目选择等。
第三步:运行虚拟系统,分析恶意代码
完成相关配置后,用户启动硬件虚拟模块,硬件虚拟模块完成相关的初始化之后,自动加载指定的虚拟系统镜像文件,之后开始操作系统的正常启动过程。当系统启动完成后,对于非包含在虚拟系统里的恶意代码,还需要运行恶意代码可执行文件样本。
在虚拟系统启动的同时,数据采集模块拦截操作系统内核模块的加载过程,并将所有支持拦截的内核系统调用操作转换为虚拟系统对应的系统调用的指令起始地址。并且,在恶意代码启动和运行过程中,数据采集模块还拦截操作系统的动态链接库加载操作,将恶意代码运行所需的所有动态链接库中,数据采集模块支持拦截的系统调用操作也转换为虚拟系统对应的系统调用的指令起始地址。数据采集模块指示虚拟CPU在执行指令之前,比较和判断即将执行的指令是否在监控范围之内。当指令满足监控条件时(就是指上面的拦截操作转换过来的系统调用的指令起始地址,在当前执行的指令的地址等于这些要监控的指令地址时),数据采集模块指示虚拟CPU暂停,从而暂停虚拟系统的运行,提取并保存相关的数据之后再恢复虚拟系统的运行。
例如针对Windows系统,监控恶意代码的NtTerminateProcess操作,则每当虚拟CPU执行下一条指令之前,判断当前CR3是否与恶意代码的CR3相同,EIP是否与NtTerminateProcess指令起始地址相等,从而决定是否中断当前执行流程。当满足条件时,数据采集模块指示虚拟CPU暂停,将返回地址对应的指令加入指令监控列表,并根据NtTerminateProcess声明的参数个数和结构,从虚拟系统运行栈中获取参数ProcessHandle和ExitStatus的值,然后指示虚拟CPU恢复。当虚拟系统从NtTerminateProcess系统调用中返回时,由于当前CR3与恶意代码的CR3相同,EIP与先前保存的返回地址对应的指令相等,数据采集模块再次指示虚拟CPU暂停,从指令监控列表中删除原先保存的返回地址对应的指令,并从虚拟系统运行栈中获取NtTerminateProcess的返回值,最后再指示虚拟CPU恢复运行。通过这种方式,实现了不利用任何操作系统和硬件调试功能的同时,完成对一个完整的系统调用的截获以及所有参数以及返回值的收集。
对于获取数据的系统调用,如获取系统时间,操作系统信息的系统调用,数据采集模块还可以根据配置的指示,通过修改调用堆栈并填充相关数据,同时更改EIP等相关寄存器控制虚拟系统执行流程,为恶意代码提供执行所需的输入数据。
第四步:数据关联分析
数据分析模块接收并存储数据采集模块收集到的数据,并通过用户控制模块实时显示最新的虚拟系统状态和恶意代码运行信息。动态显示的虚拟系统状态信息,主要包括虚拟系统内部正运行的进程的详细信息,具体包括:进程名称,进程ID,可执行文件名,当前调度状态,进程环境信息,内存使用平均值,内存使用峰值。动态显的示恶意代码运行信息,包括恶意代码的进程详细信息,具体包括:进程名称,进程ID,可执行文件名,当前调度状态,进程环境信息,内存使用平均值,内存使用峰值。恶意代码的线程详细信息,具体包括:线程ID,线程环境信息,函数地址,线程是否已经结束,线程是否将被删除。恶意代码加载的模块的详细信息,具体包括:模块的文件名,所在进程,模块是否被隐藏,模块在内存中的加载地址,模块的大小。恶意代码的系统调用信息,具体包括:系统调用发生的时间,执行系统调用的进程名字,执行系统调用的进程标识符,系统调用类型,系统调用名,系统调用结果,系统调用参数内容,系统调用的安全级别,以及其他能够提供额外帮助的系统调用信息。
当恶意代码退出,分析自动终止,或是用户手动终止分析过程时,数据分析模块通过时序关系,控制依赖关系,数据依赖关系,逻辑依赖关系对各种数据进行综合分析,根据模块间的加载调用关系,不同进程间的父子关系,进程的线程创建终止关系,输入数据的传播关系,不同系统调用的先后关系,在所有关联数据之间创建超链接。
如根据进程ID,CR3和进程间父子关系,数据分析模块中的分析引擎可以标识出所有恶意代码启动的进程,终止的进程以及恶意代码打开过的进程。再如,通过不同进程对同一个目标数据的访问操作之间的时序关系,可以识别出目标数据的传播依赖路径。
数据分析模块完成分析后,输出自动分析结果。用户可以很容易地通过各种数据项目之间的超链接,找到并分析恶意代码不同行为之间的关系,从而了解恶意代码的真实行为和实现机制。
对于专业人士,如果需要对恶意代码某以运行状态进行进一步的进行分析,还可以在第三步分析过程中,通过用户控制模块,转储虚拟内存中该时刻的恶意代码内存镜像。对于加壳代码,自修改代码以及动态产生代码,该功能能够帮助用户获取恶意代码的静态化快照,从而可利用传统的静态分析工具进行分析,从而全面分析恶意代码可能的行为。
尽管为说明目的公开了本发明的具体实施例和附图,其目的在于帮助理解本发明的内容并据以实施,但是本领域的技术人员可以理解:在不脱离本发明及所附的权利要求的精神和范围内,各种替换、变化和修改都是可能的。因此,本发明不应局限于最佳实施例和附图所公开的内容,本发明要求保护的范围以权利要求书界定的范围为准。

Claims (13)

1、一种基于虚拟硬件环境的恶意代码自动分析方法,其步骤包括:
1)虚拟实现物理计算机所需的硬件设备,准备恶意代码运行环境相关的操作系统镜像;
2)配置恶意代码分析环境和分析目标的参数;
3)加载恶意代码运行所需的虚拟操作系统镜像,同时拦截操作系统内核模块的加载,将所有支持拦截的系统调用操作转换为虚拟系统对应的系统调用的指令起始地址;
4)运行待分析的恶意代码,虚拟CPU在执行指令之前,判断即将执行的指令是否为转换过来的指令起始地址,是则暂停虚拟系统的运行,收集并记录该操作相关的访问数据后,再恢复虚拟系统的运行;
5)分析所有的收集到的数据,动态显示虚拟系统状态信息和恶意代码运行信息,恶意代码退出,分析自动终止。
2、如权利要求1所述的方法,其特征在于,所述步骤1)完全虚拟物理计算机的核心部件以及常用外设,包括CPU,内存,硬盘,CDROM,网卡,软驱,键盘,鼠标以及其他USB设备。
3、如权利要求1所述的方法,其特征在于,所述步骤2)分析环境包括虚拟软盘镜像文件,虚拟硬盘镜像文件,虚拟CDROM镜像文件,启动顺序,虚拟内存大小,虚拟CPU数量,虚拟时间,虚拟键盘类型,虚拟USB设备,虚拟网卡MAC地址,虚拟网络端口到物理主机端口的重定向。
4、如权利要求1所述的方法,其特征在于,所述步骤2)分析目标包括要监控的系统调用名称,参数和返回值的结构,以及可选的待分析的恶意代码文件名。
5、如权利要求1所述的方法,其特征在于,所述步骤2)参数的配置通过XML形式存储的配置文件,以及图形用户界面完成。
6、如权利要求5所述的方法,其特征在于,所述XML配置文件包含支持拦截和监控的操作,各个操作对应的参数和结果的数据结构及含义。
7、如权利要求1所述的方法,其特征在于,所述步骤4)对于读取操作,通过修改调用堆栈并填充相关数据,更改相关寄存器,为恶意代码提供执行所需的输入数据,控制虚拟系统执行流程。
8、如权利要求1所述的方法,其特征在于,所述步骤4)恶意代码运行时,拦截操作系统的动态链接库的加载,并将所有支持拦截的系统调用操作转换为虚拟系统对应的系统调用的指令起始地址。
9、如权利要求1所述的方法,其特征在于,所述步骤4)从虚拟内存中转储当前时刻的恶意代码内存镜像,获取恶意代码的静态化快照,利用传统的静态分析工具进行分析。
10、如权利要求1所述的方法,其特征在于,所述步骤5)用户手动终止分析过程时,通过数据的时序关系,控制依赖关系,数据依赖关系,逻辑依赖关系对收集到的数据进行分析,根据恶意代码加载的模块间的加载顺序以及调用关系,不同进程间的父子关系,进程的线程创建终止关系,输入数据的传播关系,不同系统调用的先后关系,在所有关联数据之间创建超链接。
11、一种基于虚拟硬件环境的恶意代码自动分析系统,其特征在于,包括一硬件虚拟模块,一数据采集模块,一数据分析模块和一用户控制模块,硬件虚拟模块和数据采集模块通过网络连接与数据分析模块和用户控制模块进行通讯和数据交互,其中:
硬件虚拟模块虚拟实现物理计算机所需的硬件设备,加载恶意代码运行所需的操作系统镜像;
数据采集模块拦截各种虚拟系统调用和虚拟硬件的访问操作,收集并记录相关操作的数据;
数据分析模块关联分析所有的搜集到的数据;
用户控制模块配置分析环境和分析目标的参数,动态显示虚拟系统状态信息和恶意代码运行信息。
12、如权利要求11所述的系统,其特征在于,根据恶意代码运行所需操作系统的不同,可以包含多个不同的数据采集模块。
13、如权利要求11所述的系统,其特征在于,所述用户控制模块采用图形用户界面,用来动态显示虚拟系统状态信息和恶意代码运行信息。
CN200810117899XA 2008-08-07 2008-08-07 一种基于虚拟硬件环境的恶意代码自动分析方法及系统 Active CN101645119B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN200810117899XA CN101645119B (zh) 2008-08-07 2008-08-07 一种基于虚拟硬件环境的恶意代码自动分析方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200810117899XA CN101645119B (zh) 2008-08-07 2008-08-07 一种基于虚拟硬件环境的恶意代码自动分析方法及系统

Publications (2)

Publication Number Publication Date
CN101645119A true CN101645119A (zh) 2010-02-10
CN101645119B CN101645119B (zh) 2012-05-23

Family

ID=41657004

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200810117899XA Active CN101645119B (zh) 2008-08-07 2008-08-07 一种基于虚拟硬件环境的恶意代码自动分析方法及系统

Country Status (1)

Country Link
CN (1) CN101645119B (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101989322A (zh) * 2010-11-19 2011-03-23 北京安天电子设备有限公司 自动提取恶意代码内存特征的方法和系统
CN102122330A (zh) * 2011-01-24 2011-07-13 中国人民解放军国防科学技术大学 基于虚拟机的“In-VM”恶意代码检测系统
CN102591696A (zh) * 2011-01-14 2012-07-18 中国科学院软件研究所 一种手机软件行为数据提取方法及系统
CN102622536A (zh) * 2011-01-26 2012-08-01 中国科学院软件研究所 一种恶意代码捕获方法
CN102750484A (zh) * 2012-06-28 2012-10-24 腾讯科技(深圳)有限公司 一种防止病毒样本自检的方法及装置
CN102779250A (zh) * 2012-06-29 2012-11-14 腾讯科技(深圳)有限公司 文件可控执行的检测方法及虚拟机
CN103019865A (zh) * 2012-12-28 2013-04-03 北京神州绿盟信息安全科技股份有限公司 虚拟机监控方法和系统
CN103108320A (zh) * 2011-11-15 2013-05-15 网秦无限(北京)科技有限公司 一种监控移动设备的应用程序的方法和系统
CN103268441A (zh) * 2013-05-20 2013-08-28 李贵林 一种计算机程序进行指令级监控和分析系统及方法
CN104751056A (zh) * 2014-12-19 2015-07-01 中国航天科工集团第二研究院七〇六所 一种基于攻击库的漏洞验证系统与方法
WO2015131804A1 (en) * 2014-03-07 2015-09-11 Tencent Technology (Shenzhen) Company Limited Call stack relationship acquiring method and apparatus
CN105187393A (zh) * 2015-08-10 2015-12-23 济南大学 一种移动终端恶意软件网络行为重构方法及其系统
CN105653954A (zh) * 2015-12-25 2016-06-08 北京神州绿盟信息安全科技股份有限公司 一种检测恶意代码的方法及装置
CN106934281A (zh) * 2017-03-30 2017-07-07 兴华永恒(北京)科技有限责任公司 一种基于硬件虚拟化技术的虚拟机对抗技术的建立方法
CN107659540A (zh) * 2016-07-25 2018-02-02 中兴通讯股份有限公司 动态行为分析方法、装置、系统及设备
CN107912064A (zh) * 2015-06-27 2018-04-13 迈可菲有限责任公司 壳代码检测
CN107967150A (zh) * 2017-12-19 2018-04-27 郑州云海信息技术有限公司 一种线程执行顺序确定方法、装置、设备及存储介质
CN108229167A (zh) * 2017-12-29 2018-06-29 北京安云世纪科技有限公司 用于对多进程应用进行控制的方法、设备及移动终端
CN108289032A (zh) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 一种数据传输方法及装置
CN109062800A (zh) * 2018-07-28 2018-12-21 安徽捷兴信息安全技术有限公司 一种手机应用测试方法及装置
CN110414220A (zh) * 2019-06-28 2019-11-05 奇安信科技集团股份有限公司 沙箱内程序动态执行过程中的操作文件提取方法及装置
CN111639336A (zh) * 2020-04-16 2020-09-08 中国科学院信息工程研究所 基于文件系统虚拟读写的勒索软件实时检测方法和防御方法
CN112019506A (zh) * 2020-07-28 2020-12-01 杭州安恒信息技术股份有限公司 基于行为识别的钓鱼邮件检测方法、电子装置及介质
CN113672918A (zh) * 2021-08-04 2021-11-19 安天科技集团股份有限公司 恶意代码检测方法、装置、存储介质及电子设备
CN116760620A (zh) * 2023-07-10 2023-09-15 苏州恒臻星科技有限公司 一种工业控制系统的网络风险预警及管控系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1147795C (zh) * 2001-04-29 2004-04-28 北京瑞星科技股份有限公司 检测和清除已知及未知计算机病毒的方法、系统
US7409717B1 (en) * 2002-05-23 2008-08-05 Symantec Corporation Metamorphic computer virus detection
US7124327B2 (en) * 2002-06-29 2006-10-17 Intel Corporation Control over faults occurring during the operation of guest software in the virtual-machine architecture
EP1933248A1 (de) * 2006-12-12 2008-06-18 secunet Security Networks Aktiengesellschaft Verfahren zur sicheren Datenverarbeitung auf einem Computersystem
CN101087196B (zh) * 2006-12-27 2011-01-26 北京大学 多层次蜜网数据传输方法及系统

Cited By (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101989322B (zh) * 2010-11-19 2012-11-21 北京安天电子设备有限公司 自动提取恶意代码内存特征的方法和系统
CN101989322A (zh) * 2010-11-19 2011-03-23 北京安天电子设备有限公司 自动提取恶意代码内存特征的方法和系统
CN102591696A (zh) * 2011-01-14 2012-07-18 中国科学院软件研究所 一种手机软件行为数据提取方法及系统
CN102122330A (zh) * 2011-01-24 2011-07-13 中国人民解放军国防科学技术大学 基于虚拟机的“In-VM”恶意代码检测系统
CN102122330B (zh) * 2011-01-24 2014-12-03 中国人民解放军国防科学技术大学 基于虚拟机的“In-VM”恶意代码检测系统
CN102622536A (zh) * 2011-01-26 2012-08-01 中国科学院软件研究所 一种恶意代码捕获方法
CN102622536B (zh) * 2011-01-26 2014-09-03 中国科学院软件研究所 一种恶意代码捕获方法
CN103108320A (zh) * 2011-11-15 2013-05-15 网秦无限(北京)科技有限公司 一种监控移动设备的应用程序的方法和系统
WO2013071841A1 (zh) * 2011-11-15 2013-05-23 北京网秦天下科技有限公司 一种监控移动设备的应用程序的方法和系统
US9313216B2 (en) 2011-11-15 2016-04-12 Beijing Netqin Technology Co., Ltd. Method and system for monitoring application program of mobile device
CN102750484A (zh) * 2012-06-28 2012-10-24 腾讯科技(深圳)有限公司 一种防止病毒样本自检的方法及装置
CN102779250A (zh) * 2012-06-29 2012-11-14 腾讯科技(深圳)有限公司 文件可控执行的检测方法及虚拟机
CN102779250B (zh) * 2012-06-29 2016-04-13 腾讯科技(深圳)有限公司 文件可控执行的检测方法及虚拟机
CN103019865B (zh) * 2012-12-28 2015-07-15 北京神州绿盟信息安全科技股份有限公司 虚拟机监控方法和系统
CN103019865A (zh) * 2012-12-28 2013-04-03 北京神州绿盟信息安全科技股份有限公司 虚拟机监控方法和系统
CN103268441A (zh) * 2013-05-20 2013-08-28 李贵林 一种计算机程序进行指令级监控和分析系统及方法
WO2015131804A1 (en) * 2014-03-07 2015-09-11 Tencent Technology (Shenzhen) Company Limited Call stack relationship acquiring method and apparatus
CN104751056A (zh) * 2014-12-19 2015-07-01 中国航天科工集团第二研究院七〇六所 一种基于攻击库的漏洞验证系统与方法
CN107912064A (zh) * 2015-06-27 2018-04-13 迈可菲有限责任公司 壳代码检测
CN107912064B (zh) * 2015-06-27 2022-01-14 迈可菲有限责任公司 壳代码检测
CN105187393A (zh) * 2015-08-10 2015-12-23 济南大学 一种移动终端恶意软件网络行为重构方法及其系统
CN105187393B (zh) * 2015-08-10 2018-05-22 济南大学 一种移动终端恶意软件网络行为重构方法及其系统
CN105653954B (zh) * 2015-12-25 2019-02-01 北京神州绿盟信息安全科技股份有限公司 一种检测恶意代码的方法及装置
CN105653954A (zh) * 2015-12-25 2016-06-08 北京神州绿盟信息安全科技股份有限公司 一种检测恶意代码的方法及装置
CN107659540A (zh) * 2016-07-25 2018-02-02 中兴通讯股份有限公司 动态行为分析方法、装置、系统及设备
CN107659540B (zh) * 2016-07-25 2021-01-26 中兴通讯股份有限公司 动态行为分析方法、装置、系统及设备
CN108289032B (zh) * 2017-01-09 2022-05-13 腾讯科技(深圳)有限公司 一种数据传输方法及装置
CN108289032A (zh) * 2017-01-09 2018-07-17 腾讯科技(深圳)有限公司 一种数据传输方法及装置
CN106934281A (zh) * 2017-03-30 2017-07-07 兴华永恒(北京)科技有限责任公司 一种基于硬件虚拟化技术的虚拟机对抗技术的建立方法
CN107967150B (zh) * 2017-12-19 2021-10-15 郑州云海信息技术有限公司 一种线程执行顺序确定方法、装置、设备及存储介质
CN107967150A (zh) * 2017-12-19 2018-04-27 郑州云海信息技术有限公司 一种线程执行顺序确定方法、装置、设备及存储介质
CN108229167B (zh) * 2017-12-29 2022-05-31 北京安云世纪科技有限公司 用于对多进程应用进行控制的方法、设备及移动终端
CN108229167A (zh) * 2017-12-29 2018-06-29 北京安云世纪科技有限公司 用于对多进程应用进行控制的方法、设备及移动终端
CN109062800A (zh) * 2018-07-28 2018-12-21 安徽捷兴信息安全技术有限公司 一种手机应用测试方法及装置
CN110414220B (zh) * 2019-06-28 2021-08-24 奇安信科技集团股份有限公司 沙箱内程序动态执行过程中的操作文件提取方法及装置
CN110414220A (zh) * 2019-06-28 2019-11-05 奇安信科技集团股份有限公司 沙箱内程序动态执行过程中的操作文件提取方法及装置
CN111639336A (zh) * 2020-04-16 2020-09-08 中国科学院信息工程研究所 基于文件系统虚拟读写的勒索软件实时检测方法和防御方法
CN112019506A (zh) * 2020-07-28 2020-12-01 杭州安恒信息技术股份有限公司 基于行为识别的钓鱼邮件检测方法、电子装置及介质
CN112019506B (zh) * 2020-07-28 2023-04-18 杭州安恒信息技术股份有限公司 基于行为识别的钓鱼邮件检测方法、电子装置及介质
CN113672918A (zh) * 2021-08-04 2021-11-19 安天科技集团股份有限公司 恶意代码检测方法、装置、存储介质及电子设备
CN116760620A (zh) * 2023-07-10 2023-09-15 苏州恒臻星科技有限公司 一种工业控制系统的网络风险预警及管控系统
CN116760620B (zh) * 2023-07-10 2024-03-26 释空(上海)品牌策划有限公司 一种工业控制系统的网络风险预警及管控系统

Also Published As

Publication number Publication date
CN101645119B (zh) 2012-05-23

Similar Documents

Publication Publication Date Title
CN101645119B (zh) 一种基于虚拟硬件环境的恶意代码自动分析方法及系统
EP2442230B1 (en) Two pass automated application instrumentation
US9727436B2 (en) Adding a profiling agent to a virtual machine to permit performance and memory consumption analysis within unit tests
CN102054149B (zh) 一种恶意代码行为特征提取方法
CN109583200B (zh) 一种基于动态污点传播的程序异常分析方法
CN111756575B (zh) 存储服务器的性能分析方法及装置、电子设备
US6164841A (en) Method, apparatus, and product for dynamic software code translation system
US7107428B2 (en) Memory-usage tracking tool
US6662362B1 (en) Method and system for improving performance of applications that employ a cross-language interface
CN103399812B (zh) 基于Xen硬件虚拟化的磁盘文件操作监控系统及监控方法
KR101705265B1 (ko) 동적 인스트루먼테이션을 통한 커스텀 코드의 진단을 스트림라인하기위한 메소드 콜의 검출
US8578339B2 (en) Automatically adding bytecode to a software application to determine database access information
US7987456B2 (en) Qualitatively annotated code
CN101872323A (zh) 一种基于虚拟机的故障注入测试方法
EP0926592A2 (en) Software emulation system
US6584487B1 (en) Method, system, and apparatus for managing tasks
JP2009516239A (ja) コンピュータアプリケーションの追跡及びモニタリングを行う汎用のマルチインスタンスメソッド及びgui検出システム
CN102591696A (zh) 一种手机软件行为数据提取方法及系统
CN101984409A (zh) 一种用于Linux系统测试代码注入的方法
US20090089766A1 (en) Automatically Modifying a Native Code Module Accessed from Virtual Machine Bytecode to Determine Execution Information
CN117149658A (zh) 呈现代码实体调用之间的差异
US8887139B2 (en) Virtual system and method of analyzing operation of virtual system
CN109857520B (zh) 一种虚拟机自省中的语义重构改进方法及系统
EP2649516A2 (en) Platform-agnostic diagnostic data collection and display
CN105210077B (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
C14 Grant of patent or utility model
GR01 Patent grant