CN106169048B - 文件删除方法、装置及电子设备 - Google Patents

文件删除方法、装置及电子设备 Download PDF

Info

Publication number
CN106169048B
CN106169048B CN201610491590.1A CN201610491590A CN106169048B CN 106169048 B CN106169048 B CN 106169048B CN 201610491590 A CN201610491590 A CN 201610491590A CN 106169048 B CN106169048 B CN 106169048B
Authority
CN
China
Prior art keywords
file
function
irp
file destination
deletion
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.)
Active
Application number
CN201610491590.1A
Other languages
English (en)
Other versions
CN106169048A (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.)
Zhuhai Baoqu Technology Co Ltd
Original Assignee
Zhuhai Seal Interest Technology Co 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 Zhuhai Seal Interest Technology Co Ltd filed Critical Zhuhai Seal Interest Technology Co Ltd
Priority to CN201610491590.1A priority Critical patent/CN106169048B/zh
Publication of CN106169048A publication Critical patent/CN106169048A/zh
Application granted granted Critical
Publication of CN106169048B publication Critical patent/CN106169048B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/568Computer malware detection or handling, e.g. anti-virus arrangements eliminating virus, restoring damaged files

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种文件删除方法、装置及电子设备,其中,文件删除方法包括:接收针对目标文件的文件删除指令;根据文件删除指令在应用层调用并执行第一删除文件函数;在内核层调用并执行第二删除文件函数;在内核层检测生成文件信息函数是否与恶意程序挂钩;如果生成文件信息函数与恶意程序挂钩,则在内核层调用并执行预设函数,以生成目标文件对应的输入输出请求包IRP;下发IRP,并控制文件系统解析IRP,以及根据解析结果控制磁盘驱动删除目标文件。本发明实施例的文件删除方法、装置及电子设备,能够绕过与恶意程序挂钩的函数对目标文件的防护,实现对顽固的恶意文件的清除,保证系统信息安全。

Description

文件删除方法、装置及电子设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种文件删除方法、装置及电子设备。
背景技术
随着互联网技术的快速发展,病毒、木马等恶意软件层出不穷。恶意软件利用加载恶意驱动程序,保护自身软件不被杀毒软件删除,达到自我保护的目的。目前,在删除文件时,主要在应用层调用DeleteFile函数,在内核层调用NtDeleteFile函数,然后调用NtSetInformationFile函数,再交由内核层的磁盘驱动将文件从磁盘中删除。但是,有的恶意软件会在内核层挂钩驱动程序,拦截删除操作,导致文件无法被删除。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的第一个目的在于提出一种文件删除方法,该方法能够实现对顽固的恶意文件的清除,保证系统信息安全。
本发明的第二个目的在于提出一种文件删除装置。
本发明的第三个目的在于提出一种电子设备。
为实现上述目的,本发明第一方面实施例提出了一种文件删除方法,包括以下步骤:接收针对目标文件的文件删除指令;根据所述文件删除指令在应用层调用并执行第一删除文件函数;在内核层调用并执行第二删除文件函数;在所述内核层检测生成文件信息函数是否与恶意程序挂钩;如果所述生成文件信息函数与恶意程序挂钩,则在所述内核层调用并执行预设函数,以生成所述目标文件对应的输入输出请求包IRP;下发所述IRP,并控制文件系统解析所述IRP,以及根据解析结果控制磁盘驱动删除所述目标文件。
可选的,在所述内核层调用并执行预设函数,包括:创建所述IRP;将所述IRP中的第一预设字段设置为预设值;调用第一函数和第二函数设置所述IRP。
可选的,创建所述IRP,包括:获取目标文件的路径;根据所述路径打开所述目标文件,并获取所述目标文件的句柄;根据所述句柄获取所述目标文件的文件对象;根据所述文件对象获取所述目标文件所在的设备对象信息;根据所述设备对象信息创建所述IRP。
可选的,将所述IRP中的第一预设字段设置为预设值,包括:获取文件删除结构数据;将所述文件删除结构数据中的第二预设字段设置为预设值;将所述预设值赋值至所述第一预设字段。
为实现上述目的,本发明第二方面实施例提出了一种文件删除装置,包括:接收模块,用于接收针对目标文件的文件删除指令;第一执行模块,用于根据所述文件删除指令在应用层调用并执行第一删除文件函数;第二执行模块,用于在内核层调用并执行第二删除文件函数;检测模块,用于在所述内核层检测生成文件信息函数是否与恶意程序挂钩;生成模块,用于当所述生成文件信息函数与恶意程序挂钩时,在所述内核层调用并执行预设函数,以生成所述目标文件对应的输入输出请求包IRP;删除模块,用于下发所述IRP,并控制文件系统解析所述IRP,以及根据解析结果控制磁盘驱动删除所述目标文件。
可选的,所述生成模块,包括:创建子模块,用于创建所述IRP;设置子模块,用于将所述IRP中的第一预设字段设置为预设值;调用子模块,用于调用第一函数和第二函数设置所述IRP。
可选的,所述创建子模块,包括:第一获取单元,用于获取目标文件的路径;第二获取单元,用于根据所述路径打开所述目标文件,并获取所述目标文件的句柄;第三获取单元,用于根据所述句柄获取所述目标文件的文件对象;第四获取单元,用于根据所述文件对象获取所述目标文件所在的设备对象信息;创建单元,用于根据所述设备对象信息创建所述IRP。
可选的,所述设置子模块,包括:第五获取单元,用于获取文件删除结构数据;设置单元,用于将所述文件删除结构数据中的第二预设字段设置为预设值;赋值单元,用于将所述预设值赋值至所述第一预设字段。
为实现上述目的,本发明第三方面实施例提出了一种电子设备,该电子设备包括处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行以下步骤:
接收针对目标文件的文件删除指令;
根据所述文件删除指令在应用层调用并执行第一删除文件函数;
在内核层调用并执行第二删除文件函数;
在所述内核层检测生成文件信息函数是否与恶意程序挂钩;
如果所述生成文件信息函数与恶意程序挂钩,则在所述内核层调用并执行预设函数,以生成所述目标文件对应的输入输出请求包IRP;
下发所述IRP,并控制文件系统解析所述IRP,以及根据解析结果控制磁盘驱动删除所述目标文件。
为实现上述目的,本发明第四方面实施例提出了一种存储介质,其中,所述存储介质用于存储应用程序,所述应用程序用于在运行时执行本发明所述的一种文件删除方法。
为实现上述目的,本发明第五方面实施例提出了一种应用程序,其中,所述应用程序用于在运行时执行本发明所述的一种文件删除方法。
在本发明中,通过在内核层调用并执行预设函数,生成与目标文件对应的IRP,最终控制文件系统对IRP进行解析,从而根据解析结果控制磁盘驱动删除所述目标文件,绕过与恶意程序挂钩的函数对目标文件的防护,实现对顽固的恶意文件的清除,保证系统信息安全。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1是根据本发明一个实施例的文件删除方法的流程图;
图2是根据本发明一个实施例的在内核层调用并执行预设函数的流程图;
图3是根据本发明一个实施例的文件删除装置的结构示意图;
图4是根据本发明一个实施例的电子设备的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的文件删除方法、装置及电子设备。
图1是根据本发明一个实施例的文件删除方法的流程图,如图1所示,该方法包括:
S101、接收针对目标文件的文件删除指令。
在实际应用中,用户要删除某一文件,可打开该文件所在的目录,并直接对该文件进行删除操作。当然,也可以通过第三方软件选中该文件,然后利用第三方软件实现文件的删除。其中,第三方软件可包括文件管理类软件、杀毒软件等。
在本发明的一个实施例中,杀毒软件可接收针对目标文件的文件删除指令。
S102、根据文件删除指令在应用层调用并执行第一删除文件函数。
其中,第一删除文件函数可以是DeleteFile函数。
S103、在内核层调用并执行第二删除文件函数。
其中,第二删除文件函数可以是NtDeleteFile函数。
S104、在内核层检测生成文件信息函数是否与恶意程序挂钩。
其中,生成文件信息函数可以是NtSetInformationFile函数,其作用是封装IRP。NtSetInformationFile函数可向文件系统下发IRP,IRP中包括目标文件的信息。如果该函数与恶意程序挂钩,则现有的删除操作可能无法获取目标文件的信息,导致无法删除目标文件。因此,杀毒软件需要绕过与恶意程序挂钩的函数,来实现文件的删除。
S105、如果生成文件信息函数与恶意程序挂钩,则在内核层调用并执行预设函数,以生成目标文件对应的输入输出请求包IRP。
具体地,如图2所示,在内核层调用并执行预设函数可包括以下步骤:
S1051、创建IRP。
首先,可获取目标文件的路径。然后根据路径打开目标文件,并获取目标文件的句柄,再根据句柄获取目标文件的文件对象。之后,可根据文件对象获取目标文件所在的设备对象信息,最后根据设备对象信息创建IRP(I/O request packets,输入输出请求包)。
例如,首先可获取目标文件路径,然后调用IoCreateFile函数打开目标文件,获取目标文件的句柄Handle。以Handle为参数调用ObReferenceObjectByHandle函数,以获取文件对象。以文件对象为参数调用IoGetRelatedDeviceObject函数,以获取文件所在的设备对象如C盘、D盘等。再以设备对象为参数,调用IoAllocateIrp函数创建IRP。
S1052、将IRP中的第一预设字段设置为预设值。
首先,可获取文件删除结构数据,然后将文件删除结构数据中的第二预设字段设置为预设值,最后将预设值赋值至第一预设字段。其中,第一预设字段可以为Irp.SystemBuffer。第二预设字段可以为FileInformation.DeleteFile。
例如:文件删除结构数据可以为FILE_DISPOSITION_INFORMATION结构,其中,该结构中的一个字段为FileInformation.DeleteFile,将该字段的值设置为1,表示目标文件为待删除状态。然后把文件删除结构数据FileInformation赋值给Irp.SystemBuffer。
S1053、调用第一函数和第二函数设置IRP。
其中,第一函数可以为IoSetCompletionRoutine,第二函数可以为IoCallDriver。
具体地,可通过调用IoSetCompletionRoutine和IoCallDriver这两个函数对IRP进行设置。
S106、下发IRP,并控制文件系统解析IRP,以及根据解析结果控制磁盘驱动删除目标文件。
在本发明的一个实施例中,可下发设置好的IRP,然后控制文件系统对该IRP进行解析,然后解析出目标文件的相关信息,从而控制磁盘驱动删除目标文件。最终,达到绕过与恶意程序挂钩的函数,删除目标文件的目的。
本发明实施例的文件删除方法,通过在内核层调用并执行预设函数,生成与目标文件对应的IRP,最终控制文件系统对IRP进行解析,从而根据解析结果控制磁盘驱动删除目标文件,能够绕过与恶意程序挂钩的函数对目标文件的防护,实现对顽固的恶意文件的清除,保证系统信息安全。
为了实现上述实施例,本发明还提出一种文件删除装置。
图3是根据本发明一个实施例的文件删除装置的结构示意图。
如图3所示,该装置包括:接收模块110、第一执行模块120、第二执行模块130、检测模块140、生成模块150和删除模块160。
接收模块110用于接收针对目标文件的文件删除指令。
在实际应用中,用户要删除某一文件,可打开该文件所在的目录,并直接对该文件进行删除操作。当然,也可以通过第三方软件选中该文件,然后利用第三方软件实现文件的删除。其中,第三方软件可包括文件管理类软件、杀毒软件等。
在本发明的一个实施例中,接收模块110可接收针对目标文件的文件删除指令。
第一执行模块120用于根据文件删除指令在应用层调用并执行第一删除文件函数。其中,第一删除文件函数可以是DeleteFile函数。
第二执行模块130用于在内核层调用并执行第二删除文件函数。其中,第二删除文件函数可以是NtDeleteFile函数。
检测模块140用于在内核层检测生成文件信息函数是否与恶意程序挂钩。其中,生成文件信息函数可以是NtSetInformationFile函数,其作用是封装IRP。NtSetInformationFile函数可向文件系统下发IRP,IRP中包括目标文件的信息。如果该函数与恶意程序挂钩,则现有的删除操作可能无法获取目标文件的信息,导致无法删除目标文件。因此,杀毒软件需要绕过与恶意程序挂钩的函数,来实现文件的删除。
生成模块150用于当生成文件信息函数与恶意程序挂钩时,在内核层调用并执行预设函数,以生成目标文件对应的输入输出请求包IRP。
其中,生成模块150可包括创建子模块151、设置子模块152和调用子模块153。
创建子模块151用于创建IRP。其中,创建子模块151进一步包括第一获取单元1511、第二获取单元1512、第三获取单元1513、第四获取单元1514和创建单元1515。
首先,第一获取单元1511可获取目标文件的路径。然后第二获取单元1512可根据路径打开目标文件,并获取目标文件的句柄,第三获取单元1513再根据句柄获取目标文件的文件对象。之后,第四获取单元1514可根据文件对象获取目标文件所在的设备对象信息,最后创建单元1515可根据设备对象信息创建IRP(I/O request packets,输入输出请求包)。
例如,首先可获取目标文件路径,然后调用IoCreateFile函数打开目标文件,获取目标文件的句柄Handle。以Handle为参数调用ObReferenceObjectByHandle函数,以获取文件对象。以文件对象为参数调用IoGetRelatedDeviceObject函数,以获取文件所在的设备对象如C盘、D盘等。再以设备对象为参数,调用IoAllocateIrp函数创建IRP。
设置子模块152用于将IRP中的第一预设字段设置为预设值。其中,设置子模块152进一步包括第五获取单元1521、设置单元1522和赋值单元1523。
首先,第五获取单元1521可获取文件删除结构数据,然后设置单元1522将文件删除结构数据中的第二预设字段设置为预设值,最后赋值单元1523将预设值赋值至第一预设字段。其中,第一预设字段可以为Irp.SystemBuffer。第二预设字段可以为FileInformation.DeleteFile。
例如:文件删除结构数据可以为FILE_DISPOSITION_INFORMATION结构,其中,该结构中的一个字段为FileInformation.DeleteFile,将该字段的值设置为1,表示目标文件为待删除状态。然后把文件删除结构数据FileInformation赋值给Irp.SystemBuffer。
调用子模块153用于调用第一函数和第二函数设置IRP。其中,第一函数可以为IoSetCompletionRoutine,第二函数可以为IoCallDriver。
具体地,调用子模块153可通过调用IoSetCompletionRoutine和IoCallDriver这两个函数对IRP进行设置。
删除模块160用于下发IRP,并控制文件系统解析IRP,以及根据解析结果控制磁盘驱动删除目标文件。
在本发明的一个实施例中,删除模块160可下发设置好的IRP,然后控制文件系统对该IRP进行解析,然后解析出目标文件的相关信息,从而控制磁盘驱动删除目标文件。最终,达到绕过与恶意程序挂钩的函数,删除目标文件的目的。
本发明实施例的文件删除装置,通过在内核层调用并执行预设函数,生成与目标文件对应的IRP,最终控制文件系统对IRP进行解析,从而根据解析结果控制磁盘驱动删除目标文件,能够绕过与恶意程序挂钩的函数对目标文件的防护,实现对顽固的恶意文件的清除,保证系统信息安全。
为了实现上述实施例,本发明还提出一种电子设备。
图4是根据本发明一个实施例的电子设备的结构示意图。
如图4所示,该电子设备包括处理器41、存储器42、通信接口43和总线44,其中:处理器41、存储器42和通信接口43通过总线44连接并完成相互间的通信;存储器42存储可执行程序代码;处理器41通过读取存储器42中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行以下步骤:
S101’、接收针对目标文件的文件删除指令。
在实际应用中,用户要删除某一文件,可打开该文件所在的目录,并直接对该文件进行删除操作。当然,也可以通过第三方软件选中该文件,然后利用第三方软件实现文件的删除。其中,第三方软件可包括文件管理类软件、杀毒软件等。
在本发明的一个实施例中,杀毒软件可接收针对目标文件的文件删除指令。
S102’、根据文件删除指令在应用层调用并执行第一删除文件函数。
其中,第一删除文件函数可以是DeleteFile函数。
S103’、在内核层调用并执行第二删除文件函数。
其中,第二删除文件函数可以是NtDeleteFile函数。
S104’、在内核层检测生成文件信息函数是否与恶意程序挂钩。
其中,生成文件信息函数可以是NtSetInformationFile函数,其作用是封装IRP。NtSetInformationFile函数可向文件系统下发IRP,IRP中包括目标文件的信息。如果该函数与恶意程序挂钩,则现有的删除操作可能无法获取目标文件的信息,导致无法删除目标文件。因此,杀毒软件需要绕过与恶意程序挂钩的函数,来实现文件的删除。
S105’、如果生成文件信息函数与恶意程序挂钩,则在内核层调用并执行预设函数,以生成目标文件对应的输入输出请求包IRP。
具体地,如图2所示,在内核层调用并执行预设函数可包括以下步骤:
S1051’、创建IRP;
首先,可获取目标文件的路径。然后根据路径打开目标文件,并获取目标文件的句柄,再根据句柄获取目标文件的文件对象。之后,可根据文件对象获取目标文件所在的设备对象信息,最后根据设备对象信息创建IRP(I/O request packets,输入输出请求包)。
例如,首先可获取目标文件路径,然后调用IoCreateFile函数打开目标文件,获取目标文件的句柄Handle。以Handle为参数调用ObReferenceObjectByHandle函数,以获取文件对象。以文件对象为参数调用IoGetRelatedDeviceObject函数,以获取文件所在的设备对象如C盘、D盘等。再以设备对象为参数,调用IoAllocateIrp函数创建IRP。
S1052’、将IRP中的第一预设字段设置为预设值。
首先,可获取文件删除结构数据,然后将文件删除结构数据中的第二预设字段设置为预设值,最后将预设值赋值至第一预设字段。其中,第一预设字段可以为Irp.SystemBuffer。第二预设字段可以为FileInformation.DeleteFile。
例如:文件删除结构数据可以为FILE_DISPOSITION_INFORMATION结构,其中,该结构中的一个字段为FileInformation.DeleteFile,将该字段的值设置为1,表示目标文件为待删除状态。然后把文件删除结构数据FileInformation赋值给Irp.SystemBuffer。
S1053’、调用第一函数和第二函数设置IRP。
其中,第一函数可以为IoSetCompletionRoutine,第二函数可以为IoCallDriver。
具体地,可通过调用IoSetCompletionRoutine和IoCallDriver这两个函数对IRP进行设置。
S106’、下发IRP,并控制文件系统解析IRP,以及根据解析结果控制磁盘驱动删除目标文件。
在本发明的一个实施例中,可下发设置好的IRP,然后控制文件系统对该IRP进行解析,然后解析出目标文件的相关信息,从而控制磁盘驱动删除目标文件。最终,达到绕过与恶意程序挂钩的函数,删除目标文件的目的。
本发明实施例的电子设备,通过在内核层调用并执行预设函数,生成与目标文件对应的IRP,最终控制文件系统对IRP进行解析,从而根据解析结果控制磁盘驱动删除目标文件,绕过与恶意程序挂钩的函数对目标文件的防护,实现对顽固的恶意文件的清除,保证系统信息安全。
可以理解的是,该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
为实现上述目的,本发明还提出一种存储介质,其中,存储介质用于存储应用程序,应用程序用于在运行时执行本发明的一种文件删除方法。
为实现上述目的,本发明还提出一种应用程序,其中,应用程序用于在运行时执行本发明的一种文件删除方法。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (9)

1.一种文件删除方法,其特征在于,包括以下步骤:
接收针对目标文件的文件删除指令;
根据所述文件删除指令在应用层调用并执行第一删除文件函数;
在内核层调用并执行第二删除文件函数;
在所述内核层检测生成文件信息函数是否与恶意程序挂钩,所述第一删除文件函数是DeleteFile函数,所述第二删除文件函数是NtDeleteFile函数,所述文件信息函数是NtSetInformationFile函数;
如果所述生成文件信息函数与恶意程序挂钩,则在所述内核层调用并执行预设函数,以生成所述目标文件对应的输入输出请求包IRP;
下发所述IRP,并控制文件系统解析所述IRP,以及根据解析结果控制磁盘驱动删除所述目标文件。
2.如权利要求1所述的方法,其特征在于,在所述内核层调用并执行预设函数,包括:
创建所述IRP;
将所述IRP中的第一预设字段设置为预设值;
调用第一函数和第二函数设置所述IRP,所述第一函数为IoSetCompletionRoutine函数,所述第二函数为IoCallDriver函数。
3.如权利要求2所述的方法,其特征在于,创建所述IRP,包括:
获取目标文件的路径;
根据所述路径打开所述目标文件,并获取所述目标文件的句柄;
根据所述句柄获取所述目标文件的文件对象;
根据所述文件对象获取所述目标文件所在的设备对象信息;
根据所述设备对象信息创建所述IRP。
4.如权利要求2所述的方法,其特征在于,将所述IRP中的第一预设字段设置为预设值,包括:
获取文件删除结构数据;
将所述文件删除结构数据中的第二预设字段设置为预设值;
将所述预设值赋值至所述第一预设字段。
5.一种文件删除装置,其特征在于,包括:
接收模块,用于接收针对目标文件的文件删除指令;
第一执行模块,用于根据所述文件删除指令在应用层调用并执行第一删除文件函数;
第二执行模块,用于在内核层调用并执行第二删除文件函数;
检测模块,用于在所述内核层检测生成文件信息函数是否与恶意程序挂钩,所述第一删除文件函数是DeleteFile函数,所述第二删除文件函数是NtDeleteFile函数,所述文件信息函数是NtSetInformationFile函数;
生成模块,用于当所述生成文件信息函数与恶意程序挂钩时,在所述内核层调用并执行预设函数,以生成所述目标文件对应的输入输出请求包IRP;
删除模块,用于下发所述IRP,并控制文件系统解析所述IRP,以及根据解析结果控制磁盘驱动删除所述目标文件。
6.如权利要求5所述的装置,其特征在于,所述生成模块,包括:
创建子模块,用于创建所述IRP;
设置子模块,用于将所述IRP中的第一预设字段设置为预设值;
调用子模块,用于调用第一函数和第二函数设置所述IRP,所述第一函数为IoSetCompletionRoutine函数,所述第二函数为IoCallDriver函数。
7.如权利要求6所述的装置,其特征在于,所述创建子模块,包括:
第一获取单元,用于获取目标文件的路径;
第二获取单元,用于根据所述路径打开所述目标文件,并获取所述目标文件的句柄;
第三获取单元,用于根据所述句柄获取所述目标文件的文件对象;
第四获取单元,用于根据所述文件对象获取所述目标文件所在的设备对象信息;
创建单元,用于根据所述设备对象信息创建所述IRP。
8.如权利要求6所述的装置,其特征在于,所述设置子模块,包括:
第五获取单元,用于获取文件删除结构数据;
设置单元,用于将所述文件删除结构数据中的第二预设字段设置为预设值;
赋值单元,用于将所述预设值赋值至所述第一预设字段。
9.一种电子设备,其特征在于,包括处理器、存储器、通信接口和总线;所述处理器、所述存储器和所述通信接口通过所述总线连接并完成相互间的通信;所述存储器存储可执行程序代码;所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行权利要求1-4任一项所述的文件删除方法。
CN201610491590.1A 2016-06-29 2016-06-29 文件删除方法、装置及电子设备 Active CN106169048B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610491590.1A CN106169048B (zh) 2016-06-29 2016-06-29 文件删除方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610491590.1A CN106169048B (zh) 2016-06-29 2016-06-29 文件删除方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN106169048A CN106169048A (zh) 2016-11-30
CN106169048B true CN106169048B (zh) 2019-03-12

Family

ID=58064989

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610491590.1A Active CN106169048B (zh) 2016-06-29 2016-06-29 文件删除方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN106169048B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947366B (zh) * 2019-03-15 2022-04-01 温州职业技术学院 一种电子信息安全粉碎装置
CN111723016B (zh) * 2020-06-24 2024-06-04 湖南国科微电子股份有限公司 文件关闭方法、装置、电子设备和存储介质
CN112035832B (zh) * 2020-08-21 2022-02-11 郑州信大捷安信息技术股份有限公司 一种文件活动的监控方法和系统
CN113672925B (zh) * 2021-08-26 2024-01-26 安天科技集团股份有限公司 阻止勒索软件攻击的方法、装置、存储介质及电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101551756A (zh) * 2009-03-31 2009-10-07 成都市华为赛门铁克科技有限公司 基于操作系统层的虚拟方法及虚拟装置
CN102693232A (zh) * 2011-03-23 2012-09-26 腾讯科技(深圳)有限公司 一种删除文件的方法及文件删除装置
CN102722680A (zh) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 清除恶意程序的方法和系统
CN102855435A (zh) * 2011-06-27 2013-01-02 奇智软件(北京)有限公司 一种文件解锁、粉碎的方法及装置
CN103065092A (zh) * 2012-12-24 2013-04-24 公安部第一研究所 一种拦截可疑程序运行的方法
CN103995842A (zh) * 2012-01-29 2014-08-20 北京奇虎科技有限公司 文件删除方法及系统
US8910283B1 (en) * 2013-11-21 2014-12-09 Kaspersky Lab Zao Firmware-level security agent supporting operating system-level security in computer system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101551756A (zh) * 2009-03-31 2009-10-07 成都市华为赛门铁克科技有限公司 基于操作系统层的虚拟方法及虚拟装置
CN102693232A (zh) * 2011-03-23 2012-09-26 腾讯科技(深圳)有限公司 一种删除文件的方法及文件删除装置
CN102855435A (zh) * 2011-06-27 2013-01-02 奇智软件(北京)有限公司 一种文件解锁、粉碎的方法及装置
CN103995842A (zh) * 2012-01-29 2014-08-20 北京奇虎科技有限公司 文件删除方法及系统
CN102722680A (zh) * 2012-06-07 2012-10-10 腾讯科技(深圳)有限公司 清除恶意程序的方法和系统
CN103065092A (zh) * 2012-12-24 2013-04-24 公安部第一研究所 一种拦截可疑程序运行的方法
US8910283B1 (en) * 2013-11-21 2014-12-09 Kaspersky Lab Zao Firmware-level security agent supporting operating system-level security in computer system

Also Published As

Publication number Publication date
CN106169048A (zh) 2016-11-30

Similar Documents

Publication Publication Date Title
CN106169048B (zh) 文件删除方法、装置及电子设备
US20170161507A1 (en) Dual-system Electronic Apparatus and Terminal
US10176327B2 (en) Method and device for preventing application in an operating system from being uninstalled
US9239934B2 (en) Mobile computing system for providing high-security execution environment
US10877903B2 (en) Protected memory area
CN103714292B (zh) 一种漏洞利用代码的检测方法
CN103970563B (zh) 动态加载安卓类的方法
CN105487987B (zh) 一种处理并发顺序读io的方法及装置
RU2012133437A (ru) Система управления связью и способ управления связью
US10176317B2 (en) Method and apparatus for managing super user password on smart mobile terminal
CN104881291B (zh) 默认浏览器的控制方法、装置及终端
CN103430147B (zh) 信息处理装置及信息处理装置的控制方法
CN106126291B (zh) 一种删除恶意文件的方法、装置及电子设备
WO2014161353A1 (en) Method for starting process of application and computer system
CN106203069B (zh) 一种动态链接库文件的拦截方法、装置及终端设备
WO2014183482A1 (en) Method, system and mobile terminal for deleting chat record
CN103218551B (zh) 一种保护java程序的方法
CN101950339B (zh) 一种电脑安全防护方法和系统
CN101997873A (zh) 一种能力接入的方法和接入平台
CN102280134A (zh) 一种用于提高移动存储设备中数据安全的方法
CN104200164B (zh) 一种加载器Loader病毒的查杀方法、装置及终端
CN110275701A (zh) 数据处理方法、装置、介质和计算设备
US11627150B2 (en) Proxy services for the secure upload of file system tree structures
CN109558375B (zh) 一种优化的文件存储方法、存储介质、设备及系统
CN106203090B (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20181211

Address after: 519030 Room 105-53811, No. 6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province

Applicant after: Zhuhai Leopard Technology Co.,Ltd.

Address before: 100085 East District, Second Floor, 33 Xiaoying West Road, Haidian District, Beijing

Applicant before: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

GR01 Patent grant
GR01 Patent grant