CN107392024A - 一种恶意程序的识别方法及装置 - Google Patents
一种恶意程序的识别方法及装置 Download PDFInfo
- Publication number
- CN107392024A CN107392024A CN201710671661.0A CN201710671661A CN107392024A CN 107392024 A CN107392024 A CN 107392024A CN 201710671661 A CN201710671661 A CN 201710671661A CN 107392024 A CN107392024 A CN 107392024A
- Authority
- CN
- China
- Prior art keywords
- user behaviors
- behaviors log
- detected
- application program
- program
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Virology (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种恶意程序的识别方法及装置。所述方法包括:获取被检测应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;触发被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;对获取到的被检测的行为日志进行向量化处理;将向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到被检测应用程序的应用类型,样本行为日志为已知应用类型的应用程序的行为日志,应用类型包括恶意程序或非恶意程序。本发明采用了神经网络的行为日志分析方式,提高了恶意应用判断的准确性;并且,不需修改系统源码,无需耗费较高的时间成本、开发成本和维护成本;框架的耦合性较低,便于拓展。
Description
技术领域
本发明涉及互联网数据的处理领域,尤其涉及一种恶意程序的识别方法及装置。
背景技术
本部分旨在为权利要求书中陈述的本发明的实施方式提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
现有的一种恶意程序识别方法是基于特征码识别的方法,其主要是通过获取当前检测样本(恶意的Android应用程序)的特征,其中该特征包括网络访问,文件读取,隐私数据访问等多维度的信息,进而生成匹配于当前样本的特征码,并将生成的特征码与现有特征库中的特征码进行比对,从而确定当前检测样本的恶意性。但是这种方法不具备预测性,它只能针对已经发现的恶意样本进行匹配,未知的样本则无能为力;并且准确性较低,主要体现在未知恶意样本的检测过程中;且维护成本较高,需要维护一份非常庞大的特征码校验库。
现有的另一种恶意程序识别方法是基于Android系统定向定制的技术,主要是通过对Android系统进行定向的定制,具体的定制方向主要如下,监控网络出入接口,监控文件读取接口,监控隐私数据读取接口,监控系统权限获取接口等,目的是截获样本程序的运行轨迹(即获取运行日志),进而发现其恶意性。该方法相较于基于特征码识别的方法,准确率更高,而且具备一定的预测性,因为其判断应用恶意否的机制不再是简单的特征码校验,而是从行为的角度上去审查,如此的机制会弱化对历史样本的依赖性。但是,这种方法技术成本较高,因为该方案涉及修改Android系统源代码,不仅源码量大,而且源码结构复杂,对技术实现要求较高;时间成本较高,既体现在源码修改层面,也体现在源码编译层面;且维护成本较高,因Android的发行版众多,而且随着版本的升级,相应的接口存在调整的可能性,这也就表明有可能需要对每个Android发行版都进行对应的修改,这无疑加大了维护成本。
应该注意,上面对技术背景的介绍只是为了方便对本发明的技术方案进行清楚、完整的说明,并方便本领域技术人员的理解而阐述的。不能仅仅因为这些方案在本发明的背景技术部分进行了阐述而认为上述技术方案为本领域技术人员所公知。
发明内容
本发明实施例提供一种恶意程序的识别方法及装置,以克服现有的识别方法的技术实现和维护成本较高、且准确性不高的问题。
一方面,本发明实施例提供一种恶意程序的识别方法,包括:
获取被检测应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;
触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
对获取到的被检测的行为日志进行向量化处理;
将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到所述被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
另一方面,本发明实施例提供一种恶意程序的识别装置,包括:
应用程序获取模块,用于获取被检测应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;
行为日志获取模块,用于触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
向量化处理模块,用于对获取到的被检测的行为日志进行向量化处理;
应用类型识别模块,用于将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到所述被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
上述技术方案具有如下有益效果:本发明实施例的恶意程序的识别方法及装置,采用了神经网络的行为日志分析方式,提高了恶意应用判断的准确性;并且,环境架设方便,部署安装简单,不需修改系统源码,采用自带的模拟器即可实现,日志的获取通过钩子(Hook)的方式,故无需耗费较高的时间成本、开发成本和维护成本;框架的耦合性较低,便于拓展。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例的恶意程序的识别方法的处理流程图;
图2为本发明实施例的对行为日志的是非状态向量化处理过程示意图;
图3为本发明实施例的对行为日志的多种结果向量化处理过程示意图;
图4为本发明一实施例的恶意程序的识别装置的结构示意图;
图5为本发明另一实施例的恶意程序的识别装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本领域技术技术人员知道,本发明的实施方式可以实现为一种系统、装置、设备、方法或计算机程序产品。因此,本公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
下面参考本发明的若干代表性实施方式,详细阐释本发明的原理和精神。
本发明所涉及的术语包括:
Apk:即AndroidPackage的简称,即Android应用程序的安装包;
Android模拟器:可以运行在电脑上的虚拟设备,不需使用物理设备即可预览、开发和测试Android应用程序;
钩子(Hook)技术:是一种截获windows系统中某应用程序或者所有进程的消息的一种技术,其是Windows消息处理机制的一个平台。应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的。当消息到达后,在目标窗口处理函数之前处理它。钩子机制允许应用程序截获处理window消息或特定事件。Windows系统是建立在事件驱动的机制上的,说穿了就是整个系统都是通过消息的传递来实现的。而钩子是Windows系统中非常重要的系统接口,用它可以截获并处理送给其他应用程序的消息,来完成普通应用程序难以实现的功能。钩子可以监视系统或进程中的各种事件消息,截获发往目标窗口的消息并进行处理。这样,就可以在系统中安装自定义的钩子,监视系统中特定事件的发生,完成特定的功能,比如截获键盘、鼠标的输入,屏幕取词,日志监视等等。可见,利用钩子可以实现许多特殊而有用的功能。另外,钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统,每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权,这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
本发明设计了一个更全面、更稳定、更高效的恶意程序的识别方法及装置,主要应用于智能系统中的应用程序的判断。
图1为本发明实施例的恶意程序的识别方法的处理流程图。所述方法包括:
步骤S101,获取被检测应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;
步骤S102,触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
步骤S103,对获取到的被检测的行为日志进行向量化处理;
步骤S104,将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
具体实施时,在步骤S101中,以Android系统为例说明,可以获取被检测的Apk文件,并将Android模拟器作为本发明实施例的检测载体。这是因为,现有的大部分的Android应用程序都存在着模拟器的检测行为,简而言之就是判断所处环境是否为模拟器,如为模拟器,则停止一切的应用行为并退出。很明显,这对检测日志的获取是极其不利的,故本发明通过钩子(Hook)的方式,对常见的模拟器躲避接口进行了隐藏,让应用程序即使处于Android模拟器,依旧如处于真机版释放其行为。当然,本发明的实现不限于安卓系统,同样适用于其他智能系统。
具体实施时,在步骤S102中,通过自动化的模拟用户操作脚本,触发所述被检测应用程序的行为。同样以Android系统为例说明,现有的技术方案中,大都采用机器随机点击的事件触发方式,该方式虽执行效率高,但准确性低,故本发明中采用了折中的方式,通过动态的广播Android系统中的状态信息,让处于其中的应用程序暴露其行为,不仅如此,自动化脚本的实现方式,大大提高了执行效率。
当被检测应用的行为被大量触发后,记录下的用户的行为日志。用户的行为日志中包含大量有价值的信息,如是否访问网络、是否读取隐私数据、是否访问文件、是否获取系统权限等。本发明中,同样通过钩子Hook的方式获取行为日志中的信息。
具体实施时,在步骤S103中,在获取到用户的行为日志后,对被检测的行为日志包含的信息进行数值化处理时,针对包含的每一个信息,使用预先设置的数值表示对应的结果,所述行为日志中包含的每一个信息对应至少两种可能结果,并预先为各可能结果设置不同数值。
在一实施例中,如图2所示,为是非状态的向量化,即采用1和0来表示信息的属性。例如表示行为是否被触发,用1来表示已触发的行为,而0则表示该行为并未触发。
除了简单的是非状态的向量化之外,还有更为复杂的向量化,即多种可能结果的同时存在。具体如图3和表1所示:
表1
文件名称 | 数值表示 |
文件A | 11 |
文件B | 12 |
文件C | 13 |
如图3和表1所示,其表示包含多种结果的行为日志,在向量化的过程中,会将不同的结果映射至一个预先设置好的数值,进而完成向量化,其与是非状态的向量化相比,所能展示的信息更为详尽,也更为具体,对于后期的计算处理也更有帮助。具体的选择因依据行为日志的格式以及算法计算的要求而定。
具体实施时,在步骤S104中,本发明主要采用的神经网络为前向网络,即网络中没有反馈。这种网络实现了信号从输入空间到输出空间的变换,它的信息处理能力来自于简单的非线性函数的多次复合,网络结构简单,易于实现。前向网络可分为三层,分别是输入层,隐藏层和输出层,其中值得注意的是输入层和输出层均为一层,但介于二者之间的隐藏层可为多层,每一层中的圆指代神经元(神经元是神经网络中具备信息处理能力的最小单元)。神经网络的处理过程分为训练过程和预测过程。将已知具体分类的行为日志向量化处理后,经输入层进入神经网络,并通过多层隐藏层的处理,最终汇至输出层,得出最终的分类函数即训练过程。预测过程则是利用训练过程获得的分类函数,对未知的行为日志进行分类预测。
在本发明实施例中,构建神经网络的步骤是在最初进行的,即获取大量已知具体应用分类的样本行为日志,经过输入层、多层隐藏层的处理和输出层,构建出最初的神经网络。其中,神经网络的构建方法为:获取已知应用类型的应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;大量触发已知应用类型的应用程序的行为,并通过Hook方式从模拟器中获取样本行为日志;对获取到的大量样本行为日志进行向量化处理;使用向量化处理后的样本行为日志训练用于识别应用类型的神经网络。而在神经网络的应用期间,会不断采集到已知具体应用分类的行为日志,利用这些已知具体应用分类的行为日志,不断训练构建的神经网络,使得神经网络的判断越来越准确。并且,还可以依据新的日志行为对应用的恶意性进行准确评估,即具备了预测性。
应当注意,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
在介绍了本发明示例性实施方式的方法之后,接下来,参考图4对本发明示例性实施方式的恶意程序的识别装置进行介绍。该装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的术语“模块”和“单元”,可以是实现预定功能的软件和/或硬件。尽管以下实施例所描述的模块较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4为本发明实施例的恶意程序的识别装置结构示意图。如图4所示,包括:
应用程序获取模块401,用于获取被检测应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;
行为日志获取模块402,用于触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
向量化处理模块403,用于对获取到的被检测的行为日志进行向量化处理;
应用类型识别模块404,用于将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到所述被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
具体实施时,所述日志记录模块402具体用于通过自动化的模拟用户操作脚本,触发所述被检测应用程序或已知应用类型的应用程序的行为。
具体实施时,所述日志记录模块402还用于记录用户的行为日志,其中,所记录的用户的行为日志中包含的信息包括:是否访问网络、是否读取隐私数据、是否访问文件、是否获取系统权限,所述行为日志包括被检测的行为日志和样本行为日志。
具体实施时,所述向量化模块403用于对所述行为日志进行向量化处理,具体包括:对被检测的行为日志或样本行为日志中包含的信息进行数值化处理时,针对包含的每一个信息,使用预先设置的数值表示对应的结果,所述行为日志中包含的每一个信息对应至少两种可能结果,并预先为各可能结果设置不同数值。
在另一实施例中,如图5所示,本发明的恶意程序的识别装置还包括:
神经网络训练模块405,用于根据样本行为日志训练用于识别应用类型的神经网络,其具体包括:
利用所述应用程序获取模块401获取已知应用类型的应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行,利用所述行为日志获取模块402大量触发已知应用类型的应用程序的行为,并通过Hook方式从模拟器中获取样本行为日志,利用所述向量化处理模块403对获取到的大量样本行为日志进行向量化处理;
以及,使用向量化处理后的样本行为日志训练用于识别应用类型的神经网络。
此外,尽管在上文详细描述中提及了恶意程序的识别装置的若干单元,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。同样,上文描述的一个单元的特征和功能也可以进一步划分为由多个单元来具体化。
本发明实施例的恶意程序的识别方法及装置,采用了神经网络的行为日志分析方式,提高了恶意应用判断的准确性;并且,环境架设方便,部署安装简单,不需修改系统源码,采用自带的模拟器即可实现,日志的获取是通过钩子(Hook)的方式,故无需耗费较高的时间成本、开发成本和维护成本;框架的耦合性较低,便于拓展。
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广范围相一致。
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
本领域技术人员还可以了解到本发明实施例列出的各种说明性逻辑块(illustrative logical block),单元,和步骤可以通过电子硬件、电脑软件,或两者的结合进行实现。为清楚展示硬件和软件的可替换性(interchangeability),上述的各种说明性部件(illustrative components),单元和步骤已经通用地描述了它们的功能。这样的功能是通过硬件还是软件来实现取决于特定的应用和整个系统的设计要求。本领域技术人员可以对于每种特定的应用,可以使用各种方法实现所述的功能,但这种实现不应被理解为超出本发明实施例保护的范围。
本发明实施例中所描述的各种说明性的逻辑块,或单元都可以通过通用处理器,数字信号处理器,专用集成电路(ASIC),现场可编程门阵列或其它可编程逻辑装置,离散门或晶体管逻辑,离散硬件部件,或上述任何组合的设计来实现或操作所描述的功能。通用处理器可以为微处理器,可选地,该通用处理器也可以为任何传统的处理器、控制器、微控制器或状态机。处理器也可以通过计算装置的组合来实现,例如数字信号处理器和微处理器,多个微处理器,一个或多个微处理器联合一个数字信号处理器核,或任何其它类似的配置来实现。
本发明实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件模块、或者这两者的结合。软件模块可以存储于RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。示例性地,存储媒介可以与处理器连接,以使得处理器可以从存储媒介中读取信息,并可以向存储媒介存写信息。可选地,存储媒介还可以集成到处理器中。处理器和存储媒介可以设置于ASIC中,ASIC可以设置于用户终端中。可选地,处理器和存储媒介也可以设置于用户终端中的不同的部件中。
在一个或多个示例性的设计中,本发明实施例所描述的上述功能可以在硬件、软件、固件或这三者的任意组合来实现。如果在软件中实现,这些功能可以存储与电脑可读的媒介上,或以一个或多个指令或代码形式传输于电脑可读的媒介上。电脑可读媒介包括电脑存储媒介和便于使得让电脑程序从一个地方转移到其它地方的通信媒介。存储媒介可以是任何通用或特殊电脑可以接入访问的可用媒体。例如,这样的电脑可读媒体可以包括但不限于RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁性存储装置,或其它任何可以用于承载或存储以指令或数据结构和其它可被通用或特殊电脑、或通用或特殊处理器读取形式的程序代码的媒介。此外,任何连接都可以被适当地定义为电脑可读媒介,例如,如果软件是从一个网站站点、服务器或其它远程资源通过一个同轴电缆、光纤电缆、双绞线、数字用户线(DSL)或以例如红外、无线和微波等无线方式传输的也被包含在所定义的电脑可读媒介中。所述的碟片(disk)和磁盘(disc)包括压缩磁盘、镭射盘、光盘、DVD、软盘和蓝光光盘,磁盘通常以磁性复制数据,而碟片通常以激光进行光学复制数据。上述的组合也可以包含在电脑可读媒介中。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种恶意程序的识别方法,其特征在于,包括:
获取被检测应用程序的安装包文件,并通过钩子Hook方式将其置于模拟器中运行;
触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
对获取到的被检测的行为日志进行向量化处理;
将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到所述被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
2.根据权利要求1所述的恶意程序的识别方法,其特征在于,所述神经网络的构建方法,包括:
获取已知应用类型的应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行;
大量触发已知应用类型的应用程序的行为,并通过Hook方式从模拟器中获取样本行为日志;
对获取到的大量样本行为日志进行向量化处理;
使用向量化处理后的样本行为日志训练用于识别应用类型的神经网络。
3.根据权利要求1或2所述的恶意程序的识别方法,其特征在于,
通过自动化的模拟用户操作脚本,触发所述被检测应用程序或已知应用类型的应用程序的行为。
4.根据权利要求1或2所述的恶意程序的识别方法,其特征在于,所述行为日志中包含如下信息:是否访问网络、是否读取隐私数据、是否访问文件、是否获取系统权限,所述行为日志包括被检测的行为日志和样本行为日志。
5.根据权利要求4所述的恶意程序的识别方法,其特征在于,
对被检测的行为日志或样本行为日志中包含的信息进行数值化处理时,针对包含的每一个信息,使用预先设置的数值表示对应的结果,所述行为日志中包含的每一个信息对应至少两种可能结果,并预先为各可能结果设置不同数值。
6.一种恶意程序的识别装置,其特征在于,包括:
应用程序获取模块,用于获取被检测应用程序的安装包文件,并通过钩子Hook方式将其置于模拟器中运行;
行为日志获取模块,用于触发所述被检测应用程序的行为,并通过Hook方式从模拟器中获取被检测的行为日志;
向量化处理模块,用于对获取到的被检测的行为日志进行向量化处理;
应用类型识别模块,用于将所述向量化处理后的被检测的行为日志发送至基于样本行为日志构建的神经网络中进行识别,得到所述被检测应用程序的应用类型,所述样本行为日志为已知应用类型的应用程序的行为日志,所述应用类型包括恶意程序或非恶意程序。
7.根据权利要求6所述的恶意程序的识别装置,其特征在于,还包括神经网络训练模块,用于根据样本行为日志训练用于识别应用类型的神经网络,其具体包括:
利用所述应用程序获取模块获取已知应用类型的应用程序的安装包文件,并通过Hook方式将其置于模拟器中运行,利用所述行为日志获取模块大量触发已知应用类型的应用程序的行为,并通过Hook方式从模拟器中获取样本行为日志,利用所述向量化处理模块对获取到的大量样本行为日志进行向量化处理;
以及,使用向量化处理后的样本行为日志训练用于识别应用类型的神经网络。
8.根据权利要求6或7所述的恶意程序的识别装置,其特征在于,所述行为日志获取模块,具体用于通过自动化的模拟用户操作脚本,触发所述被检测应用程序或已知应用类型的应用程序的行为。
9.根据权利要求6或7所述的恶意程序的识别装置,其特征在于,所述行为日志中包含如下信息:是否访问网络、是否读取隐私数据、是否访问文件、是否获取系统权限,所述行为日志包括被检测的行为日志和样本行为日志。
10.根据权利要求9所述的恶意程序的识别装置,其特征在于,所述向量化处理模块,具体用于对被检测的行为日志或样本行为日志中包含的信息进行数值化处理时,针对包含的每一个信息,使用预先设置的数值表示对应的结果,所述行为日志中包含的每一个信息对应至少两种可能结果,并预先为各可能结果设置不同数值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671661.0A CN107392024A (zh) | 2017-08-08 | 2017-08-08 | 一种恶意程序的识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671661.0A CN107392024A (zh) | 2017-08-08 | 2017-08-08 | 一种恶意程序的识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107392024A true CN107392024A (zh) | 2017-11-24 |
Family
ID=60355066
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710671661.0A Pending CN107392024A (zh) | 2017-08-08 | 2017-08-08 | 一种恶意程序的识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107392024A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108563951A (zh) * | 2018-04-13 | 2018-09-21 | 腾讯科技(深圳)有限公司 | 病毒检测方法及装置 |
CN109271356A (zh) * | 2018-09-03 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 日志文件格式处理方法、装置、计算机设备和存储介质 |
CN109492391A (zh) * | 2018-11-05 | 2019-03-19 | 腾讯科技(深圳)有限公司 | 一种应用程序的防御方法、装置和可读介质 |
CN110008698A (zh) * | 2018-01-04 | 2019-07-12 | 深圳市腾讯计算机系统有限公司 | 病毒检测方法及装置 |
CN110737900A (zh) * | 2019-09-30 | 2020-01-31 | 北京智明星通科技股份有限公司 | 网页功能测试方法及装置、服务器和计算机可读存储介质 |
CN110837638A (zh) * | 2019-11-08 | 2020-02-25 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
WO2021022850A1 (en) * | 2019-08-07 | 2021-02-11 | Huawei Technologies Co., Ltd. | Neural-network-based distance metric for use in a communication system |
CN113312619A (zh) * | 2021-04-23 | 2021-08-27 | 浙江大学 | 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 |
CN113722712A (zh) * | 2021-09-06 | 2021-11-30 | 杭州安恒信息技术股份有限公司 | 一种基于hook的程序恶意行为的检测方法及相关装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103500307A (zh) * | 2013-09-26 | 2014-01-08 | 北京邮电大学 | 一种基于行为模型的移动互联网恶意应用软件检测方法 |
CN103902897A (zh) * | 2012-12-26 | 2014-07-02 | 腾讯科技(深圳)有限公司 | 计算机病毒的判别方法及系统 |
CN106130959A (zh) * | 2016-06-12 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 恶意应用识别方法及装置 |
CN106845228A (zh) * | 2016-12-28 | 2017-06-13 | 微梦创科网络科技(中国)有限公司 | 一种检测恶意程序的方法和装置 |
-
2017
- 2017-08-08 CN CN201710671661.0A patent/CN107392024A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902897A (zh) * | 2012-12-26 | 2014-07-02 | 腾讯科技(深圳)有限公司 | 计算机病毒的判别方法及系统 |
CN103500307A (zh) * | 2013-09-26 | 2014-01-08 | 北京邮电大学 | 一种基于行为模型的移动互联网恶意应用软件检测方法 |
CN106130959A (zh) * | 2016-06-12 | 2016-11-16 | 微梦创科网络科技(中国)有限公司 | 恶意应用识别方法及装置 |
CN106845228A (zh) * | 2016-12-28 | 2017-06-13 | 微梦创科网络科技(中国)有限公司 | 一种检测恶意程序的方法和装置 |
Non-Patent Citations (1)
Title |
---|
LIOR ROKACH: "《 模式分类的集成方法》", 30 November 2015 * |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008698A (zh) * | 2018-01-04 | 2019-07-12 | 深圳市腾讯计算机系统有限公司 | 病毒检测方法及装置 |
CN108563951A (zh) * | 2018-04-13 | 2018-09-21 | 腾讯科技(深圳)有限公司 | 病毒检测方法及装置 |
CN108563951B (zh) * | 2018-04-13 | 2023-03-24 | 腾讯科技(深圳)有限公司 | 病毒检测方法及装置 |
CN109271356A (zh) * | 2018-09-03 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 日志文件格式处理方法、装置、计算机设备和存储介质 |
CN109271356B (zh) * | 2018-09-03 | 2024-05-24 | 中国平安人寿保险股份有限公司 | 日志文件格式处理方法、装置、计算机设备和存储介质 |
CN109492391A (zh) * | 2018-11-05 | 2019-03-19 | 腾讯科技(深圳)有限公司 | 一种应用程序的防御方法、装置和可读介质 |
CN109492391B (zh) * | 2018-11-05 | 2023-02-28 | 腾讯科技(深圳)有限公司 | 一种应用程序的防御方法、装置和可读介质 |
US10979202B2 (en) | 2019-08-07 | 2021-04-13 | Huawei Technologies Co. Ltd. | Neural-network-based distance metric for use in a communication system |
WO2021022850A1 (en) * | 2019-08-07 | 2021-02-11 | Huawei Technologies Co., Ltd. | Neural-network-based distance metric for use in a communication system |
CN110737900B (zh) * | 2019-09-30 | 2021-08-10 | 北京智明星通科技股份有限公司 | 网页功能测试方法及装置、服务器和计算机可读存储介质 |
CN110737900A (zh) * | 2019-09-30 | 2020-01-31 | 北京智明星通科技股份有限公司 | 网页功能测试方法及装置、服务器和计算机可读存储介质 |
CN110837638B (zh) * | 2019-11-08 | 2020-09-01 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
CN110837638A (zh) * | 2019-11-08 | 2020-02-25 | 鹏城实验室 | 一种勒索软件的检测方法、装置、设备及存储介质 |
CN113312619A (zh) * | 2021-04-23 | 2021-08-27 | 浙江大学 | 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 |
CN113312619B (zh) * | 2021-04-23 | 2023-09-05 | 浙江大学 | 基于小样本学习的恶意进程检测方法、装置、电子设备及存储介质 |
CN113722712A (zh) * | 2021-09-06 | 2021-11-30 | 杭州安恒信息技术股份有限公司 | 一种基于hook的程序恶意行为的检测方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107392024A (zh) | 一种恶意程序的识别方法及装置 | |
US20220207137A1 (en) | Recurrent Neural Network Based Anomaly Detection | |
Ab Rahman et al. | Forensic-by-design framework for cyber-physical cloud systems | |
CN104977874B (zh) | 工业使能移动设备 | |
CN109478263A (zh) | 用于体系结构评估和策略执行的系统和设备 | |
CN107659570A (zh) | 基于机器学习与动静态分析的Webshell检测方法及系统 | |
CN104281808B (zh) | 一种通用的Android恶意行为检测方法 | |
CN101777062A (zh) | 场境感知的实时计算机保护系统和方法 | |
CN107888554A (zh) | 服务器攻击的检测方法和装置 | |
US20170177865A1 (en) | Industrial Control System Emulator for Malware Analysis | |
CN106130959B (zh) | 恶意应用识别方法及装置 | |
CN113918526B (zh) | 日志处理方法、装置、计算机设备和存储介质 | |
US20120131668A1 (en) | Policy-Driven Detection And Verification Of Methods Such As Sanitizers And Validators | |
CN114662618B (zh) | 一种基于联邦学习的故障诊断方法、装置及相关设备 | |
CN106126551A (zh) | 一种Hbase数据库访问日志的生成方法、装置及系统 | |
Zhu et al. | Survey of testing methods and testbed development concerning Internet of Things | |
CN117235745B (zh) | 基于深度学习工控漏洞挖掘方法、系统、设备和存储介质 | |
CN106649110A (zh) | 软件测试方法及系统 | |
CN111316272A (zh) | 使用行为和深度分析的先进网络安全威胁减缓 | |
CN113965497B (zh) | 服务器异常识别方法、装置、计算机设备及可读存储介质 | |
CN106844219A (zh) | 应用检测方法及应用检测装置 | |
CN106845228A (zh) | 一种检测恶意程序的方法和装置 | |
Williams | Distinguishing Internet-facing ICS devices using PLC programming information | |
CN114567374A (zh) | 检验设施点运行状况方法、及其相关设备 | |
Lee et al. | Collecting big data from automotive ECUs beyond the CAN bandwidth for fault visualization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171124 |
|
RJ01 | Rejection of invention patent application after publication |