CN111291372A - 一种基于软件基因技术对终端设备文件检测的方法及装置 - Google Patents
一种基于软件基因技术对终端设备文件检测的方法及装置 Download PDFInfo
- Publication number
- CN111291372A CN111291372A CN202010069707.3A CN202010069707A CN111291372A CN 111291372 A CN111291372 A CN 111291372A CN 202010069707 A CN202010069707 A CN 202010069707A CN 111291372 A CN111291372 A CN 111291372A
- Authority
- CN
- China
- Prior art keywords
- file
- unknown
- hash
- software
- hash list
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 61
- 238000005516 engineering process Methods 0.000 title claims abstract description 42
- 238000013515 script Methods 0.000 claims abstract description 88
- 238000001514 detection method Methods 0.000 claims description 61
- 238000012545 processing Methods 0.000 claims description 14
- 230000002155 anti-virotic effect Effects 0.000 description 34
- 238000010586 diagram Methods 0.000 description 11
- 244000035744 Hura crepitans Species 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000005034 decoration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 108090000623 proteins and genes Proteins 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
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/562—Static detection
-
- 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
- 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/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Abstract
本申请公开了一种基于软件基因技术对终端设备文件检测的方法及装置。其中,该方法用于服务器端,包括:将脚本文件以及第一哈希列表发送至终端设备,其中所述脚本文件为与所述终端设备的操作系统匹配的脚本文件,所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及接收从终端设备发送的未知文件,并对所述未知文件进行检测,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
Description
技术领域
本申请涉及网络安全技术领域,特别是涉及一种基于软件基因技术对终端设备文件检测的方法及装置。
背景技术
随着互联网的发展,越来越多的不法分子利用网络中存在着的各种漏洞,去恶意攻击别人的终端设备,导致用户受到不同程度的损失。因此如何识别出可能会给终端设备带来安全隐患的恶意文件,成为网络安全研究的重要问题之一。
目前广泛采用在终端系统中安装杀毒软件对文件进行恶意性检测。但是这种检测方式无法同时适用于各种操作系统,导致兼容性差;而且在终端设备安装运行杀毒软件时,尤其是在检测运行过程中需要占用系统大量的资源;并且市场上杀毒软件非常多,杀毒软件本身是否存在漏洞等安全隐患,用户基本无法辨别。
针对上述的现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等技术问题,目前尚未提出有效的解决方案。
发明内容
本公开的实施例提供了一种基于软件基因技术对终端设备文件检测的方法以及装置,以至少解决现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等的技术问题。
根据本公开实施例的一个方面,提供了一种对基于软件基因技术对终端设备文件检测的方法,用于服务器端,其特征在于,包括:将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
根据本公开实施例的一个方面,提供了一种基于软件基因技术对终端设备文件检测的方法,用于终端设备,包括:接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及将未知文件发送至服务器。
根据本公开实施例的另一个方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时由处理器执行以上任意一项所述的方法。
根据本公开实施例的另一个方面,还提供了一种基于软件基因技术对终端设备文件检测的装置,用于服务器端,包括:发送模块,用于将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及检测模块,用于接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
根据本公开实施例的另一个方面,还提供了一种基于软件基因技术对终端设备文件检测的装置,用于终端设备,包括:遍历模块,用于接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;生成模块,用于根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;对比模块,用于利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及发送模块,用于将未知文件发送至服务器。
根据本公开实施例的另一个方面,还提供了一种基于软件基因技术对终端设备文件检测的装置,用于服务器端,包括:第一处理器;以及第一存储器,与第一处理器连接,用于为第一处理器提供处理以下处理步骤的指令:将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
根据本公开实施例的另一个方面,还提供了一种基于软件基因技术对终端设备文件检测的装置,用于终端设备,包括:第二处理器;以及第二存储器,与第二处理器连接,用于为第二处理器提供处理以下处理步骤的指令:接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及将未知文件发送至服务器。
在本公开实施例中,服务器将与终端设备的操作系统匹配的脚本文件与预先设置的软件库的第一哈希列表发送至终端设备。终端设备通过脚本文件对文件系统中的文件进行遍历,生成第二哈希列表,终端设备将第一哈希类别与第二哈希列表进行对比,确定出无法判定是恶意文件和非恶意文件的未知文件,终端设备将未知文件发送至服务器。服务器通过对未知文件进行软件基因检测,判断未知文件的恶意性,生成相应的检测报告。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。进而解决了现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等的技术问题。
附图说明
此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
图1是用于实现根据本公开实施例1所述的方法的计算机终端的硬件结构框图;
图2是根据本公开实施例1所述的基于软件基因技术对终端设备文件检测的系统的示意图;
图3是根据本公开实施例1的第一个方面所述的基于软件基因技术对终端设备文件检测的方法的流程示意图;
图4是根据本公开实施例1的第二个方面所述的基于软件基因技术对终端设备文件检测的方法的流程示意图;
图5是根据本公开实施例1所述的基于软件基因技术对终端设备文件检测的系统构成框架的示意图;
图6是根据本公开实施例1所述的基于软件基因技术对终端设备文件检测的方法的检测流程示意图;
图7是根据本公开实施例2的第一个方面所述基于软件基因技术对终端设备文件检测的装置的示意图;
图8是根据本公开实施例2所述的第二个方面基于软件基因技术对终端设备文件检测的装置的示意图;
图9是根据本公开实施例3所述的第一个方面基于软件基因技术对终端设备文件检测的装置的示意图;以及
图10是根据本公开实施例3所述的第二个方面基于软件基因技术对终端设备文件检测的装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本公开的技术方案,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本实施例,还提供了一种基于软件基因技术对终端设备文件检测的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的计算设备中执行。图1示出了一种用于实现基于软件基因技术对终端设备文件检测的计算设备的硬件结构框图。如图1所示,计算设备可以包括一个或多个处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器、以及用于通信功能的传输装置。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算设备中的其他元件中的任意一个内。如本公开实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器可用于存储应用软件的软件程序以及模块,如本公开实施例中的基于软件基因技术对终端设备文件检测的方法对应的程序指令/数据存储装置,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的应用程序的基于软件基因技术对终端设备文件检测的方法。存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算设备的通信供应商提供的无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算设备的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算设备可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算设备中的部件的类型。
图2是根据本实施例所述的基于软件基因技术对终端设备文件检测的系统的示意图。参照图2所示,该系统包括:终端设备100、服务器200以及预先设置的软件库300。其中,终端设备100可以是普通笔记本电脑、移动终端、智能设备、嵌入式设备等,可能会有不同操作系统,例如,Windows、Android、IOS、Linux等。需要说明的是,系统中的终端设备100以及服务器200均可适用上面所述的硬件结构。
在上述运行环境下,根据本实施例的第一个方面,提供了一种基于软件基因技术对终端设备文件检测的方法,用于服务器端,该方法由图2中所示的服务器200实现。图3示出了该方法的流程示意图,参考图3所示,该方法包括:
S302:将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及
S304:接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
具体地,首先,服务器200与终端设备100建立远程通信的链接,例如,服务器200基于B/S架构,通过接口的方式获取终端设备的IP,账号,密码,以及类型,通过远程链接工具(例如,SSH、RDP等远程链接工具)与终端设备100建立通信,将脚本文件以及第一哈希列表发送至第一终端设备100。其中,服务器200中包含有一组开源脚本,对应不同操作系统的终端设备,服务器100是将与终端设备100的操作系统匹配的脚本文件发送至终端设备100。例如,终端设备100是windows操作设备,服务器200向终端设备100发送的脚本文件就是兼容windows操作设备的脚本文件;终端设备100是linux操作设备,服务器200向终端设备100发送的脚本文件就是兼容linux操作设备的脚本文件。第一哈希列表中包含与预先设置的软件库中记录的软件对应的多个哈希值。
进一步地,终端设备100通过脚本文件对文件系统中的文件进行遍历,并生成第二哈希列表与第一哈希列表进行对比,确定出文件系统中的未知文件,其中未知文件为通过对比哈希值无法确定是恶意文件还是非恶意文件的文件。终端设备100将未知文件发送至服务器200,服务器200再对这些未知文件进行检测,得出检测结果。
从而通过这种方式,服务器通过将与终端设备的操作系统匹配的脚本文件发送至终端设备。终端设备通过脚本文件遍历文件系统中的文件,对比哈希值,确定出未知文件,再将未知文件发送至服务器,服务器对未知文件进行检测,判断未知文件的恶意性。
可选地,接收从终端设备发送的未知文件,并对未知文件进行检测,还包括以下所述的至少一项操作:提取未知文件的软件基因,并对软件基因进行检测;对未知文件进行沙箱分析;以及对未知文件进行恶意特征检测。
具体地,服务器200会提取未知文件的软件基因,对该软件基因进行检测,如果该软件基因不安全,那么确定该未知文件为恶意文件。通过检测未知文件中的软件基因,来判定该未知文件是否为恶意文件,检测未知文件的安全性。服务器200还可以对未知文件进行沙箱分析。其中,沙箱是一种虚拟系统程序,从而作为一个独立的虚拟环境,可以用来测试一些无法确定的未知文件。例如,服务器200将未知文件在虚拟环境下运行,从而根据运行中的情况判断该未知文件是否为恶意文件。服务器200还可以对未知文件进行恶意特征检测,检测该未知文件中是否含有可能会危害终端设备100的恶意特征。从而通过多种检测方式对未知文件进行检测。
可选地,在接收从终端设备发送的未知文件,并对未知文件进行检测的操作之后,还包括:根据检测结果,生成检测报告。
具体地,服务器200对未知文件进行检测后,会生成相应的检测报告,以便用户通过服务器200查看该检测报告。从而,以便后续对这些文件进行处理,从而保护用户的终端设备的安全性。
从而根据本实施例的第一个方面,服务器通过将与终端设备的操作系统匹配的脚本文件发送至终端设备。终端设备通过脚本文件遍历文件系统中的文件,对比哈希值,确定出未知文件,再将未知文件发送至服务器,服务器对未知文件进行检测,判断未知文件的恶意性。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。
此外,根据本实施例的第二个方面,提供了一基于软件基因技术对终端设备文件检测的方法,用于终端设备,该方法由图2中所示的终端设备100实现。图4示出了该方法的流程示意图,参考图4所示,该方法包括:
S402:接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;
S404:根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;
S406:利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及
S408:将未知文件发送至服务器。
具体地,首先,终端设备100会接收服务器200发送的脚本文件和第一哈希表。其中,终端设备100接收到的脚本文件是与终端设备100的操作系统匹配的脚本文件。例如,终端设备100是windows操作设备,终端设备100接收到的脚本文件就是兼容windows操作设备的脚本文件;终端设备100是linux操作设备,终端设备100接收到的脚本文件就是兼容linux操作设备的脚本文件。第一哈希列表中包含与预先设置的软件库中记录的软件对应的多个哈希值。终端设备100利用脚本文件对文件系统中的文件进行遍历,例如采用广度优先遍历算法对终端设备的文件系统中的文件进行遍历(对应于步骤S402)。
进一步地,服务器200根据遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,多个哈希值与所遍历的文件一一对应,例如,第一哈希值与第一文件对应,第二哈希值与第二文件对应,以此类推(对应于步骤S404)。
最后,终端设备100将第一哈希列表中与第二哈希列表进行对比,确定中文件系统中的未知文件。其中,未知文件为当第二哈希列列表中的文件的哈希值找不到与第一哈希列表中匹配的哈希值时,无法确定该未知文件是恶意文件还是非恶意文件(对应于步骤S406)。终端设备将未知文件发送至服务器200。
可选地,利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,还包括:将第一哈希列表中的多个哈希值与第二哈希列表中的哈希值进行对比,根据对比结果,确定文件系统中的恶意文件;根据对比结果,确定文件系统中的非恶意文件;以及根据对比结果,确定文件系统中的未知文件。
具体地,终端设备100利用脚本文件将第一哈列表与第二哈希列表进行对比,根据所对比的结果,确定出文件系统中的恶意文件、非恶意文件(正常文件)以及未知文件。
例如,第二哈希列表中有一个文件的哈希值为a,终端设备100利用脚本文件将该文件的哈希值与软件库300中第一哈希列表的哈希值进行对比,如果第一列表中有和哈希值a匹配的哈希值,并且和哈希值a匹配的哈希值是恶意软件的哈希值,确定文件系统中哈希值为a的文件为恶意文件。第二哈希列表中有一个文件的哈希值为b,终端设备100利用脚本文件将该文件的哈希值与软件库300中的第一哈希列表的哈希值进行对比,如果第一列表中有和哈希值b匹配的哈希值,并且和哈希值b匹配的哈希值是非恶意软件(正常软件)的哈希值,确定文件系统中哈希值为b的文件为非恶意文件(正常软件)。
进一步,例如第二哈希列表中有一个文件的哈希值为c,终端设备100利用脚本文件将该文件的哈希值与软件库300中第一哈希列表的哈希值进行对比,如果找不到与哈希值c匹配的哈希值,那么确定该文件为未知文件。
从而,通过与预先设置的软件库对比哈希值,将非恶意文件或者恶意文件查找出来,其他的无法匹配哈希值的文件为未知文件,提高检测文件的速度。
从而根据本实施例的第二个方面,通过接收服务器发送的脚本文件,利用该脚本文件遍历终端设备文件系统中的文件,并根据所遍历的文件,生成相应的哈希列表,根据哈希列表中的哈希值,确定文件系统中的未知文件,将未知文件发送至服务器进行检测。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。
此外,基于软件基因技术对终端设备文件检测的系统构成框架参考图5所示。系统由:检测对象、检测引擎阵列、全球软件信誉库和分离式软件检测模块组成。检测对象:指各种智能化终端设备,包括:普通PC、服务器、智能手机、智能设备、IOT设备、嵌入式设备、工业互联网设施等。
检测引擎阵列:使用多套戎磐-软件基因恶意代码检测引擎组成检测引擎阵列,融合软件基因、恶意特征、动态沙箱、戎磐云在线检测等多种检测方式,对检测样本进行全方位恶意性判断。
全球软件信誉库:由全球软件黑名单库和全球软件白名单库组成。在对智能终端检测过程中,为了提升检测速度,采用哈希比对技术,快速从全球软件信誉库中确认已知的正常软件和恶意软件。对于未知软件,再推送至智戎系统进行检测,兼顾检测的准确性和效率。
分离式软件检测模块:由一组开源脚本组成,分别对应于不同智能终端系统。模块使用远程链接工具与智能终端建立通信,采用广度优先遍历算法对终端中文件系统建立哈希列表。通过与全球软件信誉库的比对,迅速形成可信软件列表、恶意软件列表和未知软件列表。最后调用检测引擎阵列对未知软件列表中的程序进行恶意性检测,完成对智能终端的非植入式检测。检测流程图参考图6所示。
本实施例的重点保护点:1、无需在终端文件系统安装检测程序,而通过脚本执行,本身不存在漏洞,安全可控;2、云端检测引擎采取软件基因技术,实现家族判定,对终端文件系统中发现的变种恶意代码检测提供支持;3、不受限于终端文件系统类型,广泛试用于各种文件系统,兼容性强。
此外,参考图1所示,根据本实施例的第三个方面,提供了一种存储介质104。所述存储介质104包括存储的程序,其中,在所述程序运行时由处理器执行以上任意一项所述的方法。
从而根据本实施例,服务器将与终端设备的操作系统匹配的脚本文件与预先设置的软件库的第一哈希列表发送至终端设备。终端设备通过脚本文件对文件系统中的文件进行遍历,生成第二哈希列表,终端设备将第一哈希类别与第二哈希列表进行对比,确定出无法判定是恶意文件和非恶意文件的未知文件,终端设备将未知文件发送至服务器。服务器通过对未知文件进行软件基因检测,判断未知文件的恶意性,生成相应的检测报告。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。进而解决了现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等的技术问题。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
图7示出了根据本实施例的第一个方面所述的基于软件基因技术对终端设备文件检测的装置700,该装置700与根据实施例1的第一个方面所述的方法相对应。参考图7所示,该装置700包括:发送模块710,用于将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及检测模块720,用于接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
可选地,检测模块720还包括以下所述的至少一项子模块:基因检测子模块,用于提取未知文件的软件基因,并对软件基因进行检测;沙箱分析子模块,用于对未知文件进行沙箱分析;以及恶意特征检测子模块,用于对未知文件进行恶意特征检测。
可选地,检测模块720在接收从终端设备发送的未知文件,并对未知文件进行检测之后,还包括:检测子模块,用于根据检测结果,生成检测报告。
此外,图8示出了根据本实施例的第二个方面所述的基于软件基因技术对终端设备文件检测的装置800,该装置800与根据实施例1的第二个方面所述的方法相对应。参考图8所示,该装置800包括:遍历模块810,用于接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;生成模块820,用于根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;对比模块830,用于利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及发送模块840,用于将未知文件发送至服务器。
可选地,对比模块830,还包括:对比子模块,用于将第一哈希列表中的多个哈希值与第二哈希列表中的哈希值进行对比,第一确定子模块,用于根据对比结果,确定文件系统中的恶意文件;第二确定子模块,用于根据对比结果,确定文件系统中的非恶意文件;以及第三确定子模块,用于根据对比结果,确定文件系统中的未知文件。
从而根据本实施例,服务器将与终端设备的操作系统匹配的脚本文件与预先设置的软件库的第一哈希列表发送至终端设备。终端设备通过脚本文件对文件系统中的文件进行遍历,生成第二哈希列表,终端设备将第一哈希类别与第二哈希列表进行对比,确定出无法判定是恶意文件和非恶意文件的未知文件,终端设备将未知文件发送至服务器。服务器通过对未知文件进行软件基因检测,判断未知文件的恶意性,生成相应的检测报告。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。进而解决了现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等的技术问题。
实施例3
图9示出了根据本实施例的第一个方面所述的基于软件基因技术对终端设备文件检测的装置900,该装置900与根据实施例1的第一个方面所述的方法相对应。参考图9所示,该装置900包括:第一处理器910;以及第一存储器920,与第一处理器910连接,用于为第一处理器910提供处理以下处理步骤的指令:将脚本文件以及第一哈希列表发送至终端设备,其中脚本文件为与终端设备的操作系统匹配的脚本文件,第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及接收从终端设备发送的未知文件,并对未知文件进行检测,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
可选地,接收从终端设备发送的未知文件,并对未知文件进行检测,还包括以下所述的至少一项操作:提取未知文件的软件基因,并对软件基因进行检测;对未知文件进行沙箱分析;以及对未知文件进行恶意特征检测。
可选地,在接收从终端设备发送的未知文件,并对未知文件进行检测的操作之后,还包括:根据检测结果,生成检测报告。
此外,图10示出了根据本实施例的第二个方面所述的基于软件基因技术对终端设备文件检测的装置1000,该装置1000与根据实施例1的第二个方面所述的方法相对应。参考图10所示,该装置1000包括:第二处理器1010;以及第二存储器1020,与第二处理器1010连接,用于为第二处理器1010提供处理以下处理步骤的指令:接收从服务器端发送的脚本文件和第一哈希列表,并利用脚本文件对文件系统中的文件进行遍历;其中第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;根据所遍历的文件,生成相应的第二哈希列表,其中第二哈希列表包括多个哈希值,并且多个哈希值与所遍历的文件分别对应;利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,其中未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及将未知文件发送至服务器。
可选地,利用脚本文件将第一哈希列表与第二哈希列表进行对比,确定文件系统中的未知文件,还包括:将第一哈希列表中的多个哈希值与第二哈希列表中的哈希值进行对比,根据对比结果,确定文件系统中的恶意文件;根据对比结果,确定文件系统中的非恶意文件;以及根据对比结果,确定文件系统中的未知文件。
从而根据本实施例,服务器将与终端设备的操作系统匹配的脚本文件与预先设置的软件库的第一哈希列表发送至终端设备。终端设备通过脚本文件对文件系统中的文件进行遍历,生成第二哈希列表,终端设备将第一哈希类别与第二哈希列表进行对比,确定出无法判定是恶意文件和非恶意文件的未知文件,终端设备将未知文件发送至服务器。服务器通过对未知文件进行软件基因检测,判断未知文件的恶意性,生成相应的检测报告。由于不需要在终端设备安装杀毒软件,所以不用再考虑系统的兼容性问题,也不需要去考虑由于杀毒软件运行时检测需要占用极大的资源,更不需要去考虑这些杀毒软件的安全性以及是否存在漏洞。进而解决了现有技术中存在的直接在终端系统中安装杀毒软件会因为操作系统不同导致兼容性差、需要占用大量的系统资源且杀毒软件本身存在用户难以识别的未知漏洞威胁等的技术问题。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种基于软件基因技术对终端设备文件检测的方法,用于服务器端,其特征在于,包括:
将脚本文件以及第一哈希列表发送至终端设备,其中所述脚本文件为与所述终端设备的操作系统匹配的脚本文件,所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及
接收从终端设备发送的未知文件,并对所述未知文件进行检测,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
2.根据权利要求1所述的方法,其特征在于,接收从终端设备发送的未知文件,并对所述未知文件进行检测,还包括以下所述的至少一项操作:
提取所述未知文件的软件基因,并对所述软件基因进行检测;
对所述未知文件进行沙箱分析;以及
对所述未知文件进行恶意特征检测。
3.根据权利要求1所述的方法,其特征在于,在接收从终端设备发送的未知文件,并对所述未知文件进行检测的操作之后,还包括:
根据检测结果,生成检测报告。
4.一种基于软件基因技术对终端设备文件检测的方法,用于终端设备,其特征在于,包括:
接收从服务器端发送的脚本文件和第一哈希列表,并利用所述脚本文件对文件系统中的文件进行遍历;其中所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;
根据所遍历的文件,生成相应的第二哈希列表,其中所述第二哈希列表包括多个哈希值,并且所述多个哈希值与所遍历的文件分别对应;
利用所述脚本文件将所述第一哈希列表与所述第二哈希列表进行对比,确定所述终端设备的文件系统中的未知文件,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及利用所述脚本文件
将所述未知文件发送至服务器。
5.根据权利要求4所述的方法,其特征在于,利用所述脚本文件将所述第一哈希列表与所述第二哈希列表进行对比,确定所述文件系统中的未知文件,还包括:
将所述第一哈希列表中的所述多个哈希值与第二哈希列表中的哈希值进行对比,
根据对比结果,确定所述文件系统中的恶意文件;
根据对比结果,确定所述文件系统中的非恶意文件;以及
根据对比结果,确定所述文件系统中的未知文件。
6.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时由处理器执行权利要求1至5中任意一项所述的方法。
7.一种基于软件基因技术对终端设备文件检测的装置,用于服务器端,其特征在于,包括:
发送模块,用于将脚本文件以及第一哈希列表发送至终端设备,其中所述脚本文件为与所述终端设备的操作系统匹配的脚本文件,所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及
检测模块,用于接收从终端设备发送的未知文件,并对所述未知文件进行检测,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
8.一种基于软件基因技术对终端设备文件检测的装置,用于终端设备,其特征在于,包括:
遍历模块,用于接收从服务器端发送的脚本文件和第一哈希列表,并利用所述脚本文件对终端设备的文件系统中的文件进行遍历;其中所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;
生成模块,用于根据所遍历的文件,生成相应的第二哈希列表,其中所述第二哈希列表包括多个哈希值,并且所述多个哈希值与所遍历的文件分别对应;
对比模块,用于利用所述脚本文件将所述第一哈希列表与所述第二哈希列表进行对比,确定所述文件系统中的未知文件,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及
发送模块,用于将所述未知文件发送至服务器。
9.一种基于软件基因技术对终端设备文件检测的装置,用于服务器端,其特征在于,包括:
第一处理器;以及
第一存储器,与所述第一处理器连接,用于为所述第一处理器提供处理以下处理步骤的指令:
将脚本文件以及第一哈希列表发送至终端设备,其中所述脚本文件为与所述终端设备的操作系统匹配的脚本文件,所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;以及
接收从终端设备发送的未知文件,并对所述未知文件进行检测,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件。
10.一种基于软件基因技术对终端设备文件检测的装置,用于终端设备,其特征在于,包括:
第二处理器;以及
第二存储器,与所述第二处理器连接,用于为所述第二处理器提供处理以下处理步骤的指令:
接收从服务器端发送的脚本文件和第一哈希列表,并利用所述脚本文件对文件系统中的文件进行遍历;其中所述第一哈希列表包含与预先设置的软件库中记录的软件对应的多个哈希值;
根据所遍历的文件,生成相应的第二哈希列表,其中所述第二哈希列表包括多个哈希值,并且所述多个哈希值与所遍历的文件分别对应;
利用所述脚本文件将所述第一哈希列表与所述第二哈希列表进行对比,确定所述文件系统中的未知文件,其中所述未知文件为通过对比哈希值无法确认是恶意文件还是非恶意文件的文件;以及
将所述未知文件发送至服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010069707.3A CN111291372B (zh) | 2020-01-21 | 一种基于软件基因技术对终端设备文件检测的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010069707.3A CN111291372B (zh) | 2020-01-21 | 一种基于软件基因技术对终端设备文件检测的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291372A true CN111291372A (zh) | 2020-06-16 |
CN111291372B CN111291372B (zh) | 2024-04-30 |
Family
ID=
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613074A (zh) * | 2020-12-30 | 2021-04-06 | 绿盟科技集团股份有限公司 | 一种敏感文件识别方法、装置、设备及介质 |
CN113536308A (zh) * | 2021-06-11 | 2021-10-22 | 中国人民解放军战略支援部队信息工程大学 | 软件基因视角下多粒度信息融合的二进制代码溯源方法 |
CN115906079A (zh) * | 2022-11-16 | 2023-04-04 | 北京微步在线科技有限公司 | 文件检测方法、文件检测系统及文件检测装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108337153A (zh) * | 2018-01-19 | 2018-07-27 | 论客科技(广州)有限公司 | 一种邮件的监控方法、系统与装置 |
CN108932430A (zh) * | 2018-07-02 | 2018-12-04 | 北京大学 | 一种基于软件基因技术的恶意软件检测方法 |
CN109960932A (zh) * | 2017-12-22 | 2019-07-02 | 北京安天网络安全技术有限公司 | 文件检测方法、装置和终端设备 |
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109960932A (zh) * | 2017-12-22 | 2019-07-02 | 北京安天网络安全技术有限公司 | 文件检测方法、装置和终端设备 |
CN108337153A (zh) * | 2018-01-19 | 2018-07-27 | 论客科技(广州)有限公司 | 一种邮件的监控方法、系统与装置 |
WO2019141091A1 (zh) * | 2018-01-19 | 2019-07-25 | 论客科技(广州)有限公司 | 一种邮件的监控方法、系统与装置 |
CN108932430A (zh) * | 2018-07-02 | 2018-12-04 | 北京大学 | 一种基于软件基因技术的恶意软件检测方法 |
Non-Patent Citations (1)
Title |
---|
肖锦琦;王俊峰;: "基于模糊哈希特征表示的恶意软件聚类方法", no. 03 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112613074A (zh) * | 2020-12-30 | 2021-04-06 | 绿盟科技集团股份有限公司 | 一种敏感文件识别方法、装置、设备及介质 |
CN113536308A (zh) * | 2021-06-11 | 2021-10-22 | 中国人民解放军战略支援部队信息工程大学 | 软件基因视角下多粒度信息融合的二进制代码溯源方法 |
CN113536308B (zh) * | 2021-06-11 | 2023-01-06 | 中国人民解放军战略支援部队信息工程大学 | 软件基因视角下多粒度信息融合的二进制代码溯源方法 |
CN115906079A (zh) * | 2022-11-16 | 2023-04-04 | 北京微步在线科技有限公司 | 文件检测方法、文件检测系统及文件检测装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109711171B (zh) | 软件漏洞的定位方法及装置、系统、存储介质、电子装置 | |
Nissim et al. | USB-based attacks | |
EP3375159B1 (en) | Dynamic honeypot system | |
JP6715887B2 (ja) | ユーザのコンピュータ装置への攻撃に対抗するシステムおよび方法 | |
US9680849B2 (en) | Rootkit detection by using hardware resources to detect inconsistencies in network traffic | |
US10715542B1 (en) | Mobile application risk analysis | |
US9438623B1 (en) | Computer exploit detection using heap spray pattern matching | |
KR101256295B1 (ko) | 모바일 디바이스들 상의 협력적 악성 코드 검출 및 방지 | |
RU2680736C1 (ru) | Сервер и способ для определения вредоносных файлов в сетевом трафике | |
US10348755B1 (en) | Systems and methods for detecting network security deficiencies on endpoint devices | |
CN111274583A (zh) | 一种大数据计算机网络安全防护装置及其控制方法 | |
US9426161B2 (en) | Device-based authentication for secure online access | |
Karim et al. | Mobile botnet attacks-an emerging threat: Classification, review and open issues | |
US10068089B1 (en) | Systems and methods for network security | |
US10262137B1 (en) | Security recommendations based on incidents of malware | |
CN108322366B (zh) | 接入网络的方法、装置和系统 | |
US9622081B1 (en) | Systems and methods for evaluating reputations of wireless networks | |
CN110099041B (zh) | 一种物联网防护方法及设备、系统 | |
CN116319074B (zh) | 一种基于多源日志的失陷设备检测方法、装置及电子设备 | |
Shwartz et al. | Inner conflict: How smart device components can cause harm | |
CN113127875A (zh) | 一种漏洞处理方法及相关设备 | |
CN114726579B (zh) | 防御网络攻击的方法、装置、设备、存储介质及程序产品 | |
CN111291372B (zh) | 一种基于软件基因技术对终端设备文件检测的方法及装置 | |
CN115883170A (zh) | 网络流量数据监测分析方法、装置及电子设备及存储介质 | |
CN111291372A (zh) | 一种基于软件基因技术对终端设备文件检测的方法及装置 |
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 | ||
GR01 | Patent grant |