CN103218554B - 用于基于用户行为适应性控制用户动作的系统和方法 - Google Patents

用于基于用户行为适应性控制用户动作的系统和方法 Download PDF

Info

Publication number
CN103218554B
CN103218554B CN201310085559.4A CN201310085559A CN103218554B CN 103218554 B CN103218554 B CN 103218554B CN 201310085559 A CN201310085559 A CN 201310085559A CN 103218554 B CN103218554 B CN 103218554B
Authority
CN
China
Prior art keywords
user
action
rule
constraint rule
allowed
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
CN201310085559.4A
Other languages
English (en)
Other versions
CN103218554A (zh
Inventor
亚历山大·V·列杰涅夫
叶夫根尼·B·科罗汀斯基
康斯坦丁·S·伊格纳季耶夫
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.)
Kaspersky Lab AO
Original Assignee
Kaspersky Lab AO
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 Kaspersky Lab AO filed Critical Kaspersky Lab AO
Priority to CN201310085559.4A priority Critical patent/CN103218554B/zh
Publication of CN103218554A publication Critical patent/CN103218554A/zh
Application granted granted Critical
Publication of CN103218554B publication Critical patent/CN103218554B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

所公开的是用于适应性控制计算机系统上的用户动作的系统、方法和计算机程序产品。系统监测用户的一个或多个动作、应用约束规则以检测被禁止的用户动作、以及阻止违反至少一个约束规则的被禁止的动作。系统还收集关于用户的被允许动作和相应系统事件的信息、实时分析所收集的关于与被允许动作相对应的系统事件的信息以检测没有违反任何约束规则但是造成在某些系统资源使用方面的反常增加的异常动作。当检测到异常动作时,系统识别与所检测到的异常动作相关联的约束规则并编辑这些规则或创建新的约束规则以包括对用户禁止的异常动作。

Description

用于基于用户行为适应性控制用户动作的系统和方法
技术领域
本公开总地涉及计算机安全领域,并且更具体地,涉及用于在用户行为的基础上适应性调节和控制用户动作的系统、方法和计算机程序产品。
背景技术
对于世界上大部分人来说因特网已经成为生活中不可或缺的一部分。因特网提供了取之不尽的信息来源以及用于通过社交网络、聊天室、即时消息和电子邮件进行通信的介质。因特网还用来购物、支付账单、玩游戏、看视频和其他活动。因特网上提供的一些类型的信息是面向成年人群的。换言之,这些信息不适合儿童和青少年。这些信息可以是通常可在交友网站、成人视频网站和其他地方找到的色情材料。当然这种资源不应该提供给儿童。
每年儿童和青少年都更加经常性地访问因特网,因为他们渴望了解并使用因特网所提供的一切。因特网允许儿童学习、进步和与人进行社交。然而年轻的因特网用户往往不具有对因特网上提供的所有信息的足够理解力,因为这些信息往往未经验证或缺乏期望的质量。一些数据甚至可能对儿童是危险和有害的。因此需要控制儿童对网络空间中的信息的访问。
目前使用家长控制系统来解决这一需要。这些系统的主要任务是保护儿童免受与儿童利用计算机和对因特网进行访问的工作相关联的威胁,以及控制允许儿童在因特网、玩计算机游戏或看视频上所花费的时间。家长控制系统一般允许家长制定灵活的约束规则,其控制儿童对因特网和运行在他们的计算机上的软件的访问。此外,家长控制系统可以创建由计算机用户所实施的动作的报告。这些报告显示给管理员用户(例如可以是父母),以使得该用户可以保持了解由儿童所实施的动作,并且如果必要的话编辑约束规则。
然而,现代的家长控制系统可能无法充分响应异常用户动作。异常动作是应该对用户禁止但出于以下原因中的一个或多个而未被约束规则所阻止的那些动作:管理员忘记创建覆盖异常动作的规则;管理员在制定约束规则中不周密并遗漏异常动作;或者管理员没有意识到对被禁止的应用程序或内容进行阻止的可能性。家长控制系统配置为阻止由约束规则所特别描述的用户动作,该约束规则在用户实施任意异常动作之前被制定。所实施的异常动作事后将被报告给家长/管理员。并且仅在对报告进行审查之后,管理员可以编辑约束规则以覆盖被禁止的异常动作。因此,如果用户找到规避约束规则的方式,那么系统去阻止用户动作的时间可能很久,因为其取决于管理员的反应。
当前的家长控制系统有其他缺陷。例如,它们要求管理员称职并能够理解由系统所生成的报告,所以他/她可以改变约束规则或创建新的规则。另外它们不考虑来自外部数据源的信息。当有不同教学方法的完整自动化时,外部数据可能来自例如学校或来自另一个学习机构。外部数据的示例可以是作为报告或成绩从老师接收的信息。这种信息可以用作给予儿童用户更多或更少余地的访问调节的基础。
因此,需要具有基于用户行为适应性调节用户对计算机和因特网资源的访问的家长控制系统。
发明内容
所公开的是用于在用户行为的基础上对用户动作进行适应性的、实时的调节和控制的系统、方法和计算机程序产品。在一个示范性实现方案中,用于适应性控制用户动作的系统监测用户在计算机上的动作并应用对用户的被禁止动作进行检测的约束规则。系统进一步阻止违反至少一个约束规则的用户的被禁止动作、收集关于用户的被允许动作和与被允许的用户动作相对应的系统事件的信息,以及实时分析所收集的关于与用户的被允许动作相对应的系统事件的信息以检测用户的异常动作。用户的异常动作没有违反任何约束规则,但是造成下列情况中的一个或多个:在某些系统资源使用方面的反常增加、某个内容的加载、某个应用程序的启动以及数据输入设备的使用。当检测到用户的异常动作时,系统识别是否一个或多个约束规则与所检测到的异常动作相关联。当没有识别到关联的约束规则时,系统允许用户的异常动作在计算机系统上执行。当识别到关联的约束规则时,系统编辑关联的约束规则或创建新的约束规则以包括对用户所禁止的异常动作,并在计算机系统上阻止异常动作。
上述示范性实施例的简要概括用来提供对本发明的基本理解。此概括并非对本发明的所有预期方面的宽泛概述,并且既不意图确定所有实施例的重要的或关键的元素也不意图描绘任意或所有实施例的范围。其唯一目的是以简化的形式呈现一个或多个实施例,作为接下来对本发明的更详细的描述的前序。为了实现上述目的,一个或多个实施例包括在权利要求书中所描述和具体指出的特征。
附图说明
附图并入此说明书中并构成其中的一部分,示出了本发明的一个或多个示范性实施例,并与详细的描述一起用于解释实施例的原理和实现方案。
附图中:
图1示出了家长控制系统的示范性实施例。
图2示出了家长控制系统的适应性子系统的示范性实施例。
图3示出了用于家长控制系统的适应性重配置的示范性方法。
图4示出了用于检查约束规则的正确性的一个示范性方法。
图5示出了适合实现本文所公开的家长控制系统和方法的通用计算机的框图。
具体实施方式
本文围绕用于实现为家长控制系统的一部分的、基于用户行为适应性调节和控制用户动作的系统、方法和计算机程序产品描述了本发明的示范性实施例。本领域普通技术人员应该理解下面的描述仅是示意性的并且不意图以任何方式进行限定。从本公开获得益处的本领域技术人员将易于理解其他实施例。现在将详细参考附图中示出的示范性实施例的实现方案。贯穿附图和下面的描述将尽可能使用相同的参考标记来指代相同或相似项。
大多数现代的家长控制系统通常部署在个人计算机、防火墙或远程服务器上并且往往包括一系列软件部件,其控制用户动作(经常是儿童用户的动作)或作为所述用户动作的结果而发生的事件,以及按照约束规则所指定的来阻止或允许所述动作和/或事件。
图1是其中可以实现用于基于用户行为适应性调节和控制用户动作的系统和方法的家长控制系统130的示范性实施例。系统130可以实现为孤立的软件应用程序或安全软件套件的部件,诸如卡巴斯基因特网安全套装,并且可以安装在个人计算机120或其他类型的计算设备上,诸如笔记本电脑、平板电脑、智能手机、网络服务器、网络防火墙等等。系统130可以配置为控制计算机120的一个或多个用户100的动作110。用户100可以包括儿童或其动作应该被控制并且不具有计算机120上的管理特权的任何人。由系统130所控制的最典型动作包括但不限于因特网浏览(例如访问某些网站并观看某些Web内容)、下载/安装/启动应用程序(例如计算机游戏);以及利用数据进行工作(例如读、写、删除或编辑文件)。
为了控制用户动作,家长控制系统130包括多个动作控制模块140,其有助于不同类型的控制。例如,一个模块140可以负责自动获取并存储计算机120上所显示的信息的屏幕截图以稍后将它们呈现给管理员(例如家长)。另一个模块140可以控制经由即时通讯应用程序所做出的用户的通信交换。该控制通过监听通信端口以及分析诸如MSNP、AIM/ICQ和XMPP(Jabber)的协议来实施。但是另一个模块140可以负责控制用户100正在访问或可能访问的网站。其可以例如通过监测HTTP和HTTPS协议来进行。另一个模块140可以控制由用户100所访问的网站上的不良信息的显示。例如,其搜索词语“色情”并阻止网站的显示,如果该词列在阻止该内容的规则中的话。还可以有另一个模块140,其控制程序和应用程序的下载,其可以经由所下载文件的名称或散列和来进行。还可以有其他模块140,其控制计算机上的不同系统事件,诸如文件的打印、将文件写到光盘驱动器、网页的打开等。另外,可以有从用户计算机120的OS的各性能分析器收集信息的其他模块140。
动作控制模块140通过抢先禁止(例如阻止)某些用户动作110来进行操作,所述某些用户动作110诸如在计算机120上访问被禁止的网站或加载被禁止的应用程序的。当激活负责阻止所检测到的被禁止动作的约束规则时,发生对用户动作的阻止。约束规则存储在规则数据库150中。该数据库150可以由-管理员用户创建。管理员可以亲自创建新的约束规则或使用来自外部来源的约束规则。例如,外部来源可以是包含被允许的或被禁止的网站的列表的数据库。另一个示例是包含被允许的和被禁止的动作的规则的数据库。该数据库可以在诸如卡巴斯基实验室的安全软件开发公司的帮助下创建。在系统130的操作过程中,其中包含所有规则的数据库150可供用于模块140。
应该注意在系统130的操作过程中,其创建关于由用户100所实施的所有动作和响应于所实施的用户动作而发生的系统事件的报告,并且其还创建关于用户对于违反来自数据库150的一个或多个约束规则的尝试的报告。结果是始终就用户100在计算机120上做了什么向管理员进行通知,并且因此管理员可以通过编辑存在的约束规则或创建新的约束规则来对所检测到的用户动作110做出响应。
在一个示范性实施例中,家长控制系统130包括基于用户行为实施对约束规则的实时编辑的适应性子系统200。一般在适应性子系统200的操作过程中,其从动作控制模块140接收关于用户动作、所导致的系统事件和所激活的约束规则(如果有的话)的信息。适应性子系统200分析所接收的信息并识别对用户本应该由系统130禁止却被允许的异常动作。适应性子系统200从数据库150检索有关约束规则并编辑这些约束规则以阻止异常动作。如果数据库150中不存在有关约束规则,那么子系统200可以创建新的约束规则。然后子系统200在数据库150中更新新的以及所编辑的规则。
图2示出了家长控制系统的适应性子系统的一个示范性实施例。适应性子系统200包括监测模块210、分析模块220、规则配置模块230、配置规则数据库240以及规则检查模块260。在一个示范性实现方案中,监测模块210收集关于用户100在计算机120上工作期间所发生的所有系统事件的信息。例如监测模块210收集关于由用户100的动作所造成的所检测到的操作系统(OS)事件的信息。在此之后,监测模块210将所收集的信息转发到分析模块220。
在一个示范性实现方案中,分析模块220从控制模块140和监测模块210接收信息。从模块140所接收的信息可以包括关于由用户100在计算机120上所实施的所有动作的报告以及关于所激活的约束规则的信息。从监测模块210所接收的信息可以包括关于在由用户100所发起的动作期间和之后的所有OS事件(例如API函数调用)的报告。这类事件和动作的示例可以包括但不限于:在中央处理器(CPU)使用方面的增加;在物理存储器使用方面的增加;在图形处理器(GPU)使用方面的增加;全屏应用程序的执行;网络数据包交换的增加;应用程序的启动;来自因特网的文件的下载;网页的加载;数据输入设备(例如鼠标或键盘)的使用;音频程序的使用;某个内容(例如HTML、flash等)的加载以及其他事件。
在一个示范性实现方案中,分析模块220通过识别由用户100所实施的动作与关联的OS事件之间的关系来分析所接收的信息。关系的示例是在某个时间段(例如数毫秒)内所发生的用户的动作与OS事件之间的联系。例如,如果用户100启动游戏应用程序,那么分析模块220将接收来自模块140的关于用户的该动作的信息,还有来自监测模块210的关于以下活动的信息:文件活动以及CPU和/或GPU使用的增加。一旦所检测到的用户动作(例如由鼠标在应用程序图标上双击)和上述后继事件在短期内发生,那么分析模块220就能够识别它们之间的联系,即事件作为所述用户动作的结果出现。动作和相应事件之间的关系的另一个示例将是基于由各系统性能分析器所获得的信息而确定的联系,所述各系统性能分析器通常对计算机120中的OS和硬件资源使用情况的不同指标进行测量。
在所接收的信息的基础上,分析模块220收集发送到调节模块230的上下文(例如包含信息项的可视列表的数据结构)。应该注意事件上下文可以实时生成并作为传入的新数据(事件和/或动作)发送。取决于实现方案,上下文可以包含:关于用户的动作的(具有不同详细程度的)详细信息;关于与用户的动作相对应的事件的信息;事件(例如CPU的加载)的持续时间;以及关于事件的附加信息,诸如关于执行增加CPU和/或GPU使用的进程的文件的信息;关于所访问的网站和其内容的信息(例如站点的地址、来自社交网络的联系人信息等);关于所连接的外围设备及其使用情况的信息。
在一个示范性实现方案中,配置模块230实施规则数据库150的配置和更新。规则数据库150的配置包括编辑其包含的约束规则或创建将添加到规则数据库150的新的约束规则。配置模块230分析给定的上下文以查找用户100的异常动作。如以上所解释的,异常动作是对受控制的用户(例如儿童)应该禁止却未被来自数据库150的任何约束规则所阻止的动作。换言之,家长控制系统130未能阻止被禁止的用户动作。
以下是异常用户动作的数个示例:
1.旨在获得对操作系统的控制的动作,其通常仅对具有系统上的管理权限的用户是允许的。这类动作可以包括但不限于:尝试启动或安装属于系统程序类别的应用程序;尝试改变OS加载的进程或对BIOS做出改变;在硬盘驱动器上做出新的分区;安装驱动程序;如果家长控制系统130实现为单独的程序的情况下,尝试删除或改变它;尝试添加新的管理用户或改变现有用户的管理特权;尝试以安全模式加载OS。
2.导向应用程序的操作的动作,其将是未知的,因为家长控制系统130不能确定这些动作的类别。因此,因为对未知应用程序的访问未被禁止,所以用户100可以获得对因特网的访问权或玩计算机游戏。这类动作的示例将是尝试启动特殊或经改变的程序,诸如游戏或Web浏览器。
3.经由二级指示或经由对不同指示的汇总所发现的动作。例如启动游戏应用程序的二级指示可以包括但不限于:访问已知的游戏网站;访问游戏文件;创建对游戏而言唯一的同步对象;以半屏模式监测程序之一的延长操作;诸如在中央处理器(CPU)或图形处理器(GPU)上的计算机资源的反常(例如高的或多于正常的)使用;检测用户的某些数据输入配置文件,诸如键WSAD、空格、E、Ctrl的频繁使用;以及应用程序对诸如Direct3D或OpenGL的某些API的使用。
4.在因特网中所实施的动作,包括但不限于:在未知网站处的动作,诸如信息的输入;填写表格的动作;注册未知网站并提供诸如姓名和个人身份证号码的高度个人化信息的动作;周期性请求未知/被禁止的网站;经由代理服务器或使用提供匿名的应用程序(诸如Tor)浏览因特网。
使用来自配置规则数据库240的配置规则来进行事件上下文的分析。这些规则包含用于识别被禁止动作的类型的一般标准、关于动作类型的决定以及用于约束规则的模板。该模板可以用来创建用于特定被禁止动作的新的约束规则。例如,所述配置规则可包含用于如果由未知应用程序(其使用现有的约束规则无法归类)来实施以下动作中的一个或多个则将未知程序归类到“游戏”类别的逻辑:应用程序以全屏操作模式操作;应用程序的操作导致CPU和GPU的反常(高)使用;跟随某个数据输入配置文件(诸如键WSAD、空格、E、Ctrl的频繁使用);以及应用程序使用某些API,诸如Direct3D或OpenGL。基于这些一般标准,配置模块230可以确定由用户所激活的应用程序是否落入“游戏”的类别以及是否应该被阻止。在另一个示例中,配置规则可以包含用于如果由未知应用程序实施以下动作中的一个或多个则将未知应用程序归类到“浏览器”类别的逻辑:从键盘输入数据、打开数个窗口、使用flash播放器、使用脚本解释器(例如JavaScript);网络活动(例如加载文件)。而在另一个示例中,配置规则可以包含用于如果由未知应用程序实施以下动作中的一个或多个则将未知应用程序归类到“视频播放器”类别的逻辑:频繁从磁盘读数据,诸如大型数据文件;应用程序以全屏模式操作;长时间没有用户输入;暂停屏幕保护应用程序以及其他动作。
因此,配置模块230将所接收的事件上下文与配置规则相比较。假如响应于所检测到的动作而使配置规则之一被激活(即被违反),但是来自规则数据库150的约束规则都未被激活,那么该动作潜在地是异常动作。接下来,配置模块230确定在规则数据库150中的约束规则的存在,其与被激活的配置规则的模板相对应。假如没有来自数据库150的约束规则,则潜在异常的行为可以认为是被许可的并被允许执行。配置模块230返回到对从分析模块220所接收的事件上下文的分析。但是假如在规则数据库150中找到相应的约束规则时,则潜在异常地动作被确认是异常的,因为所识别的约束规则尚未被动作控制模块140中的任何一个激活。然后配置模块230决定如何处理检测异常动作。这样的决定可以是编辑数据库150中的现有的约束规则或创建新的约束规则以及将其添加到数据库150。决定是否进一步更新数据库150将取决于所发现的异常动作的类型和尚未激活的约束规则。规则数据库150可以在用户在计算机120上工作期间或之后被更新。
当发现异常动作时,在编辑来自规则数据库150的约束规则的情况下,那么配置模块230会以下次其将工作的方式来编辑它。例如规则将包含所发现的异常的特征。一旦检测到该特征,规则将阻止该动作。
以下是编辑约束规则的数个示例:
示例1.数据库150包含在下午7点之前禁止启动所有Web浏览器的约束规则。规则对于其已知的所有浏览器起作用。当用户100正在计算机120上工作时,约束规则检测指向利用未知浏览器工作的异常用户动作。通过使用以下的动作和事件标准来发现那些异常动作:启动了未知应用程序,其唤起因特网活动;显著增加(例如数倍)的因特网数据包交换;应用程序在许多URL地址处请求信息资源,其包括GET或POST查询。因此,在所发现的异常动作的基础上,配置模块230可以编辑负责约束因特网浏览的约束规则。在这种情况下,编辑可以涉及将新浏览器(诸如浏览器文件的散列和)的特征添加到相应的约束规则。
示例2.该示例与示例1相似。然而在这种情况下,约束规则经由HTTP流量(例如GET和/或POST请求)检测未知浏览器的使用,同时分析因特网流量。因此,在所发现的异常动作的基础上,配置模块230可以编辑负责约束因特网浏览的约束规则。在这种情况下,编辑可以涉及将新浏览器(诸如浏览器文件的散列和)的特征添加到相应的约束规则。
示例3.数据库150包含禁止访问某些网站的约束规则(例如包含被禁止网站的列表的规则)。这些网站属于相同的类别(例如具有色情内容的网站)。如果用户100已经访问过也可以归类为“具有色情内容的网站”的网站,那么配置模块230可以使用现有的规则将该特定网站添加到被阻止网站的列表。
如果配置模块230决定创建新的约束规则,那么可以基于所检测到的异常动作制定新的规则,同时使用未被激活的约束规则(换言之,其将是本质上应该已经负责阻止所检测到的异常动作的规则)。当现有的约束规则的逻辑不允许定义并阻止用户100的相应动作的所有可能变化时将做出这类决定(例如如果来自规则数据库150的现有的约束规则需要不断更新否则其很容易被规避,则这种情况会发生)。一旦生成了相比于未激活的约束规则施加更严格约束的新的约束规则,则配置模块230就可以将新规则添加到配置规则数据库150以更新它。
以下是配置模块230的操作的数个示例:
示例1.数据库150包含禁止用户100玩在线游戏的约束规则。动作控制模块140使用该约束规则来检测与未知在线游戏的启动相关的异常动作。然而,该动作将由配置模块230使用配置规则而被分类为被禁止的,所述配置规则包含用于基于以下一系列事件将未知在线游戏归类到“游戏”类别的逻辑:图形处理器(GPU)的严重耗用、全屏应用程序的启动、以及网络数据包的显著交换。另外,该应用程序的类别是不确定的。因此,配置模块230创建用于阻止该异常动作的更严格的约束规则,例如,诸如禁止启动会增加图形处理器的70%的使用的应用程序的规则。
示例2.数据库150包含禁止启动任意种类的Web浏览器的约束规则。规则在拒绝启动其散列和位于可执行文件散列和数据库中的所有应用程序的策略的基础上起作用。然而,因为配置模块230不断保持定位新版本的Web浏览器,所以该约束规则并未适当地起作用。在这种情况下,配置模块230可决定创建新的约束规则,所述新的约束规则将对发送请求到包括所有类型的Web浏览器的URL地址的所有应用程序进行阻止。
示例3.该示例与示例2相似。如果配置模块230还确定来自数据库150的现有约束规则正在不断被修改(例如不断添加关于在下午7点之前其启动被禁止的Web浏览器的新信息),那么配置模块230决定创建更严格的规则,所述更严格的规则将允许阻止Web浏览器的所有进一步使用。因此,其将约束规则添加到数据库150,所述约束规则对必须利用通过通常由Web浏览器所使用的端口,诸如端口80或8080来传送数据而进行的因特网上的所有活动加以阻止。因此,由于标准http请求不能发送,所以用户100不能使用计算机120上的浏览器,即使是已启动的。
示例4.数据库150包含禁止访问某些网站的约束规则(例如具有被禁止站点的完整列表的规则)。所有这些网站可以属于相同的类别(例如“具有色情内容的站点”)。该类别的定义可以基于一系列对所下载的网页内容进行分析的规则:例如,大量图像、flash视频和小文本的存在可指示包含色情或情色材料的网站,而由用户频繁输入/更新的大量文本的存在可指示在线聊天。此外,可以使用模糊逻辑、正则表达式和其他分析方法来实施基于网站内容(例如文本、图像等)的分析的网站归类。如果用户100周期性地访问还可以归类为“具有色情内容的站点”的特定网站,那么配置模块230可以采取通过禁止加载包含色情内容的所有网站来使其更严格的手段,来改变对内容进行阻止的现有规则。该示例特别示出了对家长控制系统的不完整配置的添加。
示例5.数据库150包含禁止与社交网络(例如在线聊天、IM)中的若干联系人通信的约束规则。该约束规则可以使用白名单和黑名单用于识别被允许/被禁止的联系人。可以基于一系列低级规则来将联系人添加到这些列表,所述低级规则分析来自未知联系人的文本、联系人的年龄、通信的持续时间等。
在一个示范性实现方案中,配置模块230可以创建临时约束规则以约束周期性重复的被禁止的用户动作。
以下是临时约束规则的数个示例:
示例1.配置模块230周期性地识别某些动作,所述动作试图规避负责阻止被禁止应用程序的约束规则而导向启动这些应用程序。在这类情况下,配置模块230可以创建新的临时约束规则,其将阻止用户100的所有动作直到管理员用户决定移除该约束规则为止。因此,临时约束规则将被创建并添加到规则数据库150。
示例2.配置模块230第一次找到导向启动应用程序(例如媒体播放器-即使有限制打开任何媒体文件的规则)的异常用户动作。同时配置模块230确定负责该约束的约束规则不包含禁止启动媒体播放器的参数。因此,配置模块230做出编辑负责禁止该动作的约束规则的决定。可以通过将未知播放器的散列和添加到该约束规则来实施编辑。接下来,在同一工作会话期间,配置模块230找到导向启动又一个未知媒体播放器的另一个异常动作。在这种情况下,配置模块230做出创建将具有更严格约束要求的约束规则的决定。该新约束规则将被添加到规则数据库150。如果在以后的时间里配置模块230发现导向启动视频播放器的另一个异常动作,那么其可以做出对用户100在计算机120上的动作加以相当限制的决定,例如仅允许使用仅一种类型的Web浏览器来访问已知的教育站点。
在一个示范性实现方案中,所创建的新约束规则可以具有临时规则的身份。
在一个示范性实施例中,可以基于从监测模块210所接收的信息来创建用户100的配置文件。配置文件可以包括关于由用户所使用的程序、使用计算机的持续时间、所加载/所观看的媒体、所访问的网站等的信息。基于配置文件信息,配置模块230可以生成将存储在数据库150中的新的约束规则。当用户100在某个时间段(例如从下午7点到9点)仅针对一个特定应用程序(例如因特网浏览)以及在不同时间针对其他应用程序(例如游戏)正在使用计算机时,这类约束规则例如可以通知家长/管理员。
在一个示范性实现方案中,在分析从分析模块220所接收的数据期间,配置模块230检测被允许或积极的用户100的动作。积极的动作包括导向用户(儿童)100的教育的动作或说明没有启动娱乐应用程序的动作。例如数天内用户100都没有玩计算机游戏或未超出为因特网使用所分配的时间的限制。积极动作的其他示例是使用管理员已经标记为积极的某些程序(例如教外语的应用程序)。因此,对于坚持遵守通过约束规则所表达的管理员所施加的行为,配置模块230可以决定奖励用户100。临时暂停或废除一些约束规则或编辑存在的约束规则以给予用户100访问娱乐应用程序或因特网资源的更大自由,诸如增加允许用于游戏应用程序或访问娱乐网站的时间。
在另一个示范性实现方案中,配置模块230分析已经经由因特网中的外部来源所接收的信息280。信息280包含关于用户100的动作/行为的消息。这类信息的示例可以是来自儿童的学校老师的、描述儿童的行为和/或成绩的报告。该信息可以作为经由用于数据交换的特殊接口(例如具有用于数据交换的API函数的XML接口)发送到家长控制系统130的单独的消息(例如电子邮件)。动作可以是积极的(例如成绩好)或消极的(例如老师所报告的在班级上的坏行为)。所以取决于在学校所实施的动作,配置模块230可以决定通过使约束规则更严格或更宽松来对其进行编辑。
另外,在另一个示范性实现方案中,适应性子系统200可以包括分析新的和所编辑的约束规则的性能的规则检查模块260。例如在试用期期间,规则检查模块260收集关于添加到规则数据库150的新的或所编辑的约束规则如何有效的统计数据。一旦收集到统计数据,模块260就分析错误响应。如果没有找到错误响应,那么给定的规则变为永久性的。但是如果约束规则不适当地起作用,那么指令配置模块230对约束规则实施附加编辑。试用期可以由管理员用户来调节或默认确定。另外,规则检查模块260可以将来自规则数据库150的关于所激活的约束规则的信息发送到配置模块230。
在一个示范性实现方案中,规则检查模块260可以将对于与正在被分析的约束规则有关的统计数据的请求发送到云服务。该云服务可以由例如卡巴斯基安全网络提供。云服务包含关于各约束规则的统计。该统计信息从不同用户和软件开发公司汇总。
在一个示范性实现方案中,家长控制系统130可以连接到位于用户100的其他设备上的类似系统。连接可以是有线以太网或无线网,诸如蓝牙、Wi-Fi或NFC连接。在这种情况下,规则数据库150的约束规则可以在所有所连接的用户设备上其作用。因此,如果一些动作将要在一个设备上被约束,那么相同的动作可以在其他用户设备上被约束。例如,如果因为用户已经超过他/她在给定日期的时间分配,因此约束规则在一个设备(例如PC)上阻止用户对社交网络站点的访问,那么相同的约束将应用在其他设备(例如智能手机)上。
图3示出了用于基于用户行为适应性重配置家长控制系统的适应性子系统的操作的示范性方法。在步骤310,适应性子系统200从模块140接收关于由受控制的用户100所实施的动作的信息和关于所激活的约束规则(如果有的话)的信息,并从模块210接收关于受控制的用户100在计算机120上工作期间操作系统(OS)中所发生的事件的信息。在步骤320,将所接收的信息传递到分析模块220,分析模块220分析该信息以识别被允许的用户动作与所检测到的OS事件之间的关系以及收集包含关于用户100所有所实施(例如被允许)的动作和作为用户动作的结果所发生的所有相关OS事件的信息。在步骤330,将上下文传递到配置模块230,配置模块230使用来自数据库240的配置规则分析该上下文以识别异常动作。配置规则包含用于识别被禁止动作的类型的一般标准;对于动作的类型的决定;以及用于约束规则的模板。如果在步骤340已经识别出异常动作,则在步骤350配置模块230确定数据库150中是否有与异常用户动作相关的约束规则。
以下是由配置模块230所实施的分析的示例:数据库150中的约束规则可以包含以下约束规则:“在下午8点之后阻止启动来自类别‘游戏’的应用程序”。配置模块230在其分析的事件上下文中查找以下被允许的动作和关联的事件:应用程序(其类别未确定)已被启动;已经有在GPU和CPU的资源使用方面的增加;还有API Direct3D已被使用,以及应用程序已经正在以全屏团(regiment)进行工作。然后配置模块230在配置规则数据库240中查找以下配置规则:“如果上下文=<上述上下文>,那么应用程序属于“游戏”类别”。另外,该配置规则可以具有附加条件,诸如举例来说:如果该异常动作第一次发生(即家长控制系统之前未能检测到该游戏),那么将应用程序添加到“游戏”类别;如果该异常动作不止一次发生,那么创建阻止除被允许的应用程序(如果有这种的话)以外的所有应用程序的启动的临时规则并将其在关于该条件的激活的报告中发送到管理员;如果用户数次(例如5次)尝试启动被禁止的应用程序,那么上述规则成为永久性的,并将报告发送到管理员。
假如在步骤350没有找到与异常动作相对应的约束规则,那么不阻止所检测到的用户动作(因为管理员没有对这种类型的动作进行任何限制),并且配置模块230返回步骤320以得到下一个事件上下文。在于步骤350找到了相应的约束规则的情况下,那么认为所发现的动作是异常的,虽然约束规则未能阻止所发现的被禁止动作。异常动作是被认为对用户禁止的动作,但是还没有由用于该用户的任何约束规则对其加以阻止。
接下来,在步骤360,配置模块230选择将要实施在约束规则上的重配置的类型。在对编辑约束规则的可能性进行评估的标准的基础上来确定重配置的类型。例如,评估标准显示该约束规则可以通过将所检测到的动作的特征添加到规则以使得将来规则将检测到该动作并据此阻止它来编辑。如果编辑规则的可能性的评估显示该规则不能被编辑,那么将创建新的约束规则。接下来提供该实现方案的示例:家长控制系统包含例如至少两个用户约束的标准:“宽松约束”和“严格约束”。根据由管理员最初创建的约束规则将该类型约束施加到用户动作上。如果这些约束规则阻止不与被允许动作的列表相对应的所有动作,那么其是“严格约束”。如果约束规则仅阻止具有情色内容的网站,但是在计算机处的其余动作都是被允许的,那么其是“弱约束”。因此,取决于约束的类型,新的、更严格的约束规则将被添加到数据库150。因此,如果将约束的类型定义为“严格”的,那么假如检测到异常动作,则将添加新的甚至更严厉的规则。如果将约束的类型定义为“弱”的,那么仅将要被编辑的约束规则将负责所检测到的异常动作。如在以上示例中所描述的,新的约束规则将具有更严厉的(阻止该动作的)约束参数,其将覆盖所检测到的异常动作。因此,在步骤370,利用禁止异常用户动作的所编辑的或新的约束规则来更新规则数据库150。
在一个示范性实现方案中,配置模块230还可以识别由用户所实施的积极动作,同时在步骤330-340分析所接收的用于异常行为的事件上下文。如以上所解释的,积极动作导向用户(儿童)的教育或说明没有启动受控制的应用程序。例如用户数天未玩计算机游戏。如果配置模块230识别到积极动作,则其还可以更新规则数据库150,但是其这样做是为了减小约束的严厉性。因此,规则数据库150可以以将削弱(即阻止标准的数目将减少)或移除其包含的约束规则这样的方式改变。例如数据库150的更新将增加允许用户使用计算机120的时间量,或其将允许用户使用先前被阻止的Web资源。
而在另一个示范性实现方案中,可以基于一些“理想”用户100的行为模型而预先在数据库150中创建约束规则。该模型可以基于所有已知用户100的统计平均动作,其将允许创建这样的约束规则,所述约束规则将以各种程度的可能性应用到所有将来用户100。
在另一个示范性实现方案中,配置模块230可以临时指定新的约束规则。在这种情况下,配置模块230可以向管理员发送通知以检查新的临时规则的正确性。如果必要的话管理员可以纠正临时规则并将其标记为永久性的。
在另一个示范性实现方案中,可以激活规则检查模块260以分析所编辑的、新的或临时的约束规则用于错误响应。图4示出了规则检查模块260的操作。在步骤410,规则检查模块260收集关于被添加到规则数据库150的约束规则的操作的统计数据。可以通过监测相应规则对用户动作的反应或经由查询云服务来收集关于规则的信息。在步骤420,规则检查模块260分析所收集的关于规则的统计数据以识别错误响应(例如当规则阻止用户的被允许动作或允许被禁止动作时)。当用户就家长控制系统的不正确操作而通知管理员时可以进行错误响应的确定,在这种情况下管理员可以将特定规则标记为不正确。可替代地,可以通过将所阻止的应用程序与合法应用程序的列表经由它们的散列和相比较来做出错误响应的确定。在步骤430,规则检查模块260确定规则是否要求进一步编辑。当需要编辑时,在步骤440识别要求编辑的约束规则的参数。这些参数中的一些可以被编辑或移除。然后将编辑参数发送到配置模块230。在步骤450配置模块250将在所接收的信息的基础上编辑相应的约束规则,并且利用所编辑的规则来更新规则数据库150。如果所添加的规则不要求编辑,那么在步骤460,将从该规则移除所编辑的/临时的/新的身份,并且其成为永久的规则,同时规则检查模块260可以继续其工作。
图5是计算机系统5的示范性实施例,所述计算机系统5可以用来实现本文所述的用于适应性控制用户动作的系统和方法。如所示的,计算机系统5可以包括由系统总线10所连接的一个或多个硬件处理器15、存储器20、一个或多个硬盘驱动器30、光盘驱动器35、串行端口40、图形卡45、声卡50和网卡55。系统总线10可以是包括使用各种已知总线架构的存储器总线或存储器控制器、外围总线和本地总线的几种类型总线结构的任何一种。处理器15可以包括一个或多个Core2Quad2.33GHz处理器或者其他类型的微处理器。
系统存储器20可以包括只读存储器(ROM)21和随机存取存储器(RAM)23。存储器20可以实现为DRAM(动态RAM)、EPROM、EEPROM、Flash或其他类型的存储器架构。ROM21存储基本输入/输出系统22(BIOS),其包含基本的例程,该例程帮助在计算机系统5的部件之间转移信息,诸如在启动过程中。RAM23存储操作系统24(OS),诸如XP专业版或其他类型的操作系统,其在计算机系统5中负责进程的管理和协调以及硬件资源的分配和共享。存储器20也存储应用程序和程序25。存储器20也存储由程序25所使用的各种运行时数据26。
计算机系统5可以进一步包括硬盘驱动器30,诸如SATA磁式硬盘驱动器(HDD),和用于对可移动光盘诸如CD-ROM、DVD-ROM或其它光介质进行读出或写入的光盘驱动器35。驱动器30和35及它们相关联的计算机可读介质提供实现本文所公开的算法和方法的计算机可读指令、数据结构、应用程序和程序模块/子例程的非易失性存储。虽然示例性的计算机系统5采用磁盘和光盘,但是本领域的技术人员应该理解其他类型的可存储由计算机系统5所访问的数据的计算机可读介质,诸如磁带、闪存卡、数字视频光盘、RAM、ROM、EPROM和其他类型的存储器也可以用于计算机系统5的替代实施例中。
计算机系统5进一步包括多个串行端口40,诸如通用串行总线(USB),用于连接数据输入设备75,诸如键盘、鼠标、触摸板和其他。串行端口40也可以用来连接诸如打印机、扫描仪和其他设备的数据输出设备80,以及连接诸如外部数据存储设备等等的其他外围设备85。系统5也可以包括图形卡45,诸如GT240M或其他显卡,用于与监视器60或其他视频再现设备接口。系统5也可以包括用于经由内部或外部扬声器65再现声音的声卡50。此外,系统5可以包括网卡55,诸如以太网、WiFi、GSM、蓝牙或其他有线、无线或蜂窝网络接口,用于将计算机系统5连接到网络70,诸如互联网。
在各种实施例中,本文所描述的系统和方法可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,那么方法可以存储为在非暂时性计算机可读介质上的一个或多个指令或代码。计算机可读介质包括数据存储。通过示例的方式,而非限制,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM、Flash存储器或其他类型的电子、磁式或光存储介质,或任何其他可用于以指令或数据结构的形式承载或存储所需的程序代码并且可被计算机所访问的介质。
为了清晰起见,本文没有公开实施例的所有常规特征。应了解在本发明任何实际的实现方案的开发过程中,必须制定许多特定于实现方案的决策以达到开发者的特定目标,而且这些特定目标随实现方案的不同以及开发者的不同而改变。应该了解这样的开发工作可能是复杂的和费时的,但是对受益于本公开的本领域技术人员而言,都将是常规的工程任务。
另外,应理解本文所使用的措辞或术语是出于描述而并非限制的目的,以便本领域的技术人员根据本文呈现的教导及指引并结合相关领域技术人员的知识来解读本说明书中的措辞或术语。此外,除非对其明确阐述,在说明书或权利要求中的任何术语都没有被赋予非常规或特殊的意义。
本文所公开的各种实施例包含对本文通过示例的方式提及的已知成分的目前和未来已知的等同物。此外,尽管已经示出和描述了实施例和应用,但对于受益于本公开的本领域的技术人员来说很明显的是,比上述提到的更多的修改是可能的,而不脱离本文所公开的发明构思。

Claims (7)

1.一种用于适应性控制计算机系统上的用户动作的方法,包括:
由硬件处理器监测在所述计算机系统上所述用户的一个或多个动作;
识别违反一个或多个约束规则的所述用户的一个或多个被禁止动作;
阻止违反一个或多个约束规则的所述用户的被禁止动作;
收集关于所述用户的被允许动作和与所述用户的所述被允许动作相对应的一个或多个系统事件的信息;
使用配置规则分析所收集的关于与所述用户的所述被允许动作相对应的系统事件的信息以检测所述用户的一个或多个异常动作,其中所述用户的异常动作不违反任何所述约束规则,但是造成下列情况中的一个或多个:在某些系统资源使用方面的反常增加、某个内容的加载、某个应用程序的启动、以及数据输入设备的使用;
当检测到异常动作时,识别是否一个或多个约束规则与所检测到的异常动作相关联;
当没有识别到关联的约束规则时,允许所述用户的所述异常动作在所述计算机系统上执行;以及
当识别到关联的约束规则时,(ⅰ)编辑所述关联的约束规则或创建新的约束规则以包括对所述用户所禁止的所述异常动作,以及(ⅱ)在所述计算机系统上阻止所述异常动作。
2.根据权利要求1所述的方法,其中使用配置规则分析所收集的关于与所述用户的所述被允许动作相对应的系统事件的信息以检测不违反任何所述约束规则但造成在某些系统资源使用方面的反常增加的异常动作,进一步包括:
分析与所述用户的所述被允许动作相对应的系统事件,包括处理器使用事件、网络使用事件和图形使用事件中的一个或多个;
识别在处理器使用、网络使用和图形使用中的一个或多个方面的高于阈值的反常增加;以及
当所述用户的被允许动作导致在某些系统资源使用方面的反常增加时将所述被允许动作表征为异常的。
3.根据权利要求2所述的方法,进一步包括:
分析与所述用户的所述被允许动作相对应的系统事件,包括一个或多个数据输入模式和应用程序接口(API)调用;
识别某些数据输入模式或某些API调用;以及
当所述用户的被允许动作导致所述某个数据输入模式或所述某些API调用时将所述被允许动作表征为异常的。
4.根据权利要求2所述的方法,其中分析与所述用户的所述被允许动作相对应的系统事件进一步包括:
确定所述用户的所述被允许动作或相应的系统事件是否违反一个或多个配置规则,
其中配置规则包括:识别不同类型的系统事件的标准;确定一个或多个系统事件是否指示被禁止或被允许的用户动作的决定;以及用于创建禁止用户动作的新的约束规则的模板。
5.根据权利要求1所述的方法,进一步包括:
收集关于所编辑的和新的约束规则的操作的信息;以及
分析所收集的关于所述所编辑的和新的约束规则的操作的信息以确定所述所编辑的和新的约束规则是否正确地操作;以及
如果所述所编辑的或新的约束规则没有正确地操作,那么进一步编辑所述规则。
6.根据权利要求1所述的方法,其中编辑所述关联的约束规则以包括对所述用户所禁止的所述异常动作进一步包括:
识别与所述用户的所述异常动作相关联的约束规则;以及
将所述被禁止动作的描述符添加为所述约束规则的参数。
7.根据权利要求1所述的方法,进一步包括:
识别用户坚持遵守一个或多个约束规则;以及
暂停所识别的约束规则以针对好的行为奖励所述用户。
CN201310085559.4A 2013-03-18 2013-03-18 用于基于用户行为适应性控制用户动作的系统和方法 Active CN103218554B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310085559.4A CN103218554B (zh) 2013-03-18 2013-03-18 用于基于用户行为适应性控制用户动作的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310085559.4A CN103218554B (zh) 2013-03-18 2013-03-18 用于基于用户行为适应性控制用户动作的系统和方法

Publications (2)

Publication Number Publication Date
CN103218554A CN103218554A (zh) 2013-07-24
CN103218554B true CN103218554B (zh) 2015-10-28

Family

ID=48816331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310085559.4A Active CN103218554B (zh) 2013-03-18 2013-03-18 用于基于用户行为适应性控制用户动作的系统和方法

Country Status (1)

Country Link
CN (1) CN103218554B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103595708B (zh) * 2013-10-22 2017-08-25 北京奇虎科技有限公司 浏览器异常关闭的处理方法、系统、浏览器和服务器
US9572104B2 (en) * 2015-02-25 2017-02-14 Microsoft Technology Licensing, Llc Dynamic adjustment of user experience based on system capabilities
US10069697B2 (en) * 2016-01-29 2018-09-04 Microsoft Technology Licensing, Llc Routing actions to user devices based on a user graph
CN108021443B (zh) * 2017-01-20 2020-04-07 腾讯科技(深圳)有限公司 事件处理方法和装置
EP4009297A4 (en) * 2019-08-02 2022-09-14 Sony Group Corporation INFORMATION PROCESSING DEVICE, METHOD AND PROGRAM

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1716865A (zh) * 2004-06-14 2006-01-04 深圳市傲天通信有限公司 用户上网行为控制系统
EP1944676A1 (en) * 2001-06-14 2008-07-16 Cisco Systems, Inc. Stateful reference monitor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1944676A1 (en) * 2001-06-14 2008-07-16 Cisco Systems, Inc. Stateful reference monitor
CN1716865A (zh) * 2004-06-14 2006-01-04 深圳市傲天通信有限公司 用户上网行为控制系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
self-Adaptive Authorization Framework for Policy Based RBAC/ABAC models;Christopher Bailey等;《IEEE NInth international Conference on》;20111214;第37-44页 *

Also Published As

Publication number Publication date
CN103218554A (zh) 2013-07-24

Similar Documents

Publication Publication Date Title
US8793207B1 (en) System and method for adaptive control of user actions based on user&#39;s behavior
US10003547B2 (en) Monitoring computer process resource usage
US10185924B1 (en) Security risk response impact analysis
US11086983B2 (en) System and method for authenticating safe software
Babun et al. Real-time analysis of privacy-(un) aware IoT applications
Sokolova et al. Android application classification and anomaly detection with graph-based permission patterns
CN103065088B (zh) 基于计算机用户的裁决检测计算机安全威胁的系统和方法
CN103218554B (zh) 用于基于用户行为适应性控制用户动作的系统和方法
US10091231B1 (en) Systems and methods for detecting security blind spots
US10528892B2 (en) Intelligent ranking of notifications on a user device
US20130246290A1 (en) Machine-Assisted Legal Assessments
Edu et al. SkillVet: automated traceability analysis of Amazon Alexa skills
Lin Understanding and capturing people's mobile app privacy preferences
KR102352517B1 (ko) 악성 댓글 대응을 위한 방법 및 시스템
CN102037472A (zh) 软件信誉的建立和监控系统及方法
Xiao et al. Detection and prevention of code injection attacks on HTML5-based apps
Dini et al. A multi-criteria-based evaluation of android applications
Wang et al. Characterizing and detecting bugs in wechat mini-programs
Rocha et al. Functionality-based mobile application recommendation system with security and privacy awareness
CN110417751B (zh) 一种网络安全预警方法、装置和存储介质
Khandelwal et al. Cookieenforcer: Automated cookie notice analysis and enforcement
JP6634055B2 (ja) ユーザによるアプリケーションの不公平な評価を防止するシステム及び方法
US20140317006A1 (en) Market specific reporting mechanisms for social content objects
US11854004B2 (en) Automatic transaction execution based on transaction log analysis
Luo et al. MAD-API: Detection, correction and explanation of API misuses in distributed android applications

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant