一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

文件扫描方法、装置、电子设备及存储介质与流程

2022-03-26 16:55:56 来源:中国专利 TAG:


1.本发明实施例涉及计算机技术领域,特别涉及一种文件扫描方法、装置、电子设备及存储介质。


背景技术:

2.随着计算机技术在社会生活中各个领域的广泛运用,恶意程序也如同其附属品一样接踵而来。由于这些恶意程序所具有的感染性、复制性及破坏性,其已成为困扰计算机使用的一个重大问题。因此,有必要对计算机中的文件进行扫描。
3.相关技术中,文件扫描方法大致为:打开计算机的反病毒引擎(即杀毒软件),利用反病毒引擎对目标目录(或者全盘)的文件进行扫描,如果扫描到病毒文件,则反病毒引擎就会对其进行查杀;如果扫描到加密压缩包,则反病毒引擎就会跳过扫描。因此,不法分子通常会将病毒文件通过压缩加密的方式进行“隐藏”,这样反病毒引擎在扫描到加密压缩包时,就会跳过对该加密压缩包的扫描。


技术实现要素:

4.为了能够扫描到加密压缩包内的文件,本发明实施例提供了一种文件扫描方法、装置、电子设备及存储介质。
5.第一方面,本发明实施例提供了一种文件扫描方法,包括:
6.对待扫描文件进行扫描;
7.响应于扫描到加密压缩包,对所述加密压缩包进行破解;
8.若破解成功,则对所述加密压缩包内的文件进行扫描。
9.在一种可能的设计中,在所述对待扫描文件进行扫描之后和在所述对所述加密压缩包进行破解之前,还包括:
10.判断所述待扫描文件是否是压缩包;
11.若是压缩包,则执行:对所述压缩包进行解包,得到所述压缩包的包结构;基于所述压缩包的包结构,判断所述压缩包是否是加密压缩包;
12.若是加密压缩包,则执行所述对所述加密压缩包进行破解。
13.在一种可能的设计中,对所述加密压缩包进行破解的方式包括如下中的至少一种:
14.基于所述加密压缩包的注释信息进行破解;
15.字典破解;
16.暴力破解。
17.在一种可能的设计中,所述响应于扫描到加密压缩包,对所述加密压缩包进行破解,包括:
18.响应于扫描到加密压缩包,获取所述加密压缩包的注释信息;
19.基于所述加密压缩包的注释信息,判断是否能对所述加密压缩包破解成功;
20.若不能,则基于字典破解的方式,判断是否能对所述加密压缩包破解成功;
21.若不能,则基于暴力破解的方式,对所述加密压缩包进行破解。
22.在一种可能的设计中,所述响应于扫描到加密压缩包,对所述加密压缩包进行破解,包括:
23.响应于扫描到加密压缩包,创建破解线程;
24.利用所述破解线程执行对所述加密压缩包进行破解。
25.在一种可能的设计中,在所述对所述加密压缩包进行破解之后,还包括:
26.跳过对所述加密压缩包的扫描,并继续扫描下一个待扫描文件;
27.在对所有待扫描文件的扫描结束之前,判断所述加密压缩包是否破解成功;
28.若是,则执行所述对所述加密压缩包进行解包;
29.若否,则响应于对所有待扫描文件的扫描结束,结束所述对所述加密压缩包的破解。
30.在一种可能的设计中,在所述对所述加密压缩包进行破解之后,还包括:
31.在未破解成功时,判断破解所用时长是否达到预设阈值;
32.若是,则跳过对所述加密压缩包的扫描,并继续扫描下一个待扫描文件对所有待扫描文件的扫描结束。
33.第二方面,本发明实施例还提供了一种文件扫描装置,包括:
34.第一扫描模块,用于对待扫描文件进行扫描;
35.破解模块,用于响应于扫描到加密压缩包,对所述加密压缩包进行破解;
36.第二扫描模块,用于若破解成功,则对所述加密压缩包内的文件进行扫描。
37.第三方面,本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
38.第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
39.本发明实施例提供了一种文件扫描方法、装置、电子设备及存储介质,反病毒引擎在扫描到加密压缩包时,会尝试对加密压缩包进行破解,这样就可能获取到该加密压缩包的密码,在获取到密码后,可以实现对该加密压缩包内的文件进行扫描。当病毒文件隐藏在加密压缩包内时,通过上述技术方案就可以实现对加密压缩包内的病毒文件的扫描,可以进一步提高用户客户端的安全性。
附图说明
40.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
41.图1是本发明一实施例提供的一种文件扫描方法流程图;
42.图2是本发明一实施例提供的另一种文件扫描方法流程图;
43.图3是本发明一实施例提供的一种电子设备的硬件架构图;
44.图4是本发明一实施例提供的一种文件扫描装置结构图。
具体实施方式
45.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
46.发明人在研发过程中发现:不法分子通常会将病毒文件通过压缩加密的方式进行“隐藏”,这样反病毒引擎在扫描到加密压缩包时,就会跳过对该加密压缩包的扫描。
47.为了解决该技术问题,发明人考虑在反病毒引擎扫描到加密压缩包时,可以执行获取加密压缩包的密码,即可以尝试去对加密压缩包进行破解,而非只是执行跳过对加密压缩包的扫描,这样就可能实现对加密压缩包的破解,从而实现扫描加密压缩包内的文件。当病毒文件隐藏在加密压缩包内时,通过上述方式就可以实现对加密压缩包内的病毒文件的扫描,以进一步提高用户客户端的安全性。
48.下面描述以上构思的具体实现方式。
49.请参考图1,本发明实施例提供了一种文件扫描方法,该方法包括:
50.步骤100:对待扫描文件进行扫描;
51.步骤102:响应于扫描到加密压缩包,对加密压缩包进行破解;
52.步骤104:若破解成功,则对加密压缩包内的文件进行扫描。
53.本发明实施例中,反病毒引擎在扫描到加密压缩包时,会尝试对加密压缩包进行破解,这样就可能获取到该加密压缩包的密码,在获取到密码后,可以实现对该加密压缩包内的文件进行扫描。当病毒文件隐藏在加密压缩包内时,通过上述技术方案就可以实现对加密压缩包内的病毒文件的扫描,可以进一步提高用户客户端的安全性。
54.下面描述图1所示的各个步骤的执行方式。
55.针对步骤100:
56.具体地,是利用反病毒引擎中的扫描程序执行步骤100的操作。其中,本发明实施例对待扫描文件的类型不进行具体限定,例如可以是文档、视频、图片、音频、压缩包等。
57.针对步骤102:
58.需要说明的是,相关技术中,反病毒引擎中的扫描程序执行的扫描任务,在扫描程序扫描到压缩包时,则调用反病毒引擎中的解包程序对压缩包执行解包操作。如果解包失败,则说明压缩包内的文件损坏;如果解包成功,则会得到该压缩包的包结构,包结构中记载有该压缩包是否被加密的标识(称之为全局方式位标记),解包程序可以基于该标识确定该压缩包是否为加密压缩包。然而,相关技术的反病毒引擎并不能实现对加密压缩包的破解,只能执行跳过扫描的操作,如果病毒文件在加密压缩包中,则会使用户客户端存在一定的安全隐患。
59.为了解决该技术问题,在一些实施方式中,在步骤100之后和步骤102之前,还包括:
60.判断待扫描文件是否是压缩包;
61.若是压缩包,则执行:对压缩包进行解包,得到压缩包的包结构;基于压缩包的包结构,判断压缩包是否是加密压缩包;
62.若是加密压缩包,则执行对加密压缩包进行破解。
63.在该实施方式中,在确定压缩包是加密压缩包后,执行对加密压缩包的破解操作,从而可以有效对加密压缩包内的文件进行扫描,以提高用户客户端的安全性。
64.具体地,利用反病毒引擎的扫描程序基于待扫描文件的格式,来判断待扫描文件是否是压缩包,其中压缩包的格式包括但不限于jar、zip、rar、7z、cab、iso、tar、uue。利用反病毒引擎的解包程序执行对压缩包的解包操作以及基于得到的包结构判断是否被加密的操作。相较于相关技术,本发明实施例提供的反病毒引擎还具有破解功能,即在确定压缩包是加密压缩包后,调用破解代码,以执行对加密压缩包的破解操作。
65.在一些实施方式中,对加密压缩包进行破解的方式包括如下中的至少一种:
66.基于加密压缩包的注释信息进行破解;
67.字典破解;
68.暴力破解。
69.由于对压缩包进行加密就能跳过相关技术的反病毒引擎的扫描,因此不法分子通常会将压缩包设置简单的密码,而且通常会将简单的密码放置于压缩包的注释信息(或备注信息)中。发明人基于该思路,考虑可以基于加密压缩包的注释信息进行破解的方式来对加密压缩包进行破解。如果扫描程序的破解代码未在注释信息中找到相关密码,则可以再借助于字典破解的方式进行破解;如果还不能实现破解,则可以借助暴力破解的方式进行破解,而暴力破解在足够的计算时间内,可以实现最终的破解。
70.其中,字典破解是指通过比较合理的条件,筛选或者过滤掉一些全字符组合的内容,大幅降低爆破的成本,把筛选出的密码组合成特定的字典。但是利用字典破解的方式可能会漏掉真正的密码。
71.暴力破解是指利用所有可能的字符组密码去尝试破解。这是最原始、最粗暴的破解方法,根据运算能力,如果能够承受这种时间成本,最终一定会爆破出密码。
72.需要说明的是,在基于加密压缩包的注释信息进行破解的方式中,如果注释信息只是简单的字符串组合,则该字符串组合很可能是密码;如果注释信息是一段文字,例如是“这个压缩包的密码是:123456”,那么破解代码还会对该段文字进行提取,以提取到“123456”这个密码。
73.为了尽量减少破解时间,可以考虑设置破解方式的优先级,即按照优先级高低的排列顺序为:基于加密压缩包的注释信息进行破解、字典破解、暴力破解。
74.具体地,在一些实施方式中,步骤102可以包括:
75.响应于扫描到加密压缩包,获取加密压缩包的注释信息;
76.基于加密压缩包的注释信息,判断是否能对加密压缩包破解成功;
77.若不能,则基于字典破解的方式,判断是否能对加密压缩包破解成功;
78.若不能,则基于暴力破解的方式,对加密压缩包进行破解。
79.在该实施方式中,通过设置破解方式的优先级,可以尽量减少破解时间,从而有利于保证用户的使用体验。
80.为了进一步减少破解时间,可以考虑创建一个破解线程,而并非上述内容所提及
的扫描程序包括的破解代码。因为扫描程序包括的破解代码,可能在执行破解操作时,会阻碍扫描程序对下一个待扫描文件的扫描,这是不利的。而通过创建一个破解线程,利用这个破解线程去执行破解操作,这样可以不影响扫描程序的扫描操作。
81.具体地,在一些实施方式中,步骤102可以包括:
82.响应于扫描到加密压缩包,创建破解线程;
83.利用破解线程执行对加密压缩包进行破解。
84.在该实施方式中,在扫描程序扫描到加密压缩包时,反病毒引擎可以创建一个破解线程,利用这个破解线程去执行破解操作,这样在密码不复杂的情况下可以不影响扫描程序的扫描操作。
85.需要说明的是,如果密码比较复杂,当扫描程序对除加密压缩包之外的所有待扫描文件均已扫描结束,这时破解操作还在继续,这是影响用户体验的。因此,有必要考虑在扫描程序结束扫描操作时,对破解操作进行终止,这样才能够保证不影响用户的使用体验。
86.具体地,在一些实施方式中,在步骤102之后,上述方法还包括:
87.跳过对加密压缩包的扫描,并继续扫描下一个待扫描文件;
88.在对所有待扫描文件的扫描结束之前,判断加密压缩包是否破解成功;
89.若是,则执行对加密压缩包进行解包;
90.若否,则响应于对所有待扫描文件的扫描结束,结束对加密压缩包的破解。
91.在该实施方式中,在执行对加密压缩包的破解操作时,扫描程序同时会执行跳过该加密压缩包的操作,这样不会影响其它待扫描文件的扫描进度。进一步地,如果在扫描操作结束之前,破解操作取得成功,则调用解包程序执行解包操作;如果在扫描操作结束之前,破解操作尚未取得成功,则为了不影响用户的使用体验,需要结束对加密压缩包的破解操作。
92.此外,如果破解操作并非是反病毒引擎所创建的破解线程完成的,而是由扫描程序的破解代码完成的。即,当扫描程序扫描到加密压缩包后,会依次执行破解操作和扫描操作,而不会像上述方法提及的破解操作和扫描操作可以同时进行。因此,如果是需要依次执行破解操作和扫描操作,那么为了不影响用户的使用体验,需要将破解操作所用的时间进行约束,否则破解时间过长,会影响整个扫描的进度。
93.因此,在一些实施方式中,在步骤102之后,上述方法还包括:
94.在未破解成功时,判断破解所用时长是否达到预设阈值;
95.若是,则跳过对加密压缩包的扫描,并继续扫描下一个待扫描文件,直至对所有待扫描文件的扫描结束。
96.在该实施方式中,当破解所用时长达到预设阈值时,为了不影响对下一个待扫描文件的扫描,扫描程序会结束当前的破解操作,即会启动跳过当前加密压缩包的扫描,并执行对下一个待扫描文件的扫描操作,这样才可能既可以保证对加密压缩包进行破解(以提高用户客户端的安全性),又可以保证不影响用户的使用体验。
97.举例来说,预设阈值可以是10s。在此,本发明实施例对预设阈值不进行具体限定。
98.针对步骤104:
99.具体地,若破解成功,则反病毒引擎会调用解包程序完成对加密压缩包的解包操作,再调用扫描程序对加密压缩包内的文件进行扫描。
100.综上,当病毒文件隐藏在加密压缩包内时,通过上述技术方案就可以实现对加密压缩包内的病毒文件的扫描,可以进一步提高用户客户端的安全性。
101.图2示出根据另一个实施例的文件扫描方法的流程图。参见图2,该方法包括:
102.步骤200:对待扫描文件进行扫描;
103.步骤202:判断待扫描文件是否是压缩包;若是,则执行步骤204;
104.步骤204:对压缩包进行解包,得到压缩包的包结构;
105.步骤206:基于压缩包的包结构,判断压缩包是否是加密压缩包;若是,则执行步骤208和步骤214;
106.步骤208:响应于扫描到加密压缩包,创建破解线程;
107.步骤210:利用破解线程执行对加密压缩包进行破解;
108.步骤212:若破解成功,则对加密压缩包内的文件进行扫描;
109.步骤214:响应于扫描到加密压缩包,跳过对加密压缩包的扫描,并继续扫描下一个待扫描文件;
110.步骤216:在对所有待扫描文件的扫描结束之前,判断加密压缩包是否破解成功;若是,则执行步骤212;若否,则执行步骤218;
111.步骤218:响应于对所有待扫描文件的扫描结束,结束对加密压缩包的破解。
112.如图3、图4所示,本发明实施例提供了一种文件扫描装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种文件扫描装置所在电子设备的一种硬件架构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在电子设备的cpu将非易失性存储器中对应的计算机程序读取到内存中运行形成的。
113.如图4所示,本实施例提供的一种文件扫描装置,包括:
114.第一扫描模块400,用于对待扫描文件进行扫描;
115.破解模块402,用于响应于扫描到加密压缩包,对加密压缩包进行破解;
116.第二扫描模块404,用于若破解成功,则对加密压缩包内的文件进行扫描。
117.在本发明实施例中,第一扫描模块400可用于执行上述方法实施例中的步骤100,破解模块402可用于执行上述方法实施例中的步骤102,第二扫描模块404可用于执行上述方法实施例中的步骤104。
118.在本发明的一个实施例中,还包括:
119.第一判断模块,用于执行如下操作:
120.判断待扫描文件是否是压缩包;
121.若是压缩包,则执行:对压缩包进行解包,得到压缩包的包结构;基于压缩包的包结构,判断压缩包是否是加密压缩包;
122.若是加密压缩包,则执行对加密压缩包进行破解。
123.在本发明的一个实施例中,对加密压缩包进行破解的方式包括如下中的至少一种:
124.基于加密压缩包的注释信息进行破解;
125.字典破解;
126.暴力破解。
127.在本发明的一个实施例中,破解模块402,用于执行如下操作:
128.响应于扫描到加密压缩包,获取加密压缩包的注释信息;
129.基于加密压缩包的注释信息,判断是否能对加密压缩包破解成功;
130.若不能,则基于字典破解的方式,判断是否能对加密压缩包破解成功;
131.若不能,则基于暴力破解的方式,对加密压缩包进行破解。
132.在本发明的一个实施例中,破解模块402,用于执行如下操作:
133.响应于扫描到加密压缩包,创建破解线程;
134.利用破解线程执行对加密压缩包进行破解。
135.在本发明的一个实施例中,还包括:
136.第二判断模块,用于执行如下操作:
137.跳过对加密压缩包的扫描,并继续扫描下一个待扫描文件;
138.在对所有待扫描文件的扫描结束之前,判断加密压缩包是否破解成功;
139.若是,则执行对加密压缩包进行解包;
140.若否,则响应于对所有待扫描文件的扫描结束,结束对加密压缩包的破解。
141.在本发明的一个实施例中,还包括:
142.第三判断模块,用于执行如下操作:
143.在未破解成功时,判断破解所用时长是否达到预设阈值;
144.若是,则跳过对加密压缩包的扫描,并继续扫描下一个待扫描文件,直至对所有待扫描文件的扫描结束。
145.可以理解的是,本发明实施例示意的结构并不构成对一种文件扫描装置的具体限定。在本发明的另一些实施例中,一种文件扫描装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
146.上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
147.本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种文件扫描方法。
148.本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种文件扫描方法。
149.具体地,可以提供配有存储介质的系统或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该系统或者装置的计算机(或cpu或mpu)读出并执行存储在存储介质中的程序代码。
150.在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
151.用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如cd-rom、
cd-r、cd-rw、dvd-rom、dvd-ram、dvd-rw、dvd rw)、磁带、非易失性存储卡和rom。可选择地,可以由通信网络从服务器计算机上下载程序代码。
152.此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作系统等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
153.此外,可以理解的是,将由存储介质读出的程序代码写到插入计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的cpu等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
154.综上所述,本发明提供了一种文件扫描方法、装置、电子设备及存储介质,本发明至少具有如下有益效果:
155.1、在本发明的一个实施例中,反病毒引擎在扫描到加密压缩包时,会尝试对加密压缩包进行破解,这样就可能获取到该加密压缩包的密码,在获取到密码后,可以实现对该加密压缩包内的文件进行扫描。当病毒文件隐藏在加密压缩包内时,通过上述技术方案就可以实现对加密压缩包内的病毒文件的扫描,可以进一步提高用户客户端的安全性。
156.2、在本发明的一个实施例中,在确定压缩包时加密压缩包后,执行对加密压缩包的破解的操作,从而可以有效对加密压缩包内的文件进行扫描,以提高用户客户端的安全性。
157.3、在本发明的一个实施例中,为了尽量减少破解时间,可以考虑设置破解方式的优先级,即按照优先级高低的排列顺序为:基于加密压缩包的注释信息进行破解、字典破解、暴力破解。通过设置破解方式的优先级,可以尽量减少破解时间,从而有利于保证用户的使用体验。
158.4、在本发明的一个实施例中,在扫描程序扫描到加密压缩包时,反病毒引擎可以创建一个破解线程,利用这个破解线程去执行破解操作,这样在密码不复杂的情况下可以不影响扫描程序的扫描操作。
159.5、在本发明的一个实施例中,在执行对加密压缩包的破解操作时,扫描程序同时会执行跳过该加密压缩包的操作,这样不会影响其它待扫描文件的扫描进度。进一步地,如果在扫描操作结束之前,破解操作取得成功,则调用解包程序执行解包操作;如果在扫描操作结束之前,破解操作尚未取得成功,则为了不影响用户的使用体验,需要结束对加密压缩包的破解操作。
160.6、在本发明的一个实施例中,当破解所用时长达到预设阈值时,为了不影响对下一个待扫描文件的扫描,扫描程序会结束当前的破解操作,即会启动跳过当前加密压缩包的扫描,并执行对下一个待扫描文件的扫描操作,这样才可能既可以保证对加密压缩包进行破解(以提高用户客户端的安全性),又可以保证不影响用户的使用体验。
161.需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固
有的要素。在没有更多限制的情况下,由语句“包括一个
…”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
162.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。
163.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献