CN110750778A - 一种应用程序管控方法和装置 - Google Patents
一种应用程序管控方法和装置 Download PDFInfo
- Publication number
- CN110750778A CN110750778A CN201910934697.2A CN201910934697A CN110750778A CN 110750778 A CN110750778 A CN 110750778A CN 201910934697 A CN201910934697 A CN 201910934697A CN 110750778 A CN110750778 A CN 110750778A
- Authority
- CN
- China
- Prior art keywords
- client
- application program
- unknown
- application
- program
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000004044 response Effects 0.000 claims abstract description 22
- 238000004458 analytical method Methods 0.000 claims description 4
- 238000007726 management method Methods 0.000 description 55
- 239000008186 active pharmaceutical agent Substances 0.000 description 49
- 230000006870 function Effects 0.000 description 10
- 230000002787 reinforcement Effects 0.000 description 10
- 238000004590 computer program Methods 0.000 description 8
- 230000006399 behavior Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 244000035744 Hura crepitans Species 0.000 description 3
- 230000002155 anti-virotic effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000002401 inhibitory effect Effects 0.000 description 2
- 238000009434 installation Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种应用程序管控方法,包括以下步骤:在多个客户端自动扫描所在***中所有的应用程序文件,计算并保存每个所述应用程序文件的哈希值,并将所述哈希值上传至集中管理平台保存;所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式;响应于所述客户端所在***执行应用程序,所述客户端计算所述应用程序文件的哈希值并将所述哈希值与数据库的所述基准值集合中的哈希值进行比对;响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行。
Description
技术领域
本发明涉及计算机领域,并且更具体地,涉及一种应用程序管控方法和装置。
背景技术
***安全加固软件(以下简称为“安全加固软件”或“加固软件”)是一种计算机安全软件,区别于杀毒软件,***安全加固类的软件一般基于白名单进行可信控制机制。具体来说,传统的杀毒软件一般基于黑名单或病毒特征库,如果计算机***中出现了触发黑名单或特征库的文件,则会被杀毒软件查杀;而安全加固类的软件则基于白名单规则,软件会拦截违反预定规则的行为(例如不允许不在规则列表中的程序运行)。
传统的安全加固软件一般安装在单台资源(包括计算机、服务器、智能终端等)上,在单台计算机上配置安全策略并且查看执行情况。近年来随着大数据和云计算的发展,传统的安全加固软件往往不能满足大批量服务器部署的需求,因此安全加固软件逐渐向集中管理的方向发展。集中管理的安全加固软件往往包括集中管理平台和客户端两个子***。集中管理平台一般安装在单独的机器上,用于统一管理客户端;客户端一般安装在需要进行安全保护的计算机上,负责具体的安全策略的执行和策略执行结果的反馈。二者之间通过网络通讯。传统的安全加固软件往往在判断程序为未知程序后,智能简单地阻止该程序的运行,缺乏对该未知程序的有效地分析和管理。
发明内容
鉴于此,本发明实施例的目的在于提出一种新的控制方法,即允许未知程序的运行,但对其行为进行限制,仅允许执行有限的操作,并且在未知程序执行时记录该程序的运行行为并存储;当用户确认该程序为合法程序时,可以选择被拦截的影响进行回放,避免丢失关键数据。
基于上述目的,本发明实施例的一方面提供了一种应用程序管控方法,包括以下步骤:
在多个客户端自动扫描所在***中所有的应用程序文件,计算并保存每个所述应用程序文件的哈希值,并将所述哈希值上传至集中管理平台保存;
所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式;
响应于所述客户端所在***执行应用程序,所述客户端计算所述应用程序文件的哈希值并将所述哈希值与所述数据库的所述基准值集合中的哈希值进行比对;
响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行。
在一些实施方式中,每个所述客户端安装在需要进行安全加固的设备上并且通过网络连接到所述集中管理平台。
在一些实施方式中,每个所述客户端的对于未知应用程序的运行模式包括禁止运行、受限运行以及虚拟运行。
在一些实施方式中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:
在所述客户端的运行模式为禁止运行模式时,所述客户端完全禁止所述未知应用程序的运行。
在一些实施方式中,所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式还包括:
设置每个所述客户端在所述受限运行模式和所述虚拟运行模式下能够安全调用的API和不能安全调用的API。
在一些实施方式中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:
在所述客户端的运行模式为受限运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用失败的结果。
在一些实施方式中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行还包括:
在所述客户端的运行模式为虚拟运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用成功的结果,并且记录所述未知应用程序调用的API并存储在所述数据库中。
在一些实施方式中,所述客户端配置为记录所有的API调用过程,并且将所述API调用过程上传至所述集中管理平台进行管理和分析。
在一些实施方式中,还包括:响应于确认所述未知应用程序是可信的,将所述未知应用程序的哈希值加入到所述基准值集合中,并且可以选择性地使所述录制的内容生效。
本发明实施例的另一方面提供了一种应用程序管控装置,包括
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序代码,所述程序代码在被处理器运行时实施上述任一项所述的方法。
本发明具有以下有益技术效果:本发明实施例提供的一种应用程序管控方法和装置,其能够准确识别不在已知程序清单集合中的未知程序,并且通过多种维度对其进行控制;通过本方案,用户可以对未知程序的行为有更加完整的把控,为其决策提供了可靠的依据,同时基于API调用的安全程度进行分类控制,让未知程序能工作在最小权限下,保证了***的安全。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1是根据本发明的一种应用程序管控方法的流程图;
图2是根据本发明的应用程序管控的总体架构图;
图3是根据本发明的一种应用程序管控装置硬件结构示意图。
具体实施方式
以下描述了本发明的实施例。然而,应该理解,所公开的实施例仅仅是示例,并且其他实施例可以采取各种替代形式。附图不一定按比例绘制;某些功能可能被夸大或最小化以显示特定部件的细节。因此,本文公开的具体结构和功能细节不应被解释为限制性的,而仅仅是作为用于教导本领域技术人员以各种方式使用本发明的代表性基础。如本领域普通技术人员将理解的,参考任何一个附图所示出和描述的各种特征可以与一个或多个其他附图中所示的特征组合以产生没有明确示出或描述的实施例。所示特征的组合为典型应用提供了代表性实施例。然而,与本发明的教导相一致的特征的各种组合和修改对于某些特定应用或实施方式可能是期望的。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例一方面提出了一种应用程序管控方法,如图1所示,包括以下步骤:
步骤S101:在多个客户端自动扫描所在***中所有的应用程序文件,计算并保存每个所述应用程序文件的哈希值,并将所述哈希值上传至集中管理平台保存;
步骤S102:所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式;
步骤S103:响应于所述客户端所在***执行应用程序,所述客户端计算所述应用程序文件的哈希值并将所述哈希值与数据库的所述基准值集合中的哈希值进行比对;
步骤S104:响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行。
在一些实施例中,每个所述客户端安装在需要进行安全加固的设备上并且通过网络连接到所述集中管理平台。也即,本方法基于一种集群式的安全管理***,这个***包含至少一个集中管理平台和多个客户端,每个客户端安装在需要进行安全加固的设备上,并且通过网络连接到管理平台。任何一个客户端与管理平台之间的通讯是双向的。客户端的软件在安装的时候会执行程序搜集操作,将***中所有可以管控的应用程序文件(包括exe程序等)识别出来,并分别计算出哈希值存储在数据库中,形成程序哈希的基准值集合,该集合中的哈希值对应的程序被认为是已知的程序。
在一些实施例中,每个所述客户端的对于未知应用程序的运行模式包括禁止运行、受限运行以及虚拟运行。客户端软件具有控制程序运行的功能,具体来说,客户端软件可以计算出程序文件的哈希值,并且与基准值集合进行对比,如果匹配成功,则说明该程序是已知的程序,当已知的程序执行时,客户端软件允许其执行,不会对其进行任何限制。如果匹配失败,则说明该程序是未知程序,这种程序一般通过网络、U盘、解压缩等方式产生,当未知程序运行时,客户端软件限制其执行。允许和阻止程序执行的方式已有成熟的技术,不在本专利范围内。客户端软件限制程序的运行具有几类级别,本发明中对程序执行的级别进行如下的分类:
(1)禁止运行,即完全禁止其运行;
(2)受限运行,即允许程序运行,但是执行时限制其可以访问和修改的资源,其运行时如同运行在一个孤立的环境中,其访问超出其范围的API时,安全加固客户端软件会禁止其访问;
(3)虚拟运行,即允许程序运行,此时该未知程序如同运行在一个虚拟的环境中,但实际上该虚拟的环境并不存在,记录其调用的API并存储在数据库中,该过程称之为录制,如果用户确认该程序是可信的,则将其哈希加入到基准值集合中,并且可以选择性的使录制的内容生效,该过程称之为回放。
在一些实施例中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:在所述客户端的运行模式为禁止运行模式时,所述客户端完全禁止所述未知应用程序的运行。
在一些实施例中,所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式还包括:设置每个所述客户端在所述受限运行模式和所述虚拟运行模式下能够安全调用的API和不能安全调用的API。
在受限运行和虚拟运行模式下,SSR客户端软件将程序的API调用分为两种类型,一类是安全的调用(对应于能够安全调用的API),一类是非安全的调用(对应于不能安全调用的API)。安全的调用指的是调用后对***的安全性不会造成威胁的调用,例如在屏幕上绘制窗口的API;非安全的调用指的是调用后对***的安全可能会产生威胁的API,例如访问其他进程的内存、对注册表或者磁盘上的文件进行操作、修改***配置等。这两种模式类似于已有的“沙箱”或“蜜罐”技术,其区别为“沙箱”技术为应用程序的运行创造了一个虚拟的环境,其工作在磁盘层面;而本专利中的后两种运行模式则是对其调用的API进行管控,其工作在API调用层面,并且具有权限调用的API仍然是在真实的环境中运行的,这两种模式可以认为是“沙箱”模式的一种轻量的实现,但其实现的功能侧重点也是不同的。
用户可以在管理平台上进行配置,使具体的三种模式中的一种生效。但需要说明的是,受限运行和虚拟运行模式仅仅是程序控制的一种方式,仅仅为用户提供了程序行为的判定依据,它不能保证程序在该模式下程序工作正常,也不能保证回放后其结果与预期相同。
在一些实施例中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:在所述客户端的运行模式为受限运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用失败的结果。
在一些实施例中,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行还包括:在所述客户端的运行模式为虚拟运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用成功的结果,并且记录所述未知应用程序调用的API并存储在所述数据库中。
在根据本发明的实施例中,如图2所示的总体架构图,本方案包含一个集中管理平台软件和至少一个客户端软件,集中管理平台软件单独部署,提供Web页面形式的管理功能和数据库存储功能。客户端软件安装在需要进行安全加固的计算机上,客户端软件在安装时需要输入集中管理平台的IP地址,并在安装成功后自动注册至集中管理平台。
客户端安装成功后,会自动扫描当前***中所有的应用程序文件,并且计算每个程序文件的哈希值(例如计算其MD5)并将其哈希值上传至管理平台,同时本地也存储一份。
集中管理平台接受客户端所上传的所有应用程序文件的哈希值,作为基准值集合,存入数据库,集合中的应用程序都认为是已知的。集中管理平台维护所有客户端的基准值集合的并集,作为总集合,总集合中的程序也都认为是已知的。
客户端所在的***执行某个应用程序时,客户端软件会先计算该应用程序文件的哈希值,并且与本地存储的基准值集合进行对比,如果该哈希值在基准值集合之中,则认为是已知的,则允许其运行,如果未在存储在本地的基准值集合中,则查找集中管理平台存储的总集合,如果该哈希值在总集合之中,则也会认为是已知的,否则认为是未知的。
对于已知的应用程序,客户端软件允许其运行,并且不对其进行任何限制。对于未知的应用程序,客户端软件按照管理平台配置的运行策略(禁止、受限或虚拟),对应用程序的执行进行管控。
当该客户端软件的运行模式为禁止运行模式时,所有未知的应用程序执行时都会被客户都安软件拦截并禁止,即应用程序无法执行。
当该客户端软件的运行模式为受限运行模式时,允许其运行,但是仅允许其访问有限的资源,即前文所述的安全的调用,包括但不限于屏幕绘图、读取文件、读取***配置、读取注册表等,当其运行的时候访问超越其权限的资源时,即前文所述的非安全的调用,例如网络访问、调用***命令、修改其他文件、修改***配置、修改注册表等操作,客户端软件则会拦截并代替***返回调用失败的结果。需要说明的是,安全的调用和非安全的调用在本案中作为一个概念存在,并不规定其具体包含的API调用实例,具体的实例依照产品的具体实现形式而具体规定。
当该客户端软件的运行模式为虚拟运行模式时,允许该未知软件运行,并且记录其调用的API,当其访问前文中提到的非安全的API调用时,客户端软件拦截并代替***返回调用成功的结果,此时该未知程序如同运行在一个虚拟的环境中,但实际上,该虚拟的环境并不存在。客户端软件会将所有安全和非安全的API调用记录下来,并且分析这些API的调用对***产生的影响,然后上传至集中管理平台。用户登录集中管理平台后,可以查看某未知程序进行的所有API调用及其参数,从而可以分析该未知程序具体进行了哪些操作。
在一些实施例中,所述客户端记录所有的API调用过程,并且将所述API调用过程上传至所述集中管理平台进行管理和分析。
集中管理平台可以记录所有客户端软件上传的所有未知程序的API调用及其参数,集中管理平台对所有API调用进行汇总和分析,可以较为全面的呈现该程序的行为,供客户做决策。
在一些实施例中,还包括:响应于确认所述未知应用程序是可信的,将所述未知应用程序的哈希值加入到所述基准值集合中,并且可以选择性地使所述录制的内容生效。
用户决策的结果,可以是不进行处理,也可以将其添加到已知的程序哈希值集合中,将其变为已知程序,变为已知程序后,该程序的运行和调用不再受任何限制。同时用户可以选择之前拦截的API产生的影响进行“回放”,回放后这些API将由客户端软件重新执行,从而对***产生实际的影响。由于“回放”操作是时候进行的,并且由客户端软件进行操作,因此不能保证其效果与原程序不受限制执行时产生的结果一致。本发明提供该功能,是为用户提供一种防止关键动作丢失的补救措施,补救的结果仍然需要用户手动确认。
为更清晰的说明虚拟模式的工作过程,以某未知程序为例进行说明,此时为该场景设定前提(1)已经进行过哈希值搜集(2)该客户端工作在未知程序虚拟运行模式(3)为简化该模型,设定该未知程序正常执行时将会进行两个操作,分别时弹出窗体和修改文件内容。当其通过某种方式进入***后然后被执行时,因为此时客户端软件工作在未知软件虚拟运行模式,因此客户端软件允许其执行,该程序执行后,调用***API展示了一个窗口界面,因为在屏幕上绘制窗体的API被认为是安全的API调用,因此该过程可以正确的执行,不会被拦截,用户可以看到该程序正常弹出窗体,并且基本框架显示正常;然后未知程序执行第二个操作,即修改某文件内容。由于修改某文件内容被认为是非安全的API调用,因此该操作进行的相关API(包括打开文件获取句柄、写入文件内容、关闭句柄等)名称及其参数将被记录下来,并且客户端软件经过分析得知该客户端具有修改某文件内容的实际影响,客户端软件将该未知程序执行时进行的API调用及推断出的影响上传至管理平台。用户登录管理平台后,得知该程序试图修改某文件(会产生修改文件的实际影响),但是相关的API被客户端软件拦截,因此用户可以确认该程序为已知程序后,并选择回放该影响,此时客户端软件会执行打开文件获取句柄、写入文件内容、关闭句柄等操作,从而导致某文件实际被修改。但此时该文件实际是被客户端软件修改,而不是被原未知程序修改,客户端软件此时相当于一个代理,将之前进行的操作进行了缓存并且延时执行。本例子仅仅是一个简单的模型,用来简明的阐述本专利提出的方法,但实际实现时,因***调用的复杂性,实际的实现要复杂更多。
最后需要说明的是,本案中的软件工作原则是白名单机制,即不经允许的操作就是禁止的操作,同时允许的操作也会被控制在安全可控的范围之内,具体产品的实现时,如果出现了功能与该原则冲突时,应当遵从该原则。
在技术上可行的情况下,以上针对不同实施例所列举的技术特征可以相互组合,或者改变、添加以及省略等等,从而形成本发明范围内的另外实施例。
从上述实施例可以看出,本发明实施例提供的一种应用程序管控方法能够准确识别不在已知程序清单集合中的未知程序,并且通过多种维度对其进行控制;通过本方案,用户可以对未知程序的行为有更加完整的把控,为其决策提供了可靠的依据,同时基于API调用的安全程度进行分类控制,让未知程序能工作在最小权限下,保证了***的安全。
基于上述目的,本发明实施例的另一个方面,提出了一种应用程序管控装置一个实施例。
所述应用程序管控装置包括存储器、和至少一个处理器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时执行上述任意一种方法。
如图3所示,为本发明提供的应用程序管控装置的一个实施例的硬件结构示意图。
以如图3所示的计算机设备为例,在该计算机设备中包括处理器301以及存储器302,并还可以包括:输入装置303和输出装置304。
处理器301、存储器302、输入装置303和输出装置304可以通过总线或者其他方式连接,图3中以通过总线连接为例。
存储器302作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的所述应用程序管控方法对应的程序指令/模块。处理器301通过运行存储在存储器302中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例的应用程序管控方法。
存储器302可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储根据应用程序管控方法所创建的数据等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器302可选包括相对于处理器301远程设置的存储器,这些远程存储器可以通过网络连接至本地模块。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置303可接收输入的数字或字符信息,以及产生与应用程序管控方法的计算机设备的用户设置以及功能控制有关的键信号输入。输出装置304可包括显示屏等显示设备。
所述一个或者多个应用程序管控方法对应的程序指令/模块存储在所述存储器302中,当被所述处理器301执行时,执行上述任意方法实施例中的应用程序管控方法。
所述执行所述应用程序管控方法的计算机设备的任何一个实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。
此外,典型地,本发明实施例公开所述的装置、设备等可为各种电子终端设备,例如手机、个人数字助理(PDA)、平板电脑(PAD)、智能电视等,也可以是大型终端设备,如服务器等,因此本发明实施例公开的保护范围不应限定为某种特定类型的装置、设备。本发明实施例公开所述的客户端可以是以电子硬件、计算机软件或两者的组合形式应用于上述任意一种电子终端设备中。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及***单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
此外,应该明白的是,本文所述的计算机可读存储介质(例如,存储器)可以是易失性存储器或非易失性存储器,或者可以包括易失性存储器和非易失性存储器两者。作为例子而非限制性的,非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)或快闪存储器。易失性存储器可以包括随机存取存储器(RAM),该RAM可以充当外部高速缓存存储器。作为例子而非限制性的,RAM可以以多种形式获得,比如同步RAM(DRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据速率SDRAM(DDR SDRAM)、增强SDRAM(ESDRAM)、同步链路DRAM(SLDRAM)、以及直接Rambus RAM(DRRAM)。所公开的方面的存储设备意在包括但不限于这些和其它合适类型的存储器。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个***的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现所述的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
结合这里的公开所描述的各种示例性逻辑块、模块和电路可以利用被设计成用于执行这里所述功能的下列部件来实现或执行:通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合。通用处理器可以是微处理器,但是可替换地,处理器可以是任何传统处理器、控制器、微控制器或状态机。处理器也可以被实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器结合DSP和/或任何其它这种配置。
结合这里的公开所描述的方法或算法的步骤可以直接包含在硬件中、由处理器执行的软件模块中或这两者的组合中。软件模块可以驻留在RAM存储器、快闪存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM、或本领域已知的任何其它形式的存储介质中。示例性的存储介质被耦合到处理器,使得处理器能够从该存储介质中读取信息或向该存储介质写入信息。在一个替换方案中,所述存储介质可以与处理器集成在一起。处理器和存储介质可以驻留在ASIC中。ASIC可以驻留在用户终端中。在一个替换方案中,处理器和存储介质可以作为分立组件驻留在用户终端中。
在一个或多个示例性设计中,所述功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将所述功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器、磁盘或光盘等。
上述实施例是实施方式的可能示例,并且仅仅为了清楚理解本发明的原理而提出。所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上所述的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种应用程序管控方法,其特征在于,包括以下步骤:
在多个客户端自动扫描所在***中所有的应用程序文件,计算并保存每个所述应用程序文件的哈希值,并将所述哈希值上传至集中管理平台保存;
所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式;
响应于所述客户端所在***执行应用程序,所述客户端计算所述应用程序文件的哈希值并将所述哈希值与所述数据库的所述基准值集合中的哈希值进行比对;
响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行。
2.根据权利要求1所述的方法,其特征在于,每个所述客户端安装在需要进行安全加固的设备上并且通过网络连接到所述集中管理平台。
3.根据权利要求1所述的方法,其特征在于,每个所述客户端的对于未知应用程序的运行模式包括禁止运行、受限运行以及虚拟运行。
4.根据权利要求3所述的方法,其特征在于,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:
在所述客户端的运行模式为禁止运行模式时,所述客户端完全禁止所述未知应用程序的运行。
5.根据权利要求3所述的方法,其特征在于,所述集中管理平台接收每个所述客户端上传的哈希值以将所有所述哈希值作为基准值集合存入数据库,并且设置每个所述客户端的对于未知应用程序的运行模式还包括:
设置每个所述客户端在所述受限运行模式和所述虚拟运行模式下能够安全调用的API和不能安全调用的API。
6.根据权利要求5所述的方法,其特征在于,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行包括:
在所述客户端的运行模式为受限运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用失败的结果。
7.根据权利要求6所述的方法,其特征在于,所述响应于比对失败确定所述应用程序为未知应用程序,所述客户端按照在所述集中管理平台中配置的所述运行模式限制所述应用程序的运行还包括:
在所述客户端的运行模式为虚拟运行模式时,所述客户端允许所述未知应用程序访问所述能够安全调用的API,以及响应于所述未知应用程序访问所述不能安全调用的API,所述客户端拦截并代替***返回调用成功的结果,并且记录所述未知应用程序调用的API并存储在所述数据库中。
8.根据权利要求7所述的方法,其特征在于,所述客户端配置为记录所有的API调用过程,并且将所述API调用过程上传至所述集中管理平台进行管理和分析。
9.根据权利要求8所述的方法,其特征在于,还包括:响应于确认所述未知应用程序是可信的,将所述未知应用程序的哈希值加入到所述基准值集合中,并且可以选择性地使所述录制的内容生效。
10.一种应用程序管控装置,其特征在于,包括
至少一个处理器;和
存储器,所述存储器存储有处理器可运行的程序代码,所述程序代码在被处理器运行时实施如权利要求1-9中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910934697.2A CN110750778A (zh) | 2019-09-29 | 2019-09-29 | 一种应用程序管控方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910934697.2A CN110750778A (zh) | 2019-09-29 | 2019-09-29 | 一种应用程序管控方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110750778A true CN110750778A (zh) | 2020-02-04 |
Family
ID=69277518
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910934697.2A Pending CN110750778A (zh) | 2019-09-29 | 2019-09-29 | 一种应用程序管控方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110750778A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111290747A (zh) * | 2020-03-07 | 2020-06-16 | 苏州浪潮智能科技有限公司 | 一种创建函数钩子的方法、***、设备及介质 |
CN111309978A (zh) * | 2020-02-24 | 2020-06-19 | 广西电网有限责任公司防城港供电局 | 变电站***安全防护方法、装置、计算机设备和存储介质 |
CN112702187A (zh) * | 2020-12-04 | 2021-04-23 | 苏州浪潮智能科技有限公司 | 一种集群安全加固的方法和设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572729B1 (en) * | 2006-01-30 | 2013-10-29 | Mcafee, Inc. | System, method and computer program product for interception of user mode code execution and redirection to kernel mode |
CN107463839A (zh) * | 2017-08-16 | 2017-12-12 | 郑州云海信息技术有限公司 | 一种管理应用程序的***和方法 |
CN108830075A (zh) * | 2018-06-13 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种ssr集中管理平台的应用程序管控方法 |
CN108830077A (zh) * | 2018-06-14 | 2018-11-16 | 腾讯科技(深圳)有限公司 | 一种脚本检测方法、装置及终端 |
CN109472147A (zh) * | 2018-10-22 | 2019-03-15 | 郑州云海信息技术有限公司 | 一种虚拟化平台的安全检测方法及装置 |
-
2019
- 2019-09-29 CN CN201910934697.2A patent/CN110750778A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8572729B1 (en) * | 2006-01-30 | 2013-10-29 | Mcafee, Inc. | System, method and computer program product for interception of user mode code execution and redirection to kernel mode |
CN107463839A (zh) * | 2017-08-16 | 2017-12-12 | 郑州云海信息技术有限公司 | 一种管理应用程序的***和方法 |
CN108830075A (zh) * | 2018-06-13 | 2018-11-16 | 郑州云海信息技术有限公司 | 一种ssr集中管理平台的应用程序管控方法 |
CN108830077A (zh) * | 2018-06-14 | 2018-11-16 | 腾讯科技(深圳)有限公司 | 一种脚本检测方法、装置及终端 |
CN109472147A (zh) * | 2018-10-22 | 2019-03-15 | 郑州云海信息技术有限公司 | 一种虚拟化平台的安全检测方法及装置 |
Non-Patent Citations (1)
Title |
---|
隋颖等: "GUI软件测试文档辅助工具的设计与实现", 《计算机技术与发展》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309978A (zh) * | 2020-02-24 | 2020-06-19 | 广西电网有限责任公司防城港供电局 | 变电站***安全防护方法、装置、计算机设备和存储介质 |
CN111290747A (zh) * | 2020-03-07 | 2020-06-16 | 苏州浪潮智能科技有限公司 | 一种创建函数钩子的方法、***、设备及介质 |
CN112702187A (zh) * | 2020-12-04 | 2021-04-23 | 苏州浪潮智能科技有限公司 | 一种集群安全加固的方法和设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10902117B1 (en) | Framework for classifying an object as malicious with machine learning for deploying updated predictive models | |
US10621356B2 (en) | System and method of controlling file access of applications based on vulnerabilities of applications | |
US9846776B1 (en) | System and method for detecting file altering behaviors pertaining to a malicious attack | |
CN106934282B (zh) | 使用用于残疾用户的api控制对数据的访问的***和方法 | |
US8925076B2 (en) | Application-specific re-adjustment of computer security settings | |
US11665138B2 (en) | System and method for automatic WAF service configuration | |
US20210352105A1 (en) | Deception using screen capture | |
US20100037317A1 (en) | Mehtod and system for security monitoring of the interface between a browser and an external browser module | |
CN110750778A (zh) | 一种应用程序管控方法和装置 | |
US20210026947A1 (en) | Intrusion detection and prevention for unknown software vulnerabilities using live patching | |
US20180173876A1 (en) | Deceiving attackers in endpoint systems | |
US20220188444A1 (en) | Systems and methods for securing virtualized execution instances | |
US20070294530A1 (en) | Verification System and Method for Accessing Resources in a Computing Environment | |
US20190325134A1 (en) | Neural network detection of malicious activity | |
JP2006107505A (ja) | アクセス認可のapi | |
US12039037B2 (en) | Online command injection attacks identification | |
RU2514137C1 (ru) | Способ автоматической настройки средства безопасности | |
CN112149126A (zh) | 确定文件的信任级别的***和方法 | |
US11816213B2 (en) | System and method for improved protection against malicious code elements | |
TWI765690B (zh) | 基於觀察模式之應用程式控管方法 | |
US20220150241A1 (en) | Permissions for backup-related operations | |
CN118176698A (zh) | 用于零信任访问的软件态势 | |
JP2021064358A (ja) | 悪意あるソフトウェアによるデジタルフォレンジック情報の破棄を阻止するシステムおよび方法 | |
Ansari et al. | Smart Homes App Vulnerabilities, Threats, and Solutions: A Systematic Literature Review | |
TWI802040B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200204 |