CN105930739A - 一种防止文件被删除的方法及终端 - Google Patents

一种防止文件被删除的方法及终端 Download PDF

Info

Publication number
CN105930739A
CN105930739A CN201610232534.6A CN201610232534A CN105930739A CN 105930739 A CN105930739 A CN 105930739A CN 201610232534 A CN201610232534 A CN 201610232534A CN 105930739 A CN105930739 A CN 105930739A
Authority
CN
China
Prior art keywords
path
file
registration table
deleted
modified
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
CN201610232534.6A
Other languages
English (en)
Other versions
CN105930739B (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
Beijing Kingsoft Internet Security Software 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 Beijing Kingsoft Internet Security Software Co Ltd filed Critical Beijing Kingsoft Internet Security Software Co Ltd
Priority to CN201610232534.6A priority Critical patent/CN105930739B/zh
Publication of CN105930739A publication Critical patent/CN105930739A/zh
Application granted granted Critical
Publication of CN105930739B publication Critical patent/CN105930739B/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/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • 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/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2147Locking files

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开了一种防止文件被删除的方法,包括:根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径;若是,则根据注册表的写入函数写入的第二参数获取待修改的注册表中包含的待删除文件的存储路径,判断待删除文件的存储路径是否为预先设定的保护路径;若待删除文件的存储路径为保护路径,则判断发起本次注册表修改操作的进程是否为预设软件进程;若发起本次注册表修改操作的进程为预设软件进程,则结束本次注册表修改操作。本发明实施例还公开了一种终端。采用本发明实施例,具有可降低文件被误删除的概率,提高文件的安全性的优点。

Description

一种防止文件被删除的方法及终端
技术领域
本发明涉及计算机系统领域,尤其涉及一种防止文件被删除的方法及终端。
背景技术
当前Windows系统提供了一种删除文件的机制,这种机制是把要删除的文件按照一定的格式写入指定注册表位置,系统重启时会从此注册表位置读取该文件并将该文件删除。如果有恶意软件侵入,系统文件被恶意软件写入到该注册表位置,则该系统文件将在系统重启时被误删除。现有技术的这种文件删除机制,文件被误删除的概率高,系统安全性低,降低了系统的用户体验。
发明内容
本发明实施例提供一种防止文件被删除的方法及终端,可降低文件被误删除的概率,提高文件的安全性。
本发明实施例提供了一种防止文件被删除的方法,其可包括:
根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径;
若判断得所述待修改的注册表的路径为所述目标注册表路径,则根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,判断所述待删除文件的存储路径是否为预先设定的保护路径;
若所述待删除文件的存储路径为保护路径,则判断发起本次注册表修改操作的进程是否为预设软件进程,所述预设软件进程不具备删除被保护文件的权限;
若所述发起本次注册表修改操作的进程为预设软件进程,则结束本次注册表修改操作,以防止被保护文件被删除。
其中,所述注册表的写入函数为系统内核函数;
所述根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,包括:
获取所述系统内核函数中包含的第一参数中包含的待修改的注册表的注册表句柄,并根据所述注册表句柄确定所述待修改的注册表的路径。
其中,所述注册表的写入函数为系统内核函数;
所述根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,包括:
获取所述系统内核函数中包含的第二参数中包含的待修改数据信息,根据所述待修改数据信息确定所述待修改的注册表中包含的待删除文件的存储路径。
其中,所述根据注册表的写入函数写入的第一参数确定待修改的注册表的路径之前,所述方法还包括:
设定用于防止被保护文件被删除的屏蔽软件进程,将所述屏蔽软件进程的删除被保护文件的权限设置为无,并将所述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
其中,所述预设软件进程包括:病毒程序、蠕虫程序或者木马程序中的至少一种程序的进程。
本发明实施例还提供了一种终端,其可包括:
第一判断模块,用于根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径;
第二判断模块,用于在所述第一判断模块判断得所述待修改的注册表的路径为所述目标注册表路径时,根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,判断所述待删除文件的存储路径是否为预先设定的保护路径;
第三判断模块,用于在所述第二判断模块判断得所述待删除文件的存储路径为保护路径时,判断发起本次注册表修改操作的进程是否为预设软件进程,所述预设软件进程不具备删除被保护文件的权限;
处理模块,用于在所述第三判断模块判断得所述发起本次注册表修改操作的进程为预设软件进程时,结束本次注册表修改操作,以防止被保护文件被删除。
其中,所述注册表的写入函数为系统内核函数;
所述第一判断模块具体用于:
获取所述系统内核函数中包含的第一参数中包含的待修改的注册表的注册表句柄,并根据所述注册表句柄确定所述待修改的注册表的路径。
其中,所述注册表的写入函数为系统内核函数;
所述第二判断模块具体用于:
获取所述系统内核函数中包含的第二参数中包含的待修改数据信息,根据所述待修改数据信息确定所述待修改的注册表中包含的待删除文件的存储路径。
其中,所述终端还包括:
设置模块,用于设定用于防止被保护文件被删除的屏蔽软件进程,将所述屏蔽软件进程的删除被保护文件的权限设置为无,并将所述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
其中,所述预设软件进程包括:病毒程序、蠕虫程序或者木马程序中的至少一种程序的进程。
实施本发明实施例,具有如下有益效果:
在本发明实施例中,可首先根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,还可在判断得待修改的注册表的路径为用于执行系统重启时删除文件的目标注册表路径时,根据注册表的写入函数写入的第二参数确定待删除文件的存储路径。进一步的,若待删除文件的存储路径为保护路径,则可在发起本次注册表修改操作的进程为不具备删除被保护文件的权限的预设软件进程时,直接结束本次注册表修改操作,防止被保护文件被删除。本发明实施例可根据注册表中包含的文件的存储路径的判断和发起注册表修改操作的进程的类型判断来确定是否结束当前进程,以此来防止被保护文件被删除,可降低文件被不具备删除被保护文件的权限的软件进程误删除的概率,提高文件的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的防止文件被删除的方法的流程示意图;
图2是本发明实施例提供的终端的一结构示意图;
图3是本发明实施例提供的终端的另一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
具体实现中,本发明实施例中所描述的终端可包括:手机、平板电脑(PortableAndroid Device,PAD)、笔记本电脑以及个人数字助理(Personal Digital Assistant,PDA)等设备,在此不做限制。下面将直接以终端作为说明,对本发明实施例提供的防止文件被删除的方法进行具体描述。
具体实现中,本发明实施例所描述的注册表具体可为Microsoft Windows操作系统中的一个重要的数据库,用于存储系统和应用程序的设置信息。
本发明实施例中所描述的进程(英文:Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。在早期面向进程设计的计算机结构中,进程是程序的基本执行实体;在当代面向线程设计的计算机结构中,进程是线程的容器。程序是指令、数据及其组织形式的描述,进程是程序的实体。通过结束进程可阻止该进程对应的程序继续运行。
此外,本发明实施例中所描述的Hook(称为钩子)是Windows消息处理机制的一个平台。应用程序可以在该平台设置子程序用以监视指定窗口的某种消息,而且所监视的窗口可以是其他应用程序的进程所创建的。消息到达之后,应用程序设置的子程序可在消息到达之后,在目标窗口处理函数对该消息进行处理之前处理该消息。钩子的这种消息处理机制允许应用程序截获并处理Windows消息或特定事件。具体应用中,钩子具体可为一个处理消息的程序段,通过系统调用,把它挂入系统。每当上述Windows消息或者特定事件的消息发出之后,在上述Windows消息或者特定事件的消息没有到达目的窗口前,钩子就先捕获该消息,即,钩子函数先获得上述Windows消息或者特定事件的消息的控制权。钩子可以加工处理(或者改变)该Windows消息或者特定事件的消息,也可以不作处理而继续传递该Windows消息或者特定事件的消息,还可以强制结束该Windows消息或者特定事件的消息的传递。
具体实现中,本发明实施例中所描述的恶意软件可包括在计算机系统上执行恶意任务的病毒程序、蠕虫程序和木马(例如特洛伊木马)程序等,通过破坏安全软件的进程来实施对安全软件的控制。其中,上述安全软件具体可为对计算机系统的安全没有破坏性的威胁的程序。
具体实现中,安全软件都有自我保护的机制,在自我保护的机制下,若恶意软件想要删除安全软件的相关文件,安全软件将会拒绝删除文件的操作,恶意软件则无法删除安全软件的文件,破坏安全软件的正常运行。于是,恶意软件为了避开安全软件的自我保护的机制,需要选择其他方式来删除安全软件的相关文件。恶意软件会利用Windows系统提供的删除文件的机制,将安全软件的相关文件的路径信息按照指定格式写入到指定注册表位置,其中,上述指定注册表位置具体可为HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\PendingFileRenameOperations。系统重启时会从此注册表位置读取该文件并将该文件删除,从而帮助恶意软件将安全软件的相关文件删除,破坏安全软件的正常运行。通过此方法,恶意软件把安全软件的相关文件的路径信息写入此注册表位置,当下次系统重启时,安全软件的自我保护的机制还未生效之前,系统就会删除安全软件的相关文件,这样安全软件就不能正常运行,提高了恶意软件侵入系统的风险。
为了防止恶意软件例如Windows系统提供的这种删除文件的机制来删除安全软件的文件,破坏安全软件的正常运行,本发明实施例提供了一种防止文件被删除的方法及终端,可降低文件被误删除的概率,提高文件的安全性。
参见图1,是本发明实施例提供的防止文件被删除的方法的流程示意图。本发明实施例中所描述的方法,包括步骤:
S101,根据注册表的写入函数写入的第一参数确定待修改的注册表的路径。
在一些可行的实施方式中,本发明实施例中所描述的注册表的写入函数具体可为系统内核函数,例如金山毒霸的防御驱动中的Hook内核函数——NtSetValueKey函数。发起注册表的数据修改的进程调用NtSetValueKey函数修改注册表的数据时则首先调用本发明实施例中所描述的Hook函数,在Hook函数中进行进程类型和待修改的注册表的数据进行判断,确定是否允许发起注册表的数据修改的进程调用NtSetValueKey函数完成相关操作。
具体实现中,上述进程可在终端的系统中运行,下面将简单以终端为执行主体对本发明实施例中所描述的防止文件被删除的方法进行描述。
在一些可行的实施方式中,当终端检测得到某个进程发起了注册表修改操作时,包括注册表中包含的文件路径对应的文件删除等操作时,可首先获取系统内核函数,即NtSetValueKey函数中包含的第一参数中包含的待修改的注册表的注册表句柄,根据上述注册表句柄确定待修改的注册表的路径。
S102,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径,若判断结果为是,则执行步骤S103。
在一些可行的实施方式中,终端确定了待修改的注册表的路径之后,则可判断上述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径。其中,上述目标注册表具有可为Windows系统提供的系统重启时获取待删除文件进行文件删除的指定路径,即,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\PendingFileRenameOperations。若终端判断得上述待修改的注册表的路径为目标注册表路径,则可做进一步的判断,确定是否允许上述进程调用系统内核函数。若终端判断得上述待修改的注册表的路径不是目标注册表路径,则可直接调用系统内核函数完成本次注册表修改操作,即允许进程继续执行相关操作。
S103,根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径。
在一些可行的实施方式中,终端判断得上述待修改的注册表的路径为目标注册表路径之后,则可确定发起注册表修改操作的进程想要利用系统重启来删除文件。为了防止文件被误删除,终端可进一步根据注册表的写入函数写入的第二参数获取待修改的注册表中包含的待删除文件的存储路径。具体的,终端可获取系统内核函数,即NtSetValueKey函数中包含的第二参数获取待修改的注册表中包含的待删除文件的存储路径。其中,上述NtSetValueKey函数中包含的第二参数指示着被写入到目标注册表路径等待系统重启时删除的文件的存储路径。终端可根据上述第二参数获取待删除文件的路径,进而可确定上述待删除文件的路径是否为受保护的路径。
S104,判断所述待删除文件的存储路径是否为预先设定的保护路径,若判断结果为是,则执行步骤S105。
在一些可行的实施方式中,终端获取得到待删除文件的存储路径之后,可根据预先存储的保护路径表判断上述待删除文件的存储路径是否为预先设定的保护路径。具体实现中,终端可预先设定一个或者多个路径,将上述一个或者多个路径存储为一张保护路径的路径表,用于确定某一个路径是否为保护路径。或者,终端可预先定义一种或者多种类型的路径,将不同类型的多个路径及其路径类型存储为一张保护路径的路径表。终端获取得到待删除文件的存储路径之后,则可将上述存储路径与上述路径表进行匹配,确定上述待删除文件的存储路径是否为上述路径表中包含的路径或者路径类型。若上述待删除文件的存储路径为上述路径表中包含的路径或者路径类型,则可确定上述待删除文件的存储路径为保护路径,进而可确定上述待删除文件为被保护文件。若终端判断的上述待删除文件的存储路径不是保护路径,则可直接调用系统内核函数完成本次注册表修改操作,即允许进程继续执行相关操作。
S105,判断发起本次注册表修改操作的进程是否为预设软件进程,若判断结果为是,则执行步骤S106。
在一些可行的实施方式中,终端确定了上述待删除文件的存储路径为保护路径之后,可进一步判断发起本次注册表修改操作的进程是否有权限删除被保护文件。具体实现中,终端可预先设定一个软件数据库,其中包括具备删除被保护文件的权限的安全软件,和不具备删除被保护文件的权限的恶意软件。其中,上述安全软件为不对系统或者系统文件的安全造成威胁的软件,例如安全卫士等。上述恶意软件可包括:病毒程序、蠕虫程序或者木马程序等。终端可将上述恶意软件的进程设定为用于防止被保护文件被删除的屏蔽软件进程,将上述屏蔽软件进程的删除被保护文件的权限设置为无,并将上述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
具体实现中,终端可将上述发起本次注册表修改操作的进程与上述软件数据库中包含的软件的进程进行匹配,判断发起本次注册表修改操作的进程是否为预设软件进程,进而可确定发起本次注册表修改操作的进程是否具备删除被保护文件的权限。若终端判断的上述发起本次注册表修改操作的进程不是预设软件进程,则可直接调用系统内核函数完成本次注册表修改操作,即允许进程继续执行相关操作。
S106,结束本次注册表修改操作。
在一些可行的实施方式中,终端确定发起本次注册表修改操作的进程为预设软件进程之后,则可确定上述不具备删除被保护文件的权限的进程想要删除被保护文件,可能存在恶意软件侵入的风险,此时,终端可直接结束本次注册表修改操作,防止被保护文件被误删除。
在本发明实施例中,终端可首先根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,还可在判断得待修改的注册表的路径为用于执行系统重启时删除文件的目标注册表路径时,根据注册表的写入函数写入的第二参数确定待删除文件的存储路径。进一步的,若待删除文件的存储路径为保护路径,终端则可在发起本次注册表修改操作的进程为不具备删除被保护文件的权限的预设软件进程时,直接结束本次注册表修改操作,防止被保护文件被删除。本发明实施例可根据注册表中包含的文件的存储路径的判断和发起注册表修改操作的进程的类型判断来确定是否结束当前进程,以此来防止被保护文件被删除,可降低文件被不具备删除被保护文件的权限的软件进程误删除的概率,提高文件的安全性。
参见图2,是本发明实施例提供的终端的一结构示意图。本发明实施例中所描述的终端,包括:
第一判断模块10,用于根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径。
第二判断模块20,用于在所述第一判断模块判断得所述待修改的注册表的路径为所述目标注册表路径时,根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,判断所述待删除文件的存储路径是否为预先设定的保护路径。
第三判断模块30,用于在所述第二判断模块判断得所述待删除文件的存储路径为保护路径时,判断发起本次注册表修改操作的进程是否为预设软件进程,所述预设软件进程不具备删除被保护文件的权限。
处理模块40,用于在所述第三判断模块判断得所述发起本次注册表修改操作的进程为预设软件进程时,结束本次注册表修改操作,以防止被保护文件被删除。
在一些可行的实施方式中,所述注册表的写入函数为系统内核函数;
所述第一判断模块10具体用于:
获取所述系统内核函数中包含的第一参数中包含的待修改的注册表的注册表句柄,并根据所述注册表句柄确定所述待修改的注册表的路径。
在一些可行的实施方式中,所述注册表的写入函数为系统内核函数;
所述第二判断模块20具体用于:
获取所述系统内核函数中包含的第二参数中包含的待修改数据信息,根据所述待修改数据信息确定所述待修改的注册表中包含的待删除文件的存储路径。
在一些可行的实施方式中,如图3,是本发明实施例提供的终端的另一结构示意图。本发明实施例中所描述的终端还包括:
设置模块50,用于设定用于防止被保护文件被删除的屏蔽软件进程,将所述屏蔽软件进程的删除被保护文件的权限设置为无,并将所述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
在一些可行的实施方式中,本发明实施例中所描述的注册表的写入函数具体可为系统内核函数,例如金山毒霸的防御驱动中的Hook内核函数——NtSetValueKey函数。发起注册表的数据修改的进程调用NtSetValueKey函数修改注册表的数据时则首先调用本发明实施例中所描述的Hook函数,在Hook函数中进行进程类型和待修改的注册表的数据进行判断,确定是否允许发起注册表的数据修改的进程调用NtSetValueKey函数完成相关操作。
具体实现中,上述进程可在终端的系统中运行,下面将简单以终端为执行主体对本发明实施例中所描述的终端进行描述。
在一些可行的实施方式中,当终端的第一判断模块10检测得到某个进程发起了注册表修改操作时,包括注册表中包含的文件路径对应的文件删除等操作时,可首先获取系统内核函数,即NtSetValueKey函数中包含的第一参数中包含的待修改的注册表的注册表句柄,根据上述注册表句柄确定待修改的注册表的路径。
在一些可行的实施方式中,第一判断模块10确定了待修改的注册表的路径之后,则可判断上述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径。其中,上述目标注册表具有可为Windows系统提供的系统重启时获取待删除文件进行文件删除的指定路径,即,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\PendingFileRenameOperations。若第一判断模块10判断得上述待修改的注册表的路径为目标注册表路径,则可通过第二判断模块20做进一步的判断,确定是否允许上述进程调用系统内核函数。若第一判断模块10判断得上述待修改的注册表的路径不是目标注册表路径,则可直接调用系统内核函数完成本次注册表修改操作,即允许进程继续执行相关操作。
在一些可行的实施方式中,第一判断模块10判断得上述待修改的注册表的路径为目标注册表路径之后,则可确定发起注册表修改操作的进程想要利用系统重启来删除文件。为了防止文件被误删除,第二判断模块20可进一步根据注册表的写入函数写入的第二参数获取待修改的注册表中包含的待删除文件的存储路径。具体的,第二判断模块20可获取系统内核函数,即NtSetValueKey函数中包含的第二参数获取待修改的注册表中包含的待删除文件的存储路径。其中,上述NtSetValueKey函数中包含的第二参数指示着被写入到目标注册表路径等待系统重启时删除的文件的存储路径。第二判断模块20可根据上述第二参数获取待删除文件的路径,进而可确定上述待删除文件的路径是否为受保护的路径。
在一些可行的实施方式中,第二判断模块20获取得到待删除文件的存储路径之后,可根据预先存储的保护路径表判断上述待删除文件的存储路径是否为预先设定的保护路径。具体实现中,第二判断模块20可预先设定一个或者多个路径,将上述一个或者多个路径存储为一张保护路径的路径表,用于确定某一个路径是否为保护路径。或者,第二判断模块20可预先定义一种或者多种类型的路径,将不同类型的多个路径及其路径类型存储为一张保护路径的路径表。第二判断模块20获取得到待删除文件的存储路径之后,则可将上述存储路径与上述路径表进行匹配,确定上述待删除文件的存储路径是否为上述路径表中包含的路径或者路径类型。若上述待删除文件的存储路径为上述路径表中包含的路径或者路径类型,第二判断模块20则可确定上述待删除文件的存储路径为保护路径,进而可确定上述待删除文件为被保护文件。
在一些可行的实施方式中,第二判断模块20确定了上述待删除文件的存储路径为保护路径之后,第三判断模块30可进一步判断发起本次注册表修改操作的进程是否有权限删除被保护文件。具体实现中,设置模块50可预先设定一个软件数据库,其中包括具备删除被保护文件的权限的安全软件,和不具备删除被保护文件的权限的恶意软件。其中,上述安全软件为不对系统或者系统文件的安全造成威胁的软件,例如安全卫士等。上述恶意软件可包括:病毒程序、蠕虫程序或者木马程序等。设置模块50可将上述恶意软件的进程设定为用于防止被保护文件被删除的屏蔽软件进程,将上述屏蔽软件进程的删除被保护文件的权限设置为无,并将上述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
具体实现中,第三判断模块30可将上述发起本次注册表修改操作的进程与上述软件数据库中包含的软件的进程进行匹配,判断发起本次注册表修改操作的进程是否为预设软件进程,进而可确定发起本次注册表修改操作的进程是否具备删除被保护文件的权限。
在一些可行的实施方式中,第三判断模块30确定发起本次注册表修改操作的进程为预设软件进程之后,则可确定上述不具备删除被保护文件的权限的进程想要删除被保护文件,可能存在恶意软件侵入的风险,此时,处理模块40可直接结束本次注册表修改操作,防止被保护文件被误删除。
在本发明实施例中,终端可首先根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,还可在判断得待修改的注册表的路径为用于执行系统重启时删除文件的目标注册表路径时,根据注册表的写入函数写入的第二参数确定待删除文件的存储路径。进一步的,若待删除文件的存储路径为保护路径,终端则可在发起本次注册表修改操作的进程为不具备删除被保护文件的权限的预设软件进程时,直接结束本次注册表修改操作,防止被保护文件被删除。本发明实施例可根据注册表中包含的文件的存储路径的判断和发起注册表修改操作的进程的类型判断来确定是否结束当前进程,以此来防止被保护文件被删除,可降低文件被不具备删除被保护文件的权限的软件进程误删除的概率,提高文件的安全性。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种防止文件被删除的方法,其特征在于,包括:
根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径;
若判断得所述待修改的注册表的路径为所述目标注册表路径,则根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,判断所述待删除文件的存储路径是否为预先设定的保护路径;
若所述待删除文件的存储路径为保护路径,则判断发起本次注册表修改操作的进程是否为预设软件进程,所述预设软件进程不具备删除被保护文件的权限;
若所述发起本次注册表修改操作的进程为预设软件进程,则结束本次注册表修改操作,以防止被保护文件被删除。
2.如权利要求1所述的方法,其特征在于,所述注册表的写入函数为系统内核函数;
所述根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,包括:
获取所述系统内核函数中包含的第一参数中包含的待修改的注册表的注册表句柄,并根据所述注册表句柄确定所述待修改的注册表的路径。
3.如权利要求1或2所述的方法,其特征在于,所述注册表的写入函数为系统内核函数;
所述根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,包括:
获取所述系统内核函数中包含的第二参数中包含的待修改数据信息,根据所述待修改数据信息确定所述待修改的注册表中包含的待删除文件的存储路径。
4.如权利要求3所述的方法,其特征在于,所述根据注册表的写入函数写入的第一参数确定待修改的注册表的路径之前,所述方法还包括:
设定用于防止被保护文件被删除的屏蔽软件进程,将所述屏蔽软件进程的删除被保护文件的权限设置为无,并将所述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
5.如权利要求1-4任一项所述的方法,其特征在于,所述预设软件进程包括:病毒程序、蠕虫程序或者木马程序中的至少一种程序的进程。
6.一种终端,其特征在于,包括:
第一判断模块,用于根据注册表的写入函数写入的第一参数确定待修改的注册表的路径,判断所述待修改的注册表的路径是否为用于执行系统重启时删除文件的目标注册表路径;
第二判断模块,用于在所述第一判断模块判断得所述待修改的注册表的路径为所述目标注册表路径时,根据所述注册表的写入函数写入的第二参数获取所述待修改的注册表中包含的待删除文件的存储路径,判断所述待删除文件的存储路径是否为预先设定的保护路径;
第三判断模块,用于在所述第二判断模块判断得所述待删除文件的存储路径为保护路径时,判断发起本次注册表修改操作的进程是否为预设软件进程,所述预设软件进程不具备删除被保护文件的权限;
处理模块,用于在所述第三判断模块判断得所述发起本次注册表修改操作的进程为预设软件进程时,结束本次注册表修改操作,以防止被保护文件被删除。
7.如权利要求6所述的终端,其特征在于,所述注册表的写入函数为系统内核函数;
所述第一判断模块具体用于:
获取所述系统内核函数中包含的第一参数中包含的待修改的注册表的注册表句柄,并根据所述注册表句柄确定所述待修改的注册表的路径。
8.如权利要求6或7所述的终端,其特征在于,所述注册表的写入函数为系统内核函数;
所述第二判断模块具体用于:
获取所述系统内核函数中包含的第二参数中包含的待修改数据信息,根据所述待修改数据信息确定所述待修改的注册表中包含的待删除文件的存储路径。
9.如权利要求8所述的终端,其特征在于,所述终端还包括:
设置模块,用于设定用于防止被保护文件被删除的屏蔽软件进程,将所述屏蔽软件进程的删除被保护文件的权限设置为无,并将所述不具备删除被保护文件的权限的屏蔽软件进程设定为预设软件进程。
10.如权利要求6-9任一项所述的终端,其特征在于,所述预设软件进程包括:病毒程序、蠕虫程序或者木马程序中的至少一种程序的进程。
CN201610232534.6A 2016-04-14 2016-04-14 一种防止文件被删除的方法及终端 Active CN105930739B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610232534.6A CN105930739B (zh) 2016-04-14 2016-04-14 一种防止文件被删除的方法及终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610232534.6A CN105930739B (zh) 2016-04-14 2016-04-14 一种防止文件被删除的方法及终端

Publications (2)

Publication Number Publication Date
CN105930739A true CN105930739A (zh) 2016-09-07
CN105930739B CN105930739B (zh) 2019-07-23

Family

ID=56838187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610232534.6A Active CN105930739B (zh) 2016-04-14 2016-04-14 一种防止文件被删除的方法及终端

Country Status (1)

Country Link
CN (1) CN105930739B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844566A (zh) * 2016-12-30 2017-06-13 联想(北京)有限公司 一种数据处理方法及系统、被检测设备及处理设备
CN108170854A (zh) * 2018-01-19 2018-06-15 广东欧珀移动通信有限公司 文件清理方法、装置、存储介质及移动终端
CN108304699A (zh) * 2018-02-13 2018-07-20 北京奇安信科技有限公司 一种对安全软件进行保护的方法及装置
CN108363931A (zh) * 2018-02-13 2018-08-03 北京奇安信科技有限公司 一种对隔离区文件进行还原的方法及装置
CN110659491A (zh) * 2019-09-23 2020-01-07 深信服科技股份有限公司 一种计算机系统恢复方法、装置、设备及可读存储介质
CN111158937A (zh) * 2019-12-31 2020-05-15 奇安信科技集团股份有限公司 基于内核驱动的软件核心文件内生防护方法及装置
CN111723016A (zh) * 2020-06-24 2020-09-29 湖南国科微电子股份有限公司 文件关闭方法、装置、电子设备和存储介质
CN112003849A (zh) * 2020-08-14 2020-11-27 苏州浪潮智能科技有限公司 一种修改账户启用禁用状态的方法和设备
CN112597536A (zh) * 2020-12-23 2021-04-02 瀚高基础软件股份有限公司 数据库表文件被非法删除的实时检测方法及装备
CN113051550A (zh) * 2021-03-30 2021-06-29 深信服科技股份有限公司 一种终端设备及其防护方法、装置和可读存储介质
CN113296756A (zh) * 2021-05-28 2021-08-24 成都谐盈科技有限公司 一种用户可修改工件的合并方法及系统
CN114036519A (zh) * 2021-11-25 2022-02-11 深信服科技股份有限公司 一种进程管理方法、装置、设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101231682A (zh) * 2007-01-26 2008-07-30 李贵林 计算机信息安全的方法
CN102520944A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 Windows应用程序虚拟化的实现方法
CN104143069A (zh) * 2014-08-04 2014-11-12 上海斐讯数据通信技术有限公司 一种保护系统文件的方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101231682A (zh) * 2007-01-26 2008-07-30 李贵林 计算机信息安全的方法
CN102520944A (zh) * 2011-12-06 2012-06-27 北京航空航天大学 Windows应用程序虚拟化的实现方法
CN104143069A (zh) * 2014-08-04 2014-11-12 上海斐讯数据通信技术有限公司 一种保护系统文件的方法及系统

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106844566A (zh) * 2016-12-30 2017-06-13 联想(北京)有限公司 一种数据处理方法及系统、被检测设备及处理设备
CN106844566B (zh) * 2016-12-30 2020-11-20 联想(北京)有限公司 一种数据处理方法及系统、被检测设备及处理设备
CN108170854A (zh) * 2018-01-19 2018-06-15 广东欧珀移动通信有限公司 文件清理方法、装置、存储介质及移动终端
CN108304699B (zh) * 2018-02-13 2020-07-14 奇安信科技集团股份有限公司 一种对安全软件进行保护的方法及装置
CN108304699A (zh) * 2018-02-13 2018-07-20 北京奇安信科技有限公司 一种对安全软件进行保护的方法及装置
CN108363931A (zh) * 2018-02-13 2018-08-03 北京奇安信科技有限公司 一种对隔离区文件进行还原的方法及装置
CN110659491A (zh) * 2019-09-23 2020-01-07 深信服科技股份有限公司 一种计算机系统恢复方法、装置、设备及可读存储介质
CN111158937A (zh) * 2019-12-31 2020-05-15 奇安信科技集团股份有限公司 基于内核驱动的软件核心文件内生防护方法及装置
CN111158937B (zh) * 2019-12-31 2024-06-04 奇安信科技集团股份有限公司 基于内核驱动的软件核心文件内生防护方法及装置
CN111723016A (zh) * 2020-06-24 2020-09-29 湖南国科微电子股份有限公司 文件关闭方法、装置、电子设备和存储介质
CN111723016B (zh) * 2020-06-24 2024-06-04 湖南国科微电子股份有限公司 文件关闭方法、装置、电子设备和存储介质
CN112003849A (zh) * 2020-08-14 2020-11-27 苏州浪潮智能科技有限公司 一种修改账户启用禁用状态的方法和设备
CN112003849B (zh) * 2020-08-14 2022-06-21 苏州浪潮智能科技有限公司 一种修改账户启用禁用状态的方法和设备
CN112597536A (zh) * 2020-12-23 2021-04-02 瀚高基础软件股份有限公司 数据库表文件被非法删除的实时检测方法及装备
CN113051550A (zh) * 2021-03-30 2021-06-29 深信服科技股份有限公司 一种终端设备及其防护方法、装置和可读存储介质
CN113296756A (zh) * 2021-05-28 2021-08-24 成都谐盈科技有限公司 一种用户可修改工件的合并方法及系统
CN114036519A (zh) * 2021-11-25 2022-02-11 深信服科技股份有限公司 一种进程管理方法、装置、设备及可读存储介质

Also Published As

Publication number Publication date
CN105930739B (zh) 2019-07-23

Similar Documents

Publication Publication Date Title
CN105930739A (zh) 一种防止文件被删除的方法及终端
JP6317435B2 (ja) マルウェア検出のための複雑なスコアリング
CN104769604B (zh) 实时模块保护
JP4931255B2 (ja) 仮想化されたファイル・システム
US20180285561A1 (en) Method and system for detecting kernel corruption exploits
WO2018104925A1 (en) System and methods for detection of cryptoware
CN107690645A (zh) 使用解释器虚拟机的行为恶意软件检测
EP3885951B1 (en) Method of remediating operations performed by a program and system thereof
CN103620613A (zh) 用于基于虚拟机监视器的反恶意软件安全的系统和方法
US20170017778A1 (en) Providing Font Security
US11409669B2 (en) Memory space protection
Sellwood et al. Sleeping android: The danger of dormant permissions
CN102667712A (zh) 用于同时定义和实行访问控制和完整性策略的系统、方法和装置
CN106971120A (zh) 一种实现文件保护的方法、装置和计算设备
WO2014143005A1 (en) Hypervisor-based buffer overflow detection and prevention
CN101414329B (zh) 删除正在运行中的病毒的方法
CN103839008A (zh) 一句话脚本后门和php变量函数后门免疫安全服务
US8898591B2 (en) Program removal
CN103514405B (zh) 一种缓冲区溢出的检测方法及系统
CN102819717B (zh) 一种文件保护处理的方法和装置
US20070226800A1 (en) Method and system for denying pestware direct drive access
KR100666562B1 (ko) 커널 드라이버 및 프로세스 보호 방법
CN108334788B (zh) 文件防篡改方法及装置
US7293266B2 (en) Plurality of loader modules with a CO- ordinator module where selected loader module executes and each loader module execute
GB2555569B (en) Enhanced computer objects security

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

Effective date of registration: 20181129

Address after: 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.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant