CN112784223A - 应用程序的保护方法、装置、介质及用户行为控制方法 - Google Patents

应用程序的保护方法、装置、介质及用户行为控制方法 Download PDF

Info

Publication number
CN112784223A
CN112784223A CN202110121724.1A CN202110121724A CN112784223A CN 112784223 A CN112784223 A CN 112784223A CN 202110121724 A CN202110121724 A CN 202110121724A CN 112784223 A CN112784223 A CN 112784223A
Authority
CN
China
Prior art keywords
application program
protected
operation behavior
kernel
user
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
Application number
CN202110121724.1A
Other languages
English (en)
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.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies 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 Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN202110121724.1A priority Critical patent/CN112784223A/zh
Publication of CN112784223A publication Critical patent/CN112784223A/zh
Pending legal-status Critical Current

Links

Images

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs

Abstract

本申请公开了一种应用程序的保护方法、装置、介质及用户行为控制方法,该保护方法应用于用户终端的内核,内核部署有为待保护应用程序设置的扩展监听器,在获取到用户终端上产生的操作行为后,调用监听组件,若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。由于扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以能够实现对操作行为的拦截。应用于本技术方案,相对于隐藏的方式而言,用户无法控制内核,不容易被破解,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。

Description

应用程序的保护方法、装置、介质及用户行为控制方法
技术领域
本申请涉及计算机技术领域,特别是涉及一种应用程序的保护方法、装置、介质及用户行为控制方法。
背景技术
应用程序,指为完成某项或多项特定工作的计算机程序,它运行在用户模式,可以和用户进行交互,具有可视的用户界面。由于应用程序和用户进行交互,故当应用程序安装在用户终端后,有被用户恶意操作的风险,尤其是用于管理用户上网行为的应用程序,由于其能够识别出用户不合理的上网行为,故很更容易受到用户修改或卸载。
为了避免上述情况,通常在操作系统中开启隐藏文件或文件夹的功能,使得应用程序的文件所在的目录或文件本身实现隐藏,例如,操作系统中通过特定操作实现隐藏文件夹的功能,再如在用户终端中输入隐藏命令(例如,chflags hidden)然后拖入文件,按下回车可以隐藏文件。
虽然以上方法能够实现对文件或文件夹的隐藏,但是上述方法有两个缺点,一是用户通过网络搜索很容易找到破解方法,二是上述隐藏方法仅仅是图形化界面意义上的隐藏,实际上用户在终端上通过访问文件路径,还是可以访问到。由此可见,如何保护应用程序,防止被修改或卸载是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种应用程序的保护方法,用于防止用户修改待保护应用程序的文件或卸载待保护应用程序。此外,本申请的目的还提供一种应用程序的保护装置、介质及用户行为控制方法。
为解决上述技术问题,本申请提供一种应用程序的保护方法,应用于用户终端的内核,所述内核部署有为待保护应用程序设置的扩展监听器,所述方法包括:
获取所述用户终端上产生的操作行为;
调用监听组件以对所述操作行为进行授权判定;其中,所述监听组件至少包括所述扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
若所述监听组件的判定结果中包括所述禁止授权判定结果,则禁止授权所述操作行为。
优选地,所述扩展监听器的部署方法包括如下步骤:
获取并加载内核扩展文件,以使在加载所述内核扩展文件时注册所述扩展监听器;其中,所述内核扩展文件中包含有所述待保护应用程序的待保护对象和预设动作类型;
与所述待保护应用程序通信以在所述扩展监听器中设置所述待保护对象和所述预设动作类型。
优选地,所述待保护对象包括待保护目录和/或待保护文件。
优选地,在所述获取所述待保护应用程序的待保护对象之后,还包括:
在图形化界面上隐藏所述待保护对象。
优选地,还包括:
获取所述待保护应用程序发送的取消屏蔽数据以使所述扩展监听器停止监听。
优选地,在获取到所述取消屏蔽数据之后,还包括:
验证所述取消屏蔽数据的合法性;
其中,在所述取消屏蔽数据合法的情况下所述扩展监听器停止监听。
优选地,所述待保护应用程序为用于上网行为管理的应用程序。
为解决上述技术问题,本申请还提供一种用户行为控制方法,应用于用户侧,包括:
获取用户对应用程序的操作行为;
检测所述操作行为是否为对待保护应用程序的预设操作行为;其中,所述预设操作行为的确定通过内核中的监听组件实现,所述监听组件至少包括扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的所述预设操作行为的情况下,输出禁止授权判定结果;
在所述操作行为为所述预设操作行为的情况下,禁止所述操作行为。
为解决上述技术问题,本申请还提供一种应用程序的保护装置,应用于用户终端的内核,所述内核部署有为待保护应用程序设置的扩展监听器,所述装置包括:
获取模块,用于获取所述用户终端上产生的操作行为;
调用模块,用于调用监听组件以对所述操作行为进行授权判定;其中,所述监听组件至少包括所述扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
授权模块,用于若所述监听组件的判定结果中包括所述禁止授权判定结果,则禁止授权所述操作行为。
为解决上述技术问题,本申请还提供一种应用程序的保护装置,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如所述的应用程序的保护方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如所述的应用程序的保护方法的步骤。
本申请所提供的应用程序的保护方法,应用于用户终端的内核,内核部署有为待保护应用程序设置的扩展监听器,其中,在获取到用户终端上产生的操作行为后,调用监听组件以对操作行为进行授权判定,若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。由于扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以当操作行为触发扩展监听器的监听策略时,监听组件所得到的判定结果中必然包括禁止授权判定结果,所以能够实现对操作行为的拦截。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
本申请所提供的用户行为控制方法,应用于用户侧,在获取到用户对应用程序的操作行为后,检测操作行为是否为对待保护应用程序的预设操作行为,在操作行为为预设操作行为的情况下,禁止操作行为。由于预设操作行为的确定通过内核中的监听组件实现,监听组件至少包括扩展监听器,扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以通过监听组件的监听该结果可以确定操作行为是否为预设操作行为。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
此外,本申请所提供的应用程序的保护装置及介质,与上述方法对应,效果同上。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种用于上网行为管理的实现过程示意图;
图2为本申请实施例提供的一种应用程序的保护方法的流程图;
图3为本申请实施例提供的一种对审计App的保护示意图;
图4为本申请实施例提供的一种应用程序的保护装置的结构图;
图5为本申请另一实施例提供的应用程序的保护装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
本申请的核心是提供一种应用程序的保护方法、装置及介质。
本申请所提到的应用程序,安装于用户终端,可以为计算机或智能手机等设备,通常是计算机。应用程序的类型不做限定,可以为用于上网行为管理的应用程序。在特定应用场景中,如果应用程序用作用户上网管理行为,则其可以看作是客户端,那么与其对应的是服务端,用于提供相应服务。服务端通常是安装于能够实现服务器功能的实体设备上,例如,上网行为管理(AC,Access Control)设备。AC设备能够实现对互联网访问行为的全面管理,广泛应用于互联网行业,可在网络借贷平台(P2P)流量管理、防止内网泄密、防范法规风险、互联网访问行为记录、上网安全等多个方面提供有效的解决方案。
图1为本申请实施例提供的一种用于上网行为管理的实现过程示意图。如图1所示,AC设备上运行有服务端,用户终端运行有客户端(待保护应用程序),下文以审计应用程序(审计App)为例说明。用户终端和AC设备同在一个局域网中。管理用户的上网行为包括如下步骤:
①管理者在服务端配置审计策略,如配置审计用户通过聊天软件发送文件的操作行为。
②服务端向安装在用户终端上的审计App推送审计策略。
③用户在用户终端上进行操作,如通过聊天软件向外网发送文件。
④用户的操作行为命中了审计策略,审计App记录下审计日志,并发送到服务端。
⑤服务端根据审计日志识别出风险,向管理者发送告警通知。
需要说明的是,在以上上网行为管理过程中,第①步到第⑤步用户是无感知的,保证审计App的隐蔽性和完整性,且用户也不可能误操作造成审计App的损坏。
以上审计App由于能够识别出用户不合理的上网行为,故很更容易受到用户修改或卸载,一旦被用户修改或卸载而无法实现审计的目的,则容易造成泄密的风险,因此如何防止用户修改或卸载与实现审计功能同等重要。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
本申请实施例提供的一种应用程序的保护方法应用于用户终端的内核,内核是操作系统最基本的部分,它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,通常情况下,用户在用户终端上的操作行为均要进入到内核,由内核确定是否授权该操作行为。具体的,操作行为进入到内核后,由监听器实现对操作行为的授权判定,最终结合各监听器的判定结果确定是否授权。在本实施例中,在原有的监听器的基础上,增加了扩展监听器,即内核预先部署有为待保护应用程序设置的扩展监听器。需要说明的是,本实施例中的扩展监听器的监听对象可以是固定不可更改的,例如只能监听固定的操作行为,也可以是可更改的,例如,随待保护应用程序的实际参数设置。图2为本申请实施例提供的一种应用程序的保护方法的流程图。如图2所示,该方法包括:
S10:获取用户终端上产生的操作行为。
本实施例中,对于用户的操作行为不作限定,可以是网络类操作行为,例如,登录某个网址,也可以是文件类操作行为,例如,访问某个文件。用户在用户终端上操作,那么用户终端就会产生操作行为,该操作行为就会进入到内核中,由内核进行授权判断,从而确定是否授权该操作行为。
S11:调用监听组件以对操作行为进行授权判定。
需要说明的是,本实施例中的监听组件包括内核原有的扩展监听器和上文中提到的为待保护应用程序设置的扩展监听器。扩展监听器与原有的监听器独立进行授权判定,给出各自的判定结果,内核根据各判定结果确定是否授权上述操作行为。其中,扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果。表1中给出了各监听器的判定结果及对应的含义,如表1所示。
表1
判定结果 表征含义
KAUTH_RESULT_ALLOW 授权该操作行为
KAUTH_RESULT_DENY 禁止授权该操作行为
KAUTH_RESULT_DEFER 不允许也不禁止,把决定权交给其它监听器
由于本申请中增加的扩展监听器的作用是禁止用户某些操作行为,故扩展监听器的判定结果不能返回ALLOW,仅能返回DENY或者DEFER。
S12:若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。
可以理解的是,尽管本实施例中,增加了扩展监听器,但是不影响内核的原有执行逻辑,即只要有一个监听器的判定结果是禁止授权判定结果,则禁止授权操作行为。本实施例中,对于监听组件中所包含的原有监听器的个数不作限定,只要所有监听器得到的判定结果中包含有禁止授权判定结果,则禁止授权对应的操作行为。
在具体实施中,内核在得到禁止授权操作行为的判定结果后,在图形化界面上显示提示信息,例如,无操作权限,用以提示用户禁止操作。另外,内核还用于记录该操作行为的产生时间、操作行为的动作类型等信息以生成日志。
本实施例提供的应用程序的保护方法,应用于用户终端的内核,内核部署有为待保护应用程序设置的扩展监听器,其中,在获取到用户终端上产生的操作行为后,调用监听组件以对操作行为进行授权判定,若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。由于扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以当操作行为触发扩展监听器的监听策略时,监听组件所得到的判定结果中必然包括禁止授权判定结果,所以能够实现对操作行为的拦截。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
上文中对于部署扩展监听器的方式不作限定,本实施例中,扩展监听器的设置参数来自内核扩展文件。在具体实施中,用户终端的操作系统可以为Mac OS,内核扩展(KEXT,Kernel Extension),是一种加载到Mac OS操作系统中央组件中的计算机软件,可以用来提供功能或硬件支持。KEXT的实现需要依赖内核加载内核扩展文件,内核扩展文件可定义为user.kext,该文件成功加载到内核后,提供文件系统的监听器,决定一个文件类操作是否能运行。内核授权机制(KAUTH,Kernel Authorization),管理内核中所有的授权请求,管理用户的凭证和权限,是Mac OS10.4 Tiger的新增功能,因此只能适用该版本以上的系统版本。KAUTH作用于多个不同的领域,如org.netbsd.kauth.process用于对进程的操作进行授权,org.netbsd.kauth.vnode则负责与文件相关的操作的授权。KAUTH向开发人员提供接口,用户可自行决定对某一个操作进行拦截或者放通。KAUTH中的Vnode是其中一个作用域(scope),用于对文件类的操作,如访问、修改、删除等都需要在此进行授权。在一种具体实施例中,扩展监听器的部署方法包括如下步骤:
获取并加载内核扩展文件,以使在加载内核扩展文件时注册扩展监听器;其中,内核扩展文件中包含有待保护应用程序的待保护对象和预设动作类型;
与待保护应用程序通信以在扩展监听器中设置待保护对象和预设动作类型。
图3为本申请实施例提供的一种对审计App的保护示意图。为方便说明,下文中以审计App作为待保护应用程序,且审计App的所有文件都安装在一个目录/User/test,如图3所示,包括如下步骤:
①使用kextutil命令将编写的user.kext加载到内核中。user.kext被加载时会运行初始化函数,在该函数里执行注册扩展监听器user listener的操作,注册后,系统内所有的文件类操作都会经过该监听器。
②审计App与user.kext进行通信,依据user.kext中包含的待保护对象和预设动作类型设置扩展监听器。
③用户对审计App的目录或文件进行操作。
④操作行为进入内核的KAUTH进行授权请求。
⑤KAUTH判定该操作行为为文件类的操作请求,依次调用Vnode上注册的所有监听器,这里就包括了系统原有的监听器listener1-n,以及①中注册的扩展监听器userlistener。
⑥扩展监听器根据传入的参数,可以获取到操作行为对应的访问路径,动作类型(见表2)。对于操作行为对应的访问路径为非/User/test目录的操作行为,返回DEFER。对于操作行为对应的访问路径为/User/test目录的操作行为,只有当动作类型为KAUTH_VNODE_EXECUTE(为了不影响审计App内可执行文件的启动)时才返回ALLOW,否则,返回DENY。另外,如果审计App涉及对配置文件的读写,也可根据实际情况授权对配置文件的读写操作,即当动作类型为KAUTH_VNODE_READ_DATA和KAUTH_VNODE_WRITE_DATA时返回ALLOW,否则,返回DENY。可以理解的是,由于访问操作未授权,用户并不能得知目录或文件内有什么内容,所以即使授权读写操作,审计App所面临的风险也较小。
⑦所有监听器都执行完毕,内核最终得出授权判定结果,决定是否授权该操作行为。
可以理解的是,以上待保护对象包括待保护目录和/或待保护文件,预设动作类型就是除表1中的KAUTH_VNODE_EXECUTE外的动作类型,或除表1中的KAUTH_VNODE_EXECUTE、KAUTH_VNODE_READ_DATA和KAUTH_VNODE_WRITE_DATA外的动作类型。
本实施例中,通过编写内核扩展文件实现扩展监听器的注册,与待保护应用程序通信实现对扩展监听器的参数设置。该方法的好处在于,在与待保护应用程序通信后由待保护应用程序自动实现对扩展监听器的设置。
表2
Figure BDA0002922269600000091
Figure BDA0002922269600000101
在上述实施例的基础上,为了防止用户误操作,在获取待保护应用程序的待保护对象之后,还包括:在图形化界面上隐藏待保护对象。通常情况下,在用户终端安装应用程序后,用户能够在图形化显示界面上看到应用程序的相关文件或安装目录等,那么用户在使用过程中,容易造成误操作。基于该情况,在审计App安装启动后,在图形化界面上就无法看到待保护对象,所以也就不会造成误操作的问题。另一方面,由于用户在图形化界面上查看不到待保护对象,所以能够降低审计App被破坏的风险,即使用户使用命令行工具访问、删除目录等操作方式对审计App进行操作,也能够被扩展监听器所监听到。
当有新版本的待保护应用程序要取代旧版本的待保护应用程序时,需要对待保护应用程序升级,或者管理员需要在用户终端卸载待保护应用程序,此时需要对待保护应用程序卸载。为了解决上述情况,在上述实施例的基础上,还包括:获取待保护应用程序发送的取消屏蔽数据以使扩展监听器停止监听。在具体实施中,需要管理者通过服务端向待保护应用程序发送取消屏蔽数据,待保护应用程序将该数据发送至内核,内核停止扩展监听器监听。进一步的,为了防止非法用户通过服务端发送取消屏蔽数据,以及便于内核识别所接收到的取消屏蔽数据是否合法,对取消屏蔽数据添加特定数据标识,或者对取消屏蔽数据加密。可以理解的是,如果对取消屏蔽数据添加特定数据标识,或者对取消屏蔽数据加密,那么内核需要依据特定数据标识识别出取消屏蔽数据或解密所得到的数据以得到取消屏蔽数据。其中,在取消屏蔽数据合法的情况下扩展监听器停止监听。
当扩展监听器停止监听后,内核不再对待保护应用程序的待保护对象进行保护,所以如果用户终端产生访问待保护应用程序的目录或删除待保护应用程序的文件的操作行为,则内核会授权该操作行为。
可以理解的是,当新版本的待保护应用程序再次安装时,重复执行上文中的步骤,实现对扩展监听器的部署和设置,本实施例不再赘述。
上文中对于应用程序的保护方法的实施例进行了详细说明,本实施例中,提供一种用户行为控制方法,应用于用户侧,例如,用户终端的处理器等。该方法包括:
获取用户对应用程序的操作行为;
检测操作行为是否为对待保护应用程序的预设操作行为;其中,预设操作行为的确定通过内核中的监听组件实现,监听组件至少包括扩展监听器,扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
在操作行为为预设操作行为的情况下,禁止操作行为。
对于应用程序、预设操作行为、扩展监听器以及监听组件的说明,请参考应用程序的保护方法的实施例的描述,本实施例不再赘述。
本实施例提供的用户行为控制方法,由于预设操作行为的确定通过内核中的监听组件实现,监听组件至少包括扩展监听器,扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以通过监听组件的监听该结果可以确定操作行为是否为预设操作行为。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
在上述实施例中,对于应用程序的保护方法、用户行为控制方法进行了详细描述,本申请还提供应用程序的保护装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件结构的角度。
图4为本申请实施例提供的一种应用程序的保护装置的结构图。如图4所示,基于功能模块的角度,该装置应用于用户终端的内核,内核部署有为待保护应用程序设置的扩展监听器,该装置包括:
获取模块10,用于获取用户终端上产生的操作行为;
调用模块11,用于调用监听组件以对操作行为进行授权判定;其中,监听组件至少包括扩展监听器,扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
授权模块12,用于若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。
作为优选地实施方式,应用程序的保护装置还包括
隐藏模块,用于在获取所述待保护应用程序的待保护对象之后,在图形化界面上隐藏所述待保护对象。
控制模块,用于获取所述待保护应用程序发送的取消屏蔽数据以使所述扩展监听器停止监听。
验证模块,用于在获取到所述取消屏蔽数据之后,验证所述取消屏蔽数据的合法性;其中,在所述取消屏蔽数据合法的情况下所述扩展监听器停止监听。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本实施例提供的应用程序的保护装置,应用于用户终端的内核,内核部署有为待保护应用程序设置的扩展监听器。由于扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以当操作行为触发扩展监听器的监听策略时,监听组件所得到的判定结果中必然包括禁止授权判定结果,所以能够实现对操作行为的拦截。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
图5为本申请另一实施例提供的应用程序的保护装置的结构图,如图5所示,应用程序的保护装置包括:存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例中应用程序的保护方法的步骤。
本实施例提供的应用程序的保护装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的应用程序的保护方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于应用程序的保护方法实施例以及用户行为控制方法实施例所涉及的数据。
在一些实施例中,应用程序的保护装置还可包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图5中示出的结构并不构成对应用程序的保护装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的应用程序的保护装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:内核部署有为待保护应用程序设置的扩展监听器,内核在获取到用户终端上产生的操作行为后,调用监听组件以对操作行为进行授权判定,若监听组件的判定结果中包括禁止授权判定结果,则禁止授权操作行为。由于扩展监听器在识别到操作行为为对待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果,所以当操作行为触发扩展监听器的监听策略时,监听组件所得到的判定结果中必然包括禁止授权判定结果,所以能够实现对操作行为的拦截。应用于本技术方案,一方面相对于隐藏的方式而言,用户无法控制内核,故利用内核进行授权判定不容易被破解,另一方面,可以通过设置扩展监听器的监听策略就能够提前禁止用户的特定操作行为,例如,访问,所以能够有效避免用户通过访问路径等方式对待保护应用程序的破坏。最后,利用内核中部署扩展监听器对待保护应用程序的保护,方式较为灵活,普适性较强,不涉及硬件改进,故成本较低,且内核的运行方式不被用户感知,隐蔽性较高。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的应用程序的保护方法、装置、介质及用户行为控制方法进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (11)

1.一种应用程序的保护方法,其特征在于,应用于用户终端的内核,所述内核部署有为待保护应用程序设置的扩展监听器,所述方法包括:
获取所述用户终端上产生的操作行为;
调用监听组件以对所述操作行为进行授权判定;其中,所述监听组件至少包括所述扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
若所述监听组件的判定结果中包括所述禁止授权判定结果,则禁止授权所述操作行为。
2.根据权利要求1所述的应用程序的保护方法,其特征在于,所述扩展监听器的部署方法包括如下步骤:
获取并加载内核扩展文件,以使在加载所述内核扩展文件时注册所述扩展监听器;其中,所述内核扩展文件中包含有所述待保护应用程序的待保护对象和预设动作类型;
与所述待保护应用程序通信以在所述扩展监听器中设置所述待保护对象和所述预设动作类型。
3.根据权利要求2所述的应用程序的保护方法,其特征在于,所述待保护对象包括待保护目录和/或待保护文件。
4.根据权利要求2所述的应用程序的保护方法,其特征在于,在所述获取所述待保护应用程序的待保护对象之后,还包括:
在图形化界面上隐藏所述待保护对象。
5.根据权利要求1至4任意一项所述的应用程序的保护方法,其特征在于,还包括:
获取所述待保护应用程序发送的取消屏蔽数据以使所述扩展监听器停止监听。
6.根据权利要求5所述的应用程序的保护方法,其特征在于,在获取到所述取消屏蔽数据之后,还包括:
验证所述取消屏蔽数据的合法性;
其中,在所述取消屏蔽数据合法的情况下所述扩展监听器停止监听。
7.根据权利要求1所述的应用程序的保护方法,其特征在于,所述待保护应用程序为用于上网行为管理的应用程序。
8.一种用户行为控制方法,其特征在于,应用于用户侧,包括:
获取用户对应用程序的操作行为;
检测所述操作行为是否为对待保护应用程序的预设操作行为;其中,所述预设操作行为的确定通过内核中的监听组件实现,所述监听组件至少包括扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的所述预设操作行为的情况下,输出禁止授权判定结果;
在所述操作行为为所述预设操作行为的情况下,禁止所述操作行为。
9.一种应用程序的保护装置,其特征在于,应用于用户终端的内核,所述内核部署有为待保护应用程序设置的扩展监听器,所述装置包括:
获取模块,用于获取所述用户终端上产生的操作行为;
调用模块,用于调用监听组件以对所述操作行为进行授权判定;其中,所述监听组件至少包括所述扩展监听器,所述扩展监听器在识别到所述操作行为为对所述待保护应用程序的预设操作行为的情况下,输出禁止授权判定结果;
授权模块,用于若所述监听组件的判定结果中包括所述禁止授权判定结果,则禁止授权所述操作行为。
10.一种应用程序的保护装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的应用程序的保护方法的步骤或如权利要求8所述的用户行为控制方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的应用程序的保护方法的步骤或如权利要求8所述的用户行为控制方法的步骤。
CN202110121724.1A 2021-01-28 2021-01-28 应用程序的保护方法、装置、介质及用户行为控制方法 Pending CN112784223A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110121724.1A CN112784223A (zh) 2021-01-28 2021-01-28 应用程序的保护方法、装置、介质及用户行为控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110121724.1A CN112784223A (zh) 2021-01-28 2021-01-28 应用程序的保护方法、装置、介质及用户行为控制方法

Publications (1)

Publication Number Publication Date
CN112784223A true CN112784223A (zh) 2021-05-11

Family

ID=75759595

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110121724.1A Pending CN112784223A (zh) 2021-01-28 2021-01-28 应用程序的保护方法、装置、介质及用户行为控制方法

Country Status (1)

Country Link
CN (1) CN112784223A (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1822014A (zh) * 2006-03-23 2006-08-23 沈明峰 协同工作环境下涉密文档的保护方法
CN101414327A (zh) * 2007-10-15 2009-04-22 北京瑞星国际软件有限公司 文件保护的方法
CN102096786A (zh) * 2011-03-04 2011-06-15 上海交通大学 基于硬件虚拟化的跨平台安全保护系统
US20110239306A1 (en) * 2008-08-27 2011-09-29 Applied Neural Technologies Limited Data leak protection application
CN103763313A (zh) * 2014-01-03 2014-04-30 深圳市大成天下信息技术有限公司 一种文档保护方法和系统
CN105279433A (zh) * 2014-07-10 2016-01-27 腾讯科技(深圳)有限公司 一种应用程序的防护方法及装置
CN110175452A (zh) * 2019-05-14 2019-08-27 维沃移动通信有限公司 数据文件的保护方法和移动终端

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1822014A (zh) * 2006-03-23 2006-08-23 沈明峰 协同工作环境下涉密文档的保护方法
CN101414327A (zh) * 2007-10-15 2009-04-22 北京瑞星国际软件有限公司 文件保护的方法
US20110239306A1 (en) * 2008-08-27 2011-09-29 Applied Neural Technologies Limited Data leak protection application
CN102096786A (zh) * 2011-03-04 2011-06-15 上海交通大学 基于硬件虚拟化的跨平台安全保护系统
CN103763313A (zh) * 2014-01-03 2014-04-30 深圳市大成天下信息技术有限公司 一种文档保护方法和系统
CN105279433A (zh) * 2014-07-10 2016-01-27 腾讯科技(深圳)有限公司 一种应用程序的防护方法及装置
CN110175452A (zh) * 2019-05-14 2019-08-27 维沃移动通信有限公司 数据文件的保护方法和移动终端

Similar Documents

Publication Publication Date Title
US11514159B2 (en) Method and system for preventing and detecting security threats
EP3123311B1 (en) Malicious code protection for computer systems based on process modification
Wei et al. Managing security of virtual machine images in a cloud environment
CN102799817B (zh) 用于使用虚拟化技术进行恶意软件保护的系统和方法
AU2007252841B2 (en) Method and system for defending security application in a user's computer
JP4628149B2 (ja) アクセス制御装置及びアクセス制御方法
US8650578B1 (en) System and method for intercepting process creation events
US7665139B1 (en) Method and apparatus to detect and prevent malicious changes to tokens
US7865949B2 (en) Provisional administrator privileges
US8413253B2 (en) Protecting persistent secondary platform storage against attack from malicious or unauthorized programs
CN102737188A (zh) 检测恶意网页的方法及装置
US7890756B2 (en) Verification system and method for accessing resources in a computing environment
US9516031B2 (en) Assignment of security contexts to define access permissions for file system objects
CN108334404B (zh) 应用程序的运行方法和装置
US10628489B2 (en) Controlling access to one or more datasets of an operating system in use
Pothula et al. Run time container security hardening using a proposed model of security control map
KR101700413B1 (ko) 프로그램의 무결성 검사방법 및 그 시스템
CN111783087A (zh) 可执行文件恶意执行的检测方法及装置、终端、存储介质
US11914710B2 (en) System and method for application tamper discovery
CN112784223A (zh) 应用程序的保护方法、装置、介质及用户行为控制方法
KR101290852B1 (ko) 가상 머신을 이용한 데이터 유출 방지 장치 및 방법
Kim et al. Linux based unauthorized process control
Griffiths et al. Fireguard-A secure browser with reduced forensic footprint
Zhang et al. A detection system of Android application based on permission analysis
CN114661575A (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