CN104885099A - 使用推升式决策树桩和联合特征选择及剔选算法来对移动设备行为进行高效分类的方法和系统 - Google Patents
使用推升式决策树桩和联合特征选择及剔选算法来对移动设备行为进行高效分类的方法和系统 Download PDFInfo
- Publication number
- CN104885099A CN104885099A CN201380069119.8A CN201380069119A CN104885099A CN 104885099 A CN104885099 A CN 104885099A CN 201380069119 A CN201380069119 A CN 201380069119A CN 104885099 A CN104885099 A CN 104885099A
- Authority
- CN
- China
- Prior art keywords
- sorter model
- mobile device
- decision
- formula
- making
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
- G06N5/043—Distributed expert systems; Blackboards
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/02—Knowledge representation; Symbolic representation
- G06N5/022—Knowledge engineering; Knowledge acquisition
- G06N5/025—Extracting rules from data
Abstract
用于分类移动设备行为的方法和系统包括配置服务器使用大型移动设备行为素材库来生成完整分类器模型,该完整分类器模型包括适合转换成推升式决策树桩的有限状态机和/或描述与确定移动设备行为是否为良性或是否造成移动设备随时间降级相关的所有或许多特征。移动设备可接收该完整分类器模型并使用该模型来生成完整推升式决策树桩集合,其中根据该完整推升式决策树桩集合通过将该完整集合剔选为适合高效地确定移动设备行为是否为良性的子集来生成目标更集中的或更精简的分类器模型。可通过选择依赖于有限测试条件集合的所有推升式决策树桩来剔选推升式决策树桩。
Description
相关申请
本申请要求于2013年9月5日提交的题为“Methods and Systems of UsingBoosted Decision Stumps and Joint Feature Selection and Pruning Algorithms forthe Efficient Classification of Mobile Device Behaviors(使用推升式决策树桩和联合特征选择及修枝算法来对移动设备行为进行高效分类的方法和系统)”的美国临时申请No.61/874,129、于2013年1月2日提交的题为“On-DeviceReal-Time Behavior Analyzer(设备上的实时行为分析器)”的美国临时专利申请No.61/748,217、以及于2013年1月2日提交的题为“Architecture forClient-Cloud Behavior Analyzer(用于客户端-云行为分析器的架构)”的美国临时专利申请No.61/748,220的优先权权益,以上所有申请的全部内容通过援引纳入于此。
背景
蜂窝和无线通信技术在过去数年已见证爆发式增长。此增长已被更好的通信、硬件、更大的网络、以及更可靠的协议推动。结果,无线服务提供方现在能够向他们的消费者提供空前程度的对信息、资源、和通信的访问。
为了跟上这些服务增强,移动电子设备(例如,蜂窝电话、平板设备、膝上型计算机等)已变得比以往任何时候都更强大且更复杂。这种复杂性为恶意软件、软件冲突、硬件故障、以及其他类似差错或现象造成了负面影响移动设备的长期和持续性能以及功率利用水平的新机会。相应地,标识并纠正可能负面地影响移动设备的长期和持续性能以及功率利用水平的状况和/或移动设备行为对消费者而言是有益的。
概述
各方面包括在移动设备中生成精简行为分类器模型的方法,其可包括在移动设备的处理器中接收包括有限状态机的完整分类器模型,以及在移动设备中使用该完整分类器模型来生成精简分类器模型。该有限状态机可包括适合转换成或表达为多个推升式决策树桩的信息,且每个推升式决策树桩可包括测试条件和权重值。在一方面,该方法可进一步包括在移动设备中使用该精简分类器模型来将该移动设备的行为分类为良性或非良性的(即,恶意的、使性能降级的、等等)。
在一方面,基于完整分类器模型来生成精简分类器模型可包括:将完整分类器模型中所包括的有限状态机转换成推升式决策树桩列表,以及基于推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型。
在一方面,基于完整分类器模型来生成精简分类器模型可进一步包括:确定为了分类移动设备行为而应当评估而又不消耗该移动设备的过量处理、存储器或能量资源的独特测试条件的数目,通过顺序地遍历该推升式决策树桩列表并将与每个顺序地遍历的推升式决策树桩相关联的测试条件插入测试条件列表直至该测试条件列表可包括所确定数目的独特测试条件来生成该测试条件列表,以及生成精简分类器模型以仅包括测试所生成的测试条件列表中包括的多个测试条件之一的那些推升式决策树桩。
在一方面,该方法可包括在移动设备中使用精简分类器模型通过如下操作来将移动设备的行为分类为良性或非良性:将所收集的行为信息应用于精简分类器模型中的每个推升式决策树桩,计算将所收集的行为信息应用于精简分类器模型中的每个推升式决策树桩的结果的加权平均,以及将该加权平均与阈值作比较。
在一方面,基于完整分类器模型来生成精简分类器模型可包括:将完整分类器模型中所包括的有限状态机转换成推升式决策树桩列表,以及基于推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型族,该精简分类器模型族包括该精简分类器模型以及多个附加精简分类器模型,该多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
在一方面,生成精简分类器模型可包括生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。在一方面,该方法可包括重新计算与在移动设备中基于完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的阈值。在一方面,该方法可包括重新计算与在移动设备中基于完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的权重值。
在一方面,该方法可包括在服务器中通过以下操作来生成完整分类器模型:在服务器中接收关于移动设备行为的信息素材库,以及基于关于移动设备行为的信息素材库来生成有限状态机以包括适合转换成多个推升式决策树桩的数据,以及将有限状态机作为完整分类器模型发送给移动设备。在一方面,该多个测试条件中的每个测试条件与概率值相关联,该概率值标识其相关联的测试条件将使得移动设备能确定移动设备行为是否为良性的可能性,该方法进一步包括:在将有限状态机作为完整分类器模型发送给移动设备之前基于概率值来组织有限状态机中的推升式决策树桩。
进一步的方面包括一种具有处理器的移动计算设备,该处理器配置有处理器可执行指令以执行上述方法的操作。
进一步的方面包括其上存储有处理器可执行软件指令的非瞬态计算机可读存储介质,这些软件指令被配置成使移动设备中的处理器执行上述方法的操作。
进一步的方面包括一种系统,其包括:包括设备处理器的移动设备;以及服务器,其配置有服务器可执行指令以执行操作,这些操作包括:接收关于移动设备行为的信息素材库,基于该信息素材库来生成有限状态机并包括适合转换成多个推升式决策树桩的数据,每个推升式决策树桩包括测试条件和权重值,以及将有限状态机作为完整分类器模型发送给移动设备。在一方面,该设备处理器可配置有处理器可执行指令以用于执行操作,这些操作包括:接收完整分类器模型,在移动设备中基于所接收的完整分类器模型来生成精简分类器模型,以及使用该精简分类器模型来将该移动设备的行为分类为良性或非良性。
在一方面的系统中,该设备处理器可配置有处理器可执行指令以执行操作,以使得基于完整分类器模型来生成精简分类器模型包括:将完整分类器模型中所包括的有限状态机转换成推升式决策树桩列表;确定为了分类移动设备的行为而应当评估而又不消耗该移动设备的过量处理、存储器或能量资源的独特测试条件的数目;通过顺序地遍历推升式决策树桩列表并将与每个顺序地遍历的推升式决策树桩相关联的测试条件插入测试条件列表直至该测试条件列表包括所确定数目的独特测试条件来生成该测试条件列表;以及生成精简分类器模型以包括推升式决策树桩列表中所包括的测试所生成的测试条件列表中所包括的多个测试条件之一的推升式决策树桩。
在一方面的系统中,该设备处理器可配置有处理器可执行指令以执行操作,以使得使用精简分类器模型来分类移动设备的行为包括:将所收集的行为信息应用于该精简分类器模型中的每个推升式决策树桩,计算将所收集的行为信息应用于该精简分类器模型中的每个推升式决策树桩的结果的加权平均,以及将该加权平均与阈值作比较。在一方面的系统中,该设备处理器可配置有处理器可执行指令以执行操作,以使得基于完整分类器模型来生成精简分类器模型包括:将完整分类器模型中所包括的有限状态机转换成推升式决策树桩列表,以及基于推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型族,该精简分类器模型族包括该精简分类器模型以及多个附加精简分类器模型,该多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
在一方面的系统中,该设备处理器可配置有处理器可执行指令以执行操作,以使得基于完整分类器模型来生成精简分类器模型包括:生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。在一方面的系统中,该设备处理器可配置有处理器可执行指令以用于执行操作,这些操作进一步包括:重新计算与该多个精简分类器模型中的推升式决策树桩相关联的阈值和权重值。
在一方面的系统中,服务器可配置有服务器可执行指令以用于执行操作,以使得该多个测试条件中的每个测试条件与概率值相关联,该概率值标识其相关联的测试条件将使得移动设备能确定移动设备行为是否为良性的可能性。在一方面的系统中,服务器可配置有服务器可执行指令以用于执行操作,这些操作进一步包括在将有限状态机作为完整分类器模型发送给移动设备之前基于概率值来组织有限状态机中的推升式决策树桩。
附图简述
纳入本文且构成本说明书一部分的附图解说了本发明的示例性方面,并与以上给出的一般描述和下面给出的详细描述一起用来解释本发明的特征。
图1是解说适合与各种方面联用的示例电信系统的网络组件的通信系统框图。
图2是解说一方面的移动设备中被配置成确定特定移动设备行为是恶意的、使性能降级的、可疑的、还是良性的示例逻辑组件和信息流的框图。
图3是解说包括网络服务器的一方面的系统中的示例组件和信息流的框图,该网络服务器被配置成与移动设备协作以确定特定移动设备行为是恶意的、使性能降级的、可疑的、还是良性的。
图4是解说包括移动设备的一方面的系统中的示例组件和信息流的框图,该移动设备被配置成从完整分类器模型生成目标定向的且精简的分类器模型而无需重新训练数据、行为向量或分类器模型。
图5A是解说在移动设备中生成精简分类器模型的一方面的移动设备方法的过程流图,该精简分类器模型包括从网络服务器接收到的完整分类器模型中所包括的特征和数据点的子集。
图5B是解说在移动设备中本地生成精简分类器模型的另一方面的移动设备方法的过程流图。
图5C是解说使用本地生成的精简分类器模型来分类移动设备的行为的一方面的移动设备方法的过程流图。
图5D是解说在移动设备中生成精简分类器模型的又一方面的移动设备方法的过程流图。
图6A是解说在网络服务器中生成完整分类器模型的一方面的网络服务器方法的过程流图,该完整分类器模型包括适合由移动设备用于生成目标更集中和更精简的分类器模型的推升式决策树桩。
图6B是解说根据各方面的适合用于生成推升式决策树桩分类器的示例方法的过程流图。
图7是根据一方面的生成包括推升式决策树桩的分类器模型的示例方法的过程流图。
图8是可由一方面的服务器处理器生成并由移动设备处理器用来生成精简分类器模型的示例推升式决策树桩的解说。
图9是解说根据一方面的被配置成执行动态和自适应观测的观测器模块中的示例逻辑组件和信息流的框图。
图10是解说根据另一方面的实现观测器守护进程的计算系统中的逻辑组件和信息流的框图。
图11是解说用于在移动设备上执行自适应观测的一方面方法的过程流图。
图12是适于在一方面中使用的移动设备的组件框图。
图13是适于在一方面中使用的服务器设备的组件框图。
详细描述
将参照附图详细描述各种方面。在可能之处,相同附图标记将贯穿附图用于指代相同或类似部分。对特定示例和实现所作的引用是用于解说性目的,而无意限定本发明或权利要求的范围。
措辞“示例性”在本文中用于表示“用作示例、实例或解说”。本文中描述为“示例性”的任何实现不必然被解释为优于或胜过其他实现。
概言之,各种方面包括用于高效地标识、分类、建模、防止和/或纠正常常使移动设备的性能和/或功率利用水平随时间降级的状况和/或移动设备行为的网络服务器、移动设备、系统和方法。网络服务器可被配置成从中央数据库(例如,“云”)接收关于各种状况、特征、行为和纠正性动作的信息,并使用此信息来生成以能由移动设备快速地转换成一个或多个精简分类器模型的格式或结构来描述大型行为信息素材库的完整分类器模型(即,数据或行为模型)。
在一方面,完整分类器模型可以是大型行为信息素材库的有限状态机描述或表示。在一方面,该有限状态机可包括适于表达为多个推升式决策树桩的信息。例如,该有限状态机可以是可表达为推升式决策树桩族的信息结构,这些推升式决策树桩共同地标识、描述、测试、或评估与确定移动设备行为是否为良性或是否造成该移动设备随时间推移的性能降级相关的所有或许多特征和数据点。网络服务器可随后将完整分类器模型(即,包括有限状态机和/或推升式决策树桩族等的信息结构)发送给移动设备。
移动设备可被配置成接收并使用完整分类器模型来生成精简分类器模型或有不同复杂度水平(或“精简度”)的精简分类器模型族。为完成此举,移动设备可剔选出从网络服务器接收的完整分类器模型(本文称为“完整推升式决策树桩分类器模型”)中所包括的稳健推升式决策树桩族,以生成包括缩减数目的推升式决策树桩和/或评估有限数目的测试条件的精简分类器模型。对完整推升式决策树桩分类器模型的此剔选可通过以下方式来完成:选择一推升式决策树桩;标识依赖于与所选决策树桩相同的移动设备状态、特征、行为或状况(且由此可基于一个确定结果而被应用)的所有其他推升式决策树桩;在精简分类器模型中包括所选推升式决策树桩和所有标识出的依赖于相同移动设备状态、特征、行为或状况的其他推升式决策树桩;以及针对尚未被包括在精简分类器模型中的有限数目个所选推升式决策树桩重复该过程。以此方式,可生成包括依赖于有限数目个不同移动设备状态、特征、行为或状况的所有推升式决策树桩的精简分类器模型。移动设备随后可使用该本地生成的精简分类器模型来快速地分类移动设备行为,而不会消耗其过量处理、存储器或能量资源。
在一方面,移动设备可使用不同数目个不同移动设备状态、特征、行为或状况来数次执行剔选完整推升式决策树桩分类器模型的操作,以生成有不同精简度的精简分类器模型族。用于创建精简分类器模型的不同移动设备状态、特征、行为或状况的数目越大,该模型将越有可能准确地标识恶意或可疑行为,但将消耗越多处理能力。由此,在一方面,移动设备可被配置成例行地应用精简分类器模型族中最精简的分类器模型(即,基于最少数目的不同移动设备状态、特征、行为、或状况的模型)。如果最精简的分类器模型所生成的结果是可疑的,则移动设备处理器可应用评估更多设备状态、特征、行为、或状况的更强的(即,精简度较低的)分类器模型,以确定该行为能被标识为恶意的还是良性的。如果通过应用该精简度较低的分类器模型所生成的结果仍是可疑的,则可应用甚至更强的(精简度甚至更低的)分类器模型,依此类推,直至该行为被确定性地分类为恶意的或良性的。
通过将关于此类行为和纠正性动作的信息存储在中央数据库(例如,“云”)中,并且将移动设备和网络服务器配置成彼此协作以使用存储在中央数据库中的该信息来智能且高效地标识造成每个移动设备的性能和功率利用水平随时间降级的因素,各方面使得移动设备能更准确且高效地标识并响应于该移动设备的限制性能的和不期望的操作状况。
另外,通过在网络服务器中生成包括推升式决策树桩的分类器模型并将这些分类器/模型发送给移动设备,各种方面允许移动设备通过以上述方式剔选出数个推升式决策树桩来在移动设备中快速且高效地生成精简(或目标更集中的)分类器模型,而无需访问训练数据或进一步与网络服务器、中央数据库、或云网络/服务器通信。这显著减少了移动设备对网络的依赖性,并进一步改善了移动设备的性能和功耗特性。
有数种不同的蜂窝和移动通信服务和标准可用或在将来被构想,其皆可实现各方面并受益于各方面。此类服务和标准包括例如第三代伙伴项目(3GPP)、长期演进(LTE)系统、第三代无线移动通信技术(3G)、第四代无线移动通信技术(4G)、全球移动通信系统(GSM)、通用移动电信系统(UMTS)、3GSM、通用分组无线电服务(GPRS)、码分多址(CDMA)系统(例如cdmaOne、CDMA1020TM)、增强数据率GSM演进(EDGE)、高级移动电话系统(AMPS)、数字AMPS(IS-136/TDMA)、演进数据优化(EV-DO)、数字增强型无绳电信(DECT)、微波接入全球互通(WiMAX)、无线局域网(WLAN)、Wi-Fi受保护接入I&II(WPA、WPA2)、以及综合数字增强网络(iden)。这些技术中的每一者涉及例如语音、数据、信令、和/或内容消息的传送和接收。应理解,对与个体电信标准或技术相关的术语和/或技术细节的任何引述是仅用于解说目的的,且并不意在将权利要求的范围限定于特定通信系统或技术,除非权利要求语言中有具体陈述。
本文可互换地使用术语“移动计算设备”和“移动设备”来指代以下任一者或全部:蜂窝电话、智能手机、个人或移动多媒体播放器、个人数据助理(PDA)、膝上型计算机、平板计算机、智能本、超级本、掌上计算机、无线电子邮件接收器、启用因特网的多媒体蜂窝电话、无线游戏控制器,以及包括存储器、可编程处理器(对其而言性能是重要的)并且使用电池电源工作以使得功率节省方法有益处的类似个人电子设备。虽然各种方面对于具有有限资源并且使用电池工作的移动计算设备(诸如智能手机)特别有用,但这些方面在包括处理器并执行应用程序的任何电子设备中都普遍有用。
一般而言,移动设备的性能和功率效率随时间而降级。最近,防病毒公司(例如,McAfee、Symantec等)已开始营销旨在减缓这种降级的移动防病毒、防火墙及加密产品。然而,许多这些解决方案依赖于在移动设备上周期性地执行计算密集型扫描引擎,其可消耗移动设备的许多处理和电池资源、使移动设备在延长时段里变慢或无用、和/或以其他形式使用户体验降级。另外,这些解决方案通常限于检测已知病毒及恶意软件,且并不解决常常组合起来造成移动设备随时间降级的多个复杂因素和/或交互(例如,当性能降级不是由病毒或恶意软件引起时)。出于这些及其他原因,现有防病毒、防火墙及加密产品并不提供胜任于标识可造成移动设备随时间降级的众多因素、防止移动设备降级、或高效地使老化中的移动设备复原至其初始状况的解决方案。
存在用于通过使用机器学习技术或建模在计算设备上执行的进程或应用程序的行为来检测恶意软件的各种其他解决方案。然而,这些解决方案中的许多解决方案并不适合用在移动设备上,因为它们要求评估非常大的数据素材库、被限于评估个体应用程序或进程、或者要求在移动设备中执行计算密集型进程。如此,在移动设备中实现或执行此类解决方案可能对移动设备的响应性、性能、或功耗特性具有显著的负面影响和/或用户可感知的影响。出于这些及其他原因,现有的建模和机器学习解决方案不是非常适合用在现代移动设备的复杂但资源受约束的系统中。
例如,现有的基于机器学习的解决方案可包括将计算设备配置成使用训练数据素材库来推导取特征向量作为输入的模型。然而,此类解决方案并不生成包括适合转换成或表达为多个推升式决策树桩(每个推升式决策树桩包括测试条件和权重值)的有限状态机(或其他类似信息结构)的完整分类器模型(或分类器模型族)。至少出于此原因,此类解决方案不能被移动设备处理器用于快速且高效地生成包括可被用于快速且高效地标识、分析和/或分类移动设备行为而不会对移动设备的响应性或性能或功耗特性具有显著的、负面的、或用户可感知的影响的、目标集中的推升式决策树桩集合的精简分类器模型。
移动设备是具有相对有限的处理、存储器和能量资源的资源受约束系统。现代移动设备也是复杂系统,并且往往不可能评估所有可能是恶意的或因其他原因造成移动设备的性能降级的各种数据流、数据操作(读、写、数据编码、数据传输等)、进程、组件、行为、或因素(或其组合)。出于这些及其他原因,要由用户、操作系统、和/或应用程序(例如,防病毒软件等)来准确且高效地标识问题的源和/或提供对所标识的问题的恰当补救措施越来越困难。结果,移动设备用户当前几乎没有多少用于防止移动设备的性能和功率利用水平随时间降级的补救措施。
各种方面包括用于高效地标识、分类、建模、防止和/或纠正常常使移动设备的性能和/或功率利用水平随时间降级的状况和/或移动设备行为的网络服务器、移动设备、系统和方法。
在一方面,移动设备的观测器进程、守护进程、模块或子系统(本文统称为“模块”)可置备或协调移动设备系统的各种层级处的各种API、寄存器、计数器或其他组件(本文统称为“所置备组件”)。观测器模块可通过收集来自所置备组件的行为信息来持续地(或几乎持续地)监视移动设备行为。移动设备还可包括分析器模块,并且观测器模块可将所收集的行为信息(例如,经由存储器写操作、函数调用等)传达给移动设备的分析器模块。分类器模块可接收并使用该行为信息来生成行为向量,基于行为向量生成空间和/或时间相关,并使用此信息来确定特定移动设备行为、子系统、软件应用、或进程是良性的、可疑的、恶意的、还是使性能降级的。
分析器模块可被配置成执行实时行为分析操作,这可包括对所收集的行为信息执行、运行和/或应用数据、算法、分类器或行为模型(本文统称为“分类器模型”)以确定移动设备行为是良性的还是非良性的(例如,恶意的或使性能降级的)。每一分类器模型可以是包括可由移动设备处理器用来评估移动设备行为的具体方面的信息的行为模型。分类器模型可被预先安装在移动设备上、被下载、从网络服务器接收、在移动设备中生成,或其任何组合。可通过使用机器学习及其他类似技术来生成分类器模型。
每一分类器模型可被分类为完整分类器模型或精简分类器模型。完整分类器模型可以是因变于可包括数千特征和数十亿条目的大型训练数据集来生成的稳健数据模型。精简分类器模型可以是从仅包括与确定特定移动设备行为是良性的还是非良性的(例如,恶意的或使性能降级的)最相关的特征/条目的缩减数据集来生成的目标更集中的数据模型。
如上文所提及的,可存在数千特征/因素和数十亿数据点需要分析以正当地标识移动设备降级的原因或源。因此,分析器模块所使用的每个分类器模型必需针对非常大量的特征、因素和数据点被训练,以使得移动设备能够关于特定移动设备行为是良性的还是非良性的(例如,恶意的或使性能降级的)作出准确判定。但是,由于移动设备是资源受约束系统,因此往往不可能使分析器模块评估所有这些特征、因素和数据点。因此,重要的是要使分析器模块应用目标集中于评估在分类移动设备行为时原本将要求分析的所有特征、因素和数据点的目标定向子集的精简分类器模型。
各种方面包括移动设备和网络服务器,它们配置成彼此协作以智能且高效地标识与确定移动设备行为是良性的还是非良性的(例如,恶意的或使性能降级的)最相关的特征、因素和数据点。通过在网络服务器中生成包括推升式决策树桩的分类器模型并将这些分类器/模型发送给移动设备,各种方面允许移动设备快速且高效地在该移动设备中生成精简分类器模型。
在各种方面,网络服务器可被配置成从云服务/网络接收关于移动设备行为和状态、特征以及在那些行为期间或表征那些行为的状况的大量信息。此信息可以是非常大的移动设备行为向量云素材库的形式。网络服务器可使用此信息来生成准确地描述非常大的行为向量云素材库的完整分类器模型(即,稳健数据/行为模型)。网络服务器可生成完整分类器模型以包括可造成数个不同移动设备中的任一者随时间降级的所有或绝大多数特征、数据点和/或因素。
在一方面,网络服务器可生成完整分类器模型以包括有限状态机表达或表示(诸如,推升式决策树桩或推升式决策树桩族)。此有限状态机表达或表示可通过在移动设备处理器处应用剔选算法而被快速且高效地剔选、修改或转换成适于在移动设备中使用或执行的精简分类器模型。该有限状态机表达或表示可以是包括测试条件、状态信息、状态转变规则及其他类似信息的信息结构。在一方面,有限状态机表达或表示可以是包括大型或稳健推升式决策树桩族的信息结构,其中每一推升式决策树桩评估或测试移动设备行为的状况、特征、因素或方面。
移动设备可被配置成从网络服务器接收完整分类器模型,并使用接收到的完整分类器模型来在移动设备本地生成精简分类器模型(即,数据/行为模型)。移动设备可通过将接收到的完整分类器模型中所包括的推升式决策树桩集合剔选成标识、测试、评估和/或依赖于缩减的或有限数目个不同移动设备状态、特征、行为或状况的推升式决策树桩子集来生成这些本地精简分类器模型。对完整推升式决策树桩集合的此剔选可通过以下方式来完成:选择一推升式决策树桩;标识依赖于与所选决策树桩相同的移动设备状态、特征、行为或状况(且由此能基于一个确定结果而被应用)的所有其他推升式决策树桩;在精简分类器模型中包括所选推升式决策树桩和所有标识出的依赖于相同移动设备状态、特征、行为或状况的其他推升式决策树桩;以及针对尚未被包括在精简分类器模型中的缩减/有限数目个所选推升式决策树桩重复该过程。通过使用被测试的不同数目的移动设备状态、特征、行为或状况来重复该过程,可生成具有由被评估的数个状态、特征、行为或状况确定的不同精简度的精简分类器模型族。另外,这些精简分类器模型中的每一者可测试或评估与另一精简分类器模型相同的一些或全部特征或状况,但是使用不同阈值和/或指派给所评估的测试结果、特征或状况的重要性的不同权重来测试或评估的。因此,生成或重新生成精简分类器模型的过程可包括重新计算与决策树桩相关联的阈值和/或权重。
因为这些精简分类器模型包括必须测试的状态、特征、行为或状况的缩减子集(与完整分类器模型相比),所以观测器和/或分析器模块可使用它们来快速且准确地确定移动设备行为是良性的还是造成移动设备性能降级的,而不消耗移动设备的过量处理、存储器或能量资源。如上所述,该精简分类器模型族中的最精简模型(即,基于最少数目个测试条件的精简分类器模型)可例行地被应用,直至遇到该模型不能将其分类为良性或恶意(且因此被该模型分类为可疑)的行为,此时可应用更稳健(即,精简度较低)的精简分类器模型以尝试将该行为分类为良性的或恶意的。所生成的精简分类器模型族内的越加稳健的精简分类器模型的应用可被应用,直至达成对该行为的确定性分类。以此方式,观测器和/或分析器模块可通过限制将最完整但资源密集的精简分类器模型用于需要稳健分类器模型以确定性地分类一行为的那些情形来在效率与准确度之间达成平衡。
在各种方面,移动设备可被配置成通过以下方式生成一个或多个精简分类器模型:将有限状态机表示/表达转换成推升式决策树桩,将完整分类器模型中所包括的完整推升式决策树桩集合剔选为依赖于有限数目个不同移动设备状态、特征、行为或状况的一个或数个推升式决策树桩子集,以及使用这一个或数个推升式决策树桩子集来智能地监视、分析和/或分类移动设备行为。对推升式决策树桩的使用允许观测器和/或分析器模块生成并应用精简数据模型,而无需与云或网络通信以重新训练数据,这显著减少了移动设备对网络服务器和云的依赖。这消除了移动设备与网络服务器之间的反馈通信,此举进一步改善了移动设备的性能和功耗特性。
推升式决策树桩是正好具有一个节点(且由此具有一个测试问题或测试条件)和权重值的一级决策树,且由此非常适合用在数据/行为的二元分类中。即,向推升式决策树桩应用行为向量得到二元答案(例如,是或否)。例如,如果由推升式决策树桩测试的问题/条件是“短消息服务(SMS)传输的频度是否小于x个/分钟”,则向该推升式决策树桩应用值“3”将得到答案“是”(对于“小于3个”的SMS传输)或者答案“否”(对于“3个或更多”的SMS传输)。
推升式决策树桩是高效的,因为它们是非常简单且原始的(且由此不需要显著的处理资源)。推升式决策树桩也是非常可并行化的,且由此许多树桩可并行地/同时地被应用或测试(例如,被移动设备中的多个核或处理器应用或测试)。
如下所述,网络服务器(或另一计算设备)可从另一更复杂的移动设备行为模型(诸如推升式决策树模型)生成推升式决策树桩型完整分类器模型。此类复杂模型可将深奥分类系统中表征移动设备行为的设备状态、操作和被监视节点之间的完整(或几乎完整)集合的交互进行相关。如上所提及的,服务器或另一计算设备可通过应用机器学习技术生成描述从大量移动设备收集的移动设备行为向量云素材库的模型来生成完整的复杂分类器模型。作为示例,推升式决策树分类器模型可跟踪通过可测试条件的决策节点的数百条路径以得出对当前移动设备行为为恶意还是良性的确定。此类复杂模型可在服务器中使用数种已知的学习和相关(correlation)建模技术来生成。虽然此类复杂模型可通过从来自数百移动设备的数据进行学习而在准确地识别恶意行为方面变得非常有效,但将它们应用于特定移动设备的配置和行为可能要求显著的处理,尤其是在该模型涉及复杂的多级决策树时。由于移动设备通常是资源受限的,因此使用此类模型可能影响设备性能和电池寿命。
为了交付更有利于由移动设备使用的稳健分类器模型,服务器(例如,云服务器或网络服务器)或另一计算设备(例如,移动设备或将耦合至该移动设备的计算机)可将复杂分类器模型变换成大型推升式决策树桩模型。决策树桩中涉及的更简单确定和在并行进程中应用此类分类器模型的能力可使得移动设备能更好地受益于由网络服务器执行的分析。而且,如以下讨论的,推升式决策树桩完整分类器模型可由移动设备用来使用以下描述的方面方法生成精简分类器模型。
在一方面,生成推升式决策树桩完整分类器模型的服务器或另一计算设备可通过遵循以下更详细描述的一方面过程来这样做。概言之,服务器或另一计算设备可选择完整的复杂分类器模型(例如,推升式决策树模型)内的节点并应用该模型以确定该节点预示恶意行为的时间百分比。换言之,服务器或另一计算设备可选择该节点的一个分支并遵循连接至该分支的所有后续节点和路径以确定该分支导致确定恶意行为的时间分数。在一方面,该时间分数可被用于计算该节点的“权重”因素。例如,具有其后续路径有80%的时间得到恶意行为结论的一个分支的决策节点可与加权因子0.8相关联,从而指示该单个决策节点是潜在恶意的(且由此可疑的)行为的可靠指示符。作为另一示例,复杂分类器模型中其各分支可等同地导致恶意行为结论的决策节点在识别恶意行为方面几乎将不会提供辅助,且由此可被给予非常低的加权因子或优先级。
在跟踪来自每个决策节点的后果的过程中,如果决策节点不是二元的(即,“是”或“否”),则服务器或另一计算设备可向每个节点应用各种各样的测试条件。例如,复杂的分类器模型可容适一值范围(例如,每分钟传送的SMS消息的数目),其最终结论取决于该值。然而,值范围与决策树桩的二元本质不一致。因此,服务器或另一计算设备可为此类节点开发有利于由值表征的状况的一系列二元决策或测试。例如,服务器或另一计算设备可通过复杂分类器模型来生成并测试数个阈值测试或条件,诸如“大于1”、“大于10”和“大于100”。此类阈值测试可由服务器基于它从研究该复杂模型所能达到的结论来标识或选择。每个此类基于阈值的测试可随后被当作单个决策树桩,其可被测试以确定其预测值并由此确定其推升因子。
通过贯穿复杂分类器模型中的所有决策节点地遵循此过程,服务器或另一计算设备能将复杂的多层决策模型变换成大量推升式决策树桩的单层模型。服务器或另一计算设备可随后通过移除其值低于阈值的决策树桩以便移除提供非常少的预测或分类效益的测试条件(例如,“上电了吗?”)来修剪该模型。
虽然在完整分类器模型中结果得到的此类树桩的数目可能是很大的,但树桩的二元本质可促成其应用,尤其是在资源受约束的处理器中。在一方面,服务器或另一计算设备可将推升式决策树桩完整分类器模型提供给移动设备以供其使用。
生成大型推升式决策树桩分类器模型的过程可由云服务器来生成,该云服务器分析来自许多移动设备的输入并生成完整的复杂行为分类器模型,因为此类服务器将具有完成该分析的处理资源和处理时间。然而,如上所提及,各方面方法也可由另一计算设备(甚至包括移动设备)来执行。在这一方面,服务器(例如,云或网络服务器)可将完整的复杂行为分类器模型递送给该另一计算设备,该另一计算设备可随后如以上概述且以下更详细描述地处理该模型以将其变换成推升式决策树桩模型。例如,被用户耦合至他/她的移动设备的个人计算机可下载完整的复杂行为分类器模型并随后执行各方面方法以生成使得对移动设备可用(例如,通过有线或无线数据链路)的大型推升式决策树桩模型。作为另一示例,移动设备可下载完整的复杂行为分类器模型并随后执行各方面方法(诸如在设备正被充电且未在使用中的深夜时分期间)以生成大型推升式决策树桩模型,移动设备将其存储在存储器中。由于由服务器或另一计算设备所实现的过程是非常类似的,因此各方面方法在以下更详细地描述为由服务器执行。然而,该描述是用于示例目的且无意将各方面方法限定于在服务器上执行,除非在权利要求中明确如此陈述。
在进一步方面,移动设备可被配置成使用接收到的或自己生成的大型推升式决策树桩分类器模型通过选择在决策树桩中测试的有限数目个因素来构建精简分类器模型,而无需访问训练数据且无需消耗移动设备的过量处理、存储器或能量资源。分析器模块可使用所选推升式决策树桩的精简分类器模型来标识恶意软件并将设备行为分类为恶意的或良性的。如以下更全面地描述的,移动设备可通过如下操作来生成精简分类器模型:确定将测试的要监视特征的数目(例如,15个),选择第一特征并在精简分类器中纳入包括对该特征的测试的所有推升式决策树桩(例如,具有基于从被监视的特征获得的值的阈值测试的所有树桩),以及重复此过程直至精简分类器模型中针对的特征数目为所确定的数目。值得注意的是,此类精简分类器模型中的推升式决策树桩的数目可显著大于特征数目。
在一方面,移动设备可被配置成接收包括适合转换成多个推升式决策树桩的有限状态机的完整分类器模型。移动设备可基于该完整分类器模型来生成精简分类器模型,这可通过将完整分类器模型的有限状态机转换成推升式决策树桩并将这些推升式决策树桩用作精简分类器模型来完成。
各个方面可实现在各种各样的通信系统内,诸如图1中解说的示例通信系统100。典型的蜂窝电话网络104包括耦合到网络操作中心108的多个蜂窝基站106,网络操作中心108操作用于诸如经由电话陆线(例如,POTS网络,未示出)和因特网110来连接移动设备102(例如,蜂窝电话、膝上型计算机、平板设备等)与其他网络目的地之间的语音呼叫和数据。移动设备102与电话网络104之间的通信可经由双向无线通信链路112(诸如4G、3G、CDMA、TDMA、LTE和/或其他蜂窝电话通信技术)来实现。电话网络104还可包括耦合至网络操作中心108或者在该网络操作中心108内的一个或多个服务器114,该(些)服务器114提供到因特网110的连接。
通信系统100可进一步包括连接至电话网络104和因特网110的网络服务器116。网络服务器116与电话网络104之间的连接可通过因特网110或通过专用网络(如虚箭头所解说的)。网络服务器116也可实现为云服务提供方网络118的网络基础设施内的服务器。网络服务器116与移动设备102之间的通信可通过电话网络104、因特网110、专用网络(未图解)、或其任何组合来达成。
网络服务器116可将精简数据/行为模型发送给移动设备102,移动设备102可接收并使用精简数据/行为模型来标识可疑的或使性能降级的移动设备行为、软件应用、进程等。网络服务器116还可将分类和建模信息发送给移动设备102以替换、更新、创建和/或维护移动设备数据/行为模型。
移动设备102还可收集移动设备102中的行为、状态、分类、建模、成功率、和/或统计信息,并将所收集的信息发送给网络服务器116(例如,经由电话网络104)进行分析。网络服务器116可使用从移动设备102接收到的信息来更新或完善精简数据/行为模型或分类/建模信息以包括进一步目标定向的和/或缩减的特征子集。
在一方面,移动设备102可被配置成使用所收集的行为、状态、分类、建模、成功率、和/或统计信息来在移动设备102中生成、更新或完善精简分类器模型(或数据/行为模型),该模型包括进一步目标定向的和/或缩减的特征子集。这减少了移动设备与网络服务器116之间的反馈通信量,并改善了移动设备102的性能和功耗特性。
图2解说了一方面的移动设备102中被配置成确定特定移动设备行为、软件应用、或进程是恶意的/使性能降级的、可疑的、还是良性的示例逻辑组件和信息流。在图2所解说的示例中,移动设备102包括行为观测器模块202、行为分析器模块204、外部上下文信息模块206、分类器模块208、以及致动器模块210。在一方面,分类器模块208可实现为行为分析器模块204的一部分。在一方面,行为分析器模块204可被配置成生成一个或多个分类器模块208,每个分类器模块208可包括一个或多个分类器。
模块202-210中的每一者可在软件、硬件、或其任何组合中实现。在各种方面,模块202-210可实现在操作系统的各部分内(例如,在内核内、在内核空间中、在用户空间中等)、在单独的程序或应用内、在专门的硬件缓冲器或处理器中,或其任何组合。在一方面,模块202-210中的一者或多者可实现为在移动设备102的一个或多个处理器上执行的软件指令。
行为观测器模块202可被配置成置备或协调该移动设备的各个层级/模块处的应用编程接口(API),并经由所置备的API来监视/观测各个层级/模块处的移动设备操作和事件(例如,系统事件、状态改变等),收集与所观测到的操作/事件有关的信息,智能地过滤所收集的信息,基于经过滤的信息生成一个或多个观测,以及将所生成的观测存储在存储器中(例如,存储在日志文件中等)和/或(例如,经由存储器写入、函数调用等)将所生成的观测发送给行为分析器模块204。
行为观测器模块202可通过收集与应用框架或运行时库中的库应用编程接口(API)调用、系统调用API、文件系统和联网子系统操作、设备(包括传感器设备)状态改变、和其他类似事件相关的信息来监视/观测移动设备操作和事件。行为观测器模块202还可监视文件系统活动,文件系统活动可包括搜索文件名、文件访问类别(个人信息或正常数据文件)、创建或删除文件(例如,类型exe、zip等)、文件读取/写入/寻求操作、改变文件许可等。
行为观测器模块202还可监视数据网络活动,数据网络活动可包括连接类型、协议、端口号、该设备连接至的服务器/客户端、连接数量、通信量或通信频度等。行为观测器模块202可监视电话网活动,这可包括监视发出的、收到的、或截取的呼叫或消息(例如,SMS等)的类型和数目(例如,拨出的收费呼叫的数目)。
行为观测器模块202还可监视系统资源使用,这可包括监视分叉数目、存储器访问操作、打开的文件数目等。行为观测器模块202可监视移动设备的状态,这可包括监视各种因素,诸如显示器是开的还是关的、设备是锁定的还是解锁的、剩余电池量、相机状态等。行为观测器模块202还可例如通过监视对关键性服务(浏览器、合约提供方等)的意图、进程间通信(IPC)程度、弹出窗口等来监视进程间通信。
行为观测器模块202还可监视/观测驱动器统计和/或一个或多个硬件组件的状态,硬件组件可包括相机、传感器、电子显示器、WiFi通信组件、数据控制器、存储器控制器、系统控制器、访问端口、定时器、外围设备、无线通信组件、外部存储器芯片、电压调节器、振荡器、锁相环、外围桥接器、以及用于支持在移动计算设备上运行的处理器和客户端的其他类似组件。
行为观测器模块202还可监视/观测标示移动计算设备和/或移动设备子系统的状态或情形的一个或多个硬件计数器。硬件计数器可包括处理器/核中被配置成存储在移动计算设备中发生的硬件相关活动或事件的计数或状态的专用寄存器。
行为观测器模块202还可监视/观测软件应用的动作或操作、从应用下载服务器(例如,应用商店服务器)的软件下载、由软件应用使用的移动设备信息、呼叫信息、文本消息接发信息(例如,发送SMS、阻拦SMS、读取SMS等)、媒体消息接发信息(例如,接收MMS)、用户账户信息、位置信息、相机信息、加速计信息、浏览器信息、基于浏览器的通信的内容、基于语音的通信的内容、短程无线电通信(例如,蓝牙、WiFi等)、基于文本的通信的内容、所记录音频文件的内容、电话本或联系人信息、联系人列表,等等。
行为观测器模块202可监视/观测移动设备的传输或通信,包括包含以下各项的通信:语音邮件(VoiceMailComm)、设备标识符(DeviceIDComm)、用户账户信息(UserAccountComm)、日历信息(CalendarComm)、位置信息(LocationComm)、所记录音频信息(RecordAudioComm)、加速计信息(AccelerometerComm)等等。
行为观测器模块202可监视/观测以下各项的使用以及更新/改变:罗盘信息、移动设备设定、电池寿命、陀螺仪信息、压力传感器、磁力传感器、屏幕活动等。行为观测器模块202可监视/观测向和从软件应用传达的通知(AppNotifications)、应用更新,等等。行为观测器模块202可监视/观测与第一软件应用请求下载和/或安装第二软件应用有关的状况或事件。行为观测器模块202可监视/观测与用户验证有关的状况或事件(诸如,口令输入等)。
行为观测器模块202还可监视/观测在移动设备的多个层级(包括应用层级、无线电层级、和传感器层级)处的状况或事件。应用层级观测可包括经由面部识别软件来观测用户、观测社交流、观测由用户输入的注记、观测与PassBook/Google钱包/Paypal等的使用相关的事件。应用层级观测还可包括观测与虚拟专用网(VPN)的使用相关的事件,以及与同步、语音搜索、语音控制(例如,通过说出一词语来锁定/解锁电话)、语言翻译器、卸载数据以进行计算、视频流送、没有用户活动情况下的相机使用、没有用户活动情况下的话筒使用等相关的事件。
无线电层级观测可包括确定以下任一者或多者的出现、存在或量:在建立无线电通信链路或传送信息之前用户与移动设备的交互,双重/多重订户身份模块(SIM)卡,因特网无线电,移动电话系链,卸载数据以进行计算,设备状态通信,用作游戏控制器或家用控制器,交通工具通信,移动设备同步等。无线电层级观测还可包括监视将无线电(WiFi、WiMax、蓝牙等)用于定位、对等(p2p)通信、同步、交通工具对交通工具通信、和/或机器对机器(m2m)的使用。无线电层级观测可进一步包括监视网络话务使用、统计或简档。
传感器层级观测可包括监视磁体传感器或其他传感器以确定移动设备的使用和/或外部环境。例如,移动设备处理器可被配置成确定电话是否在皮套中(例如,经由配置成感测皮套内的磁体的磁体传感器)或在用户口袋中(例如,经由相机或光传感器所检测到的光量)。检测到移动设备在皮套中可与识别可疑行为有关,例如,因为与在移动设备处于皮套中时发生的被用户活跃使用(例如,拍照或拍视频、发送消息、进行语音呼叫、记录声音等)相关的活动和功能可能是在该设备上执行(例如,以跟踪或窥探用户)的邪恶进程的迹象。
与使用或外部环境有关的传感器层级观测的其他示例可包括:检测近场通信(NFC),从信用卡扫描器、条形码扫描器、或移动标签阅读器收集信息,检测通用串行总线(USB)充电源的存在,检测键盘或辅助设备已被耦合至移动设备,检测移动设备已被耦合至计算设备(例如,经由USB等),检测LED、闪光、闪光灯、或光源是否已被修改或禁用(例如,恶意地禁用紧急情况信令应用等),检测扬声器或话筒已被开启或上电,检测充电或功率事件,检测移动设备正被用作游戏控制器等。传感器层级观测还可包括从医疗或保健传感器或者从扫描用户身体来收集信息,从插入USB/音频插孔的外部传感器收集信息,从感触或触觉传感器(例如,经由振动器接口等)收集信息,收集与移动设备的热状态有关的信息等。
为了将所监视的因素数目缩减至可管理水平,在一方面,行为观测器模块202可通过监视/观测初始行为或因素集来执行粗略观测,该初始行为或因素集为可能造成移动设备降级的所有因素的小子集。在一方面,行为观测器模块202可从网络服务器116和/或在云服务或网络118中的组件接收该初始行为和/或因素集。在一方面,该初始行为/因素集可在从网络服务器116或云服务/网络118接收的数据/行为模型中指定。在一方面,该初始行为/因素集可在缩减特征模型(RFM)中指定。
行为分析器模块204和/或分类器模块208可从行为观测器模块202接收观测,将接收到的信息(即,观测)与从外部上下文信息模块206接收到的上下文信息作比较,并标识与正造成(或很可能造成)设备随时间降级或可以其它形式在该设备上引起问题的收到观测相关联的子系统、进程和/或应用。
在一方面,行为分析器模块204和/或分类器模块208可包括用于利用有限信息集(即,粗略观测)来标识正造成——或很可能造成——设备随时间降级或可以其它形式在设备上引起问题的行为、进程或程序的智能。例如,行为分析器模块204可被配置成分析从各种模块(例如,行为观测器模块202、外部上下文信息模块206等)收集的信息(例如,以观测的形式),学习移动设备的正常操作行为,以及基于比较结果来生成一个或多个行为向量。行为分析器模块204可将所生成的行为向量发送给分类器模块208以供进一步分析。
分类器模块208可接收这些行为向量并将它们与一个或多个行为模块作比较以确定特定移动设备行为、软件应用、或进程是使性能降级的/恶意的、良性的、还是可疑的。
当分类器模块208确定行为、软件应用、或进程是恶意的或使性能降级的时候,分类器模块208可通知致动器模块210,致动器模块210可执行各种动作或操作以纠正被确定为恶意或使性能降级的移动设备行为和/或执行用于治愈、治疗、隔离、或以其他方式修复所标识的问题的操作。
当分类器模块208确定行为、软件应用、或进程是可疑的时候,分类器模块208可通知行为观测器模块202,行为观测器模块202可基于从分类器模块208接收到的信息(例如,实时分析操作的结果)来调整其观测粒度(即,观测移动设备行为的细致程度)和/或改变被观测的行为,生成或收集新的或附加的行为信息,以及将新的/附加的信息发送给行为分析器模块204和/或分类器模块208以供进一步分析/分类。在行为观测器模块202与分类器模块208之间的此类反馈通信使得移动设备102能够递归地增加观测粒度(即,作出更精细或更细致的观测)或改变被观测的特征/行为,直至标识出可疑的或使性能降级的移动设备行为的源、直至达到处理或电池消耗阈值、或直至移动设备处理器确定不能从观测粒度上的进一步增加来标识出可疑的或使性能降级的移动设备行为的源。此类反馈通信还使得移动设备102能够在移动设备本地调整或修改数据/行为模型而不消耗该移动设备的过量处理、存储器或能量资源。
在一方面,行为观测器模块202和行为分析器模块204可个别地或共同地提供对计算系统行为的实时行为分析,以从有限且粗略的观测中标识可疑行为、动态地确定要更细致地观测的行为、以及动态地确定观测所需的细致程度。以此方式,行为观测器模块202使得移动设备102能够高效地标识问题且防止在移动设备上发生该问题,而无需该设备上的大量处理器、存储器或电池资源。
图3和4解说了包括网络服务器116的一方面系统300中的示例组件和信息流,网络服务器116被配置成与云服务/网络118协作以智能且高效地标识移动设备102上主动恶意的或编写得很差的软件应用和/或可疑的或使性能降级的移动设备行为,而不消耗移动设备的过量处理、存储器、或能量资源。在图3所解说的示例中,网络服务器116包括云模块302、模型生成器304模块、以及训练数据模块306。移动设备102包括行为观测器模块202、分类器模块208、以及致动器模块210。在一方面,分类器模块208可被包括在行为分析器模块204(图2中解说的)中或是其一部分。在一方面,模型生成器304模块可以是实时在线分类器。
云模块302可被配置成从云服务/网络118接收大量信息并生成完整或稳健的数据/行为模型,其包括可能造成移动设备随时间降级的所有或绝大多数特征、数据点、和/或因素。
模型生成器304模块可被配置成基于在云模块302中生成的完整模型来生成精简数据/行为模型。在一方面,生成精简数据/行为模型可包括生成一个或多个缩减特征模型(RFM),该(些)RFM包括由云模块302生成的完整模型中所包括的特征和数据点的子集。在一方面,模型生成器304可生成包括初始特征集的精简数据/行为模型(例如,初始缩减特征模型),其包括被确定为具有最高可能性会使得分类器模块208能结论性地确定特定移动设备行为是良性还是恶意/使性能降级的信息。模型生成器304可将所生成的精简模型发送给行为观测器模块202。
行为观测器模块202可基于接收到的模型来监视/观测移动设备行为,生成观测,并将观测发送给分类器模块208。分类器模块208可执行实时分析操作,其可包括将数据/行为模型应用于由行为观测器模块202收集的行为信息以确定移动设备行为是良性的、可疑的、还是恶意的/使性能降级的。在分类器模块208没有充分信息来分类或结论性地确定一移动设备行为是良性的还是恶意的时候,分类器模块208可确定该行为是可疑的。
当分类器模块208确定一设备行为可疑时,分类器模块208可被配置成将其实时分析操作的结果传达给行为观测器模块202。行为观测器模块202可基于从分类器模块208接收的信息(例如,基于实时分析操作的结果)来调整其观测粒度(即,观测移动设备行为的细致程度)和/或改变被观测的行为,生成或收集新的或附加的行为信息,并将新的/附加的信息发送给分类器模块以供进一步分析/分类(例如,以新模型的形式)。以此方式,移动设备102可以递归地增加观测粒度(即,作出更精细或更细致的观测)或改变被观测的特征/行为,直至标识出可疑的或使性能降级的移动设备行为的源、直至达到处理或电池消耗阈值、或直至移动设备处理器确定不能从观测粒度上的进一步增加来标识出可疑的或使性能降级的移动设备行为的源。
移动设备102可将其操作结果和/或与模型的应用相关联的成功率发送给网络服务器116。网络服务器116可基于该结果/成功率来生成训练数据(例如,经由训练数据模块306)以供模型生成器304使用。模型生成器可基于训练数据来生成经更新的模型,并将经更新的模型发送给移动设备102。
在图4中解说的示例中,在移动设备102与网络服务器116之间没有反馈通信。确切而言,移动设备102包括精简模型生成器模块402,其被配置成基于在完整模型生成器404中生成并从网络服务器116接收的完整或更稳健的模型来生成目标集中的/目标定向的行为模型或分类器。即,网络服务器116可被配置成将完整分类器模型发送给移动设备102,并且移动设备102可被配置成基于该完整分类器模型来生成精简分类器模型。这可由于在分类器模型中使用(或包括)推升式决策树桩而在不消耗移动设备的过量处理或电池资源的情况下完成。即,通过在网络服务器116中生成包括推升式决策树桩的分类器模型并将这些分类器/模型发送给移动设备102,各种方面允许精简模型生成器模块402通过剔选完整分类器模型中所包括的数个推升式决策树桩来在移动设备102中快速且高效地生成精简(或目标更集中的)分类器模型,而无需访问训练数据或进一步与网络服务器116或云网络/服务器118通信。这显著减少了移动设备对网络通信的依赖型,并进一步改善了移动设备102的性能和功耗特性。
图5A解说了在移动设备中生成精简的或目标集中的分类器/行为模型(例如,在模型生成器模块402中生成的模型等)的一方面方法500。方法500可由移动设备中的处理核来执行。
在方法500的框502,处理核可接收完整分类器模型,该完整分类器模型是或包括有限状态机、推升式决策树桩列表或其他类似的信息结构。在一方面,该完整分类器模型包括有限状态机,该有限状态机包括适于表达多个推升式决策树桩的信息和/或包括适于由移动设备转换成多个推升式决策树桩的信息。在一方面,该有限状态机可以是(或者可包括)经排序的或区分优先级的推升式决策树桩列表。每个推升式决策树桩可包括测试条件和权重值。
如以上所讨论的,推升式决策树桩是正好具有一个节点(且由此具有一个测试问题或测试条件)和权重值的一级决策树,且由此非常适合用在数据/行为的二元分类中。这意味着向推升式决策树桩应用特征向量或行为向量得到二元答案(例如,是或否)。例如,如果由推升式决策树桩测试的问题/条件是“SMS传输的频度是否小于x个/分钟”,则向该推升式决策树桩应用值“3”将得到答案“是”(对于“小于3个”的SMS传输)或者答案“否”(对于“3个或更多”的SMS传输)。
回到图5A,在方法500的框504,处理核可确定为了准确地将移动设备行为分类为恶意的或良性的而应当被评估而又不消耗移动设备的过量处理、存储器或能量资源的独特测试条件的数目。这可包括确定移动设备中可用的处理、存储器和/或能量资源量,为测试一条件所需的移动设备的处理、存储器或能量资源量,确定与将通过测试该条件来在移动设备中分析或评估的行为或状况相关联的优先级和/或复杂度,以及选择/确定独特测试条件的数目,以便在移动设备的可用处理、存储器或能量资源的消耗、从测试该条件将达成的行为分类的准确度、以及该条件所测试的行为的重要性或优先级之间达成平衡或折衷。
在框506,处理核可从开头遍历推升式决策树桩列表以用所确定数目的独特测试条件来填充所选测试条件列表。在一方面,处理核还可确定每个所选测试条件的绝对或相对优先级值,并将该绝对或相对优先级值与其对应的测试条件相关联地存储在所选测试条件列表中。
在框508,处理核可生成精简分类器模型,该精简分类器模型包括完整分类器模型中所包括的测试所选测试条件之一的所有推升式决策树桩。在一方面,处理核可生成精简分类器模型以按重要性或优先级值的次序包括或表达推升式决策树桩。
在可选框510,可增大独特测试条件的数目以通过重复在框506中针对更大数目的测试条件遍历推升式决策树桩列表以及在框508中生成另一精简分类器模型的操作来生成另一更稳健的(即,精简度较低的)精简分类器模型。可重复这些操作以生成精简分类器模型族。
图5B解说了在移动设备中生成数据模型的另一方面的方法511。方法511可由移动设备中的处理核来执行。在方法511的框512,处理核可接收包括有限状态机的完整分类器模型。有限状态机可以是包括适合转换成多个推升式决策树桩的信息的信息结构。在框514,处理核可将完整分类器模型中所包括的有限状态机转换成包括测试条件和权重值的推升式决策树桩。
在一方面,处理核还可计算或确定从框512中的有限状态机生成的每个推升式决策树桩的优先级值。处理核可确定推升式决策树桩的优先级以平衡在移动设备的处理、存储器或能量资源的消耗、行为分类的准确度等之间的折衷。处理核还可基于推升式决策树桩相关联的权重值、测试条件对于准确地分类行为的相对或预测重要性等来确定推升式决策树桩的优先级。
同样在框512,处理核可生成根据从有限状态机生成的推升式决策树桩的优先级和/或按照其重要性次序来包括、引用、标识和/或组织这些推升式决策树桩的第一列表(或其他信息结构)。例如,处理核可将第一列表生成为包括具有最高优先级的树桩作为第一项目、继之以具有次最高优先级值的树桩、以此类推等等的经排序列表。重要性次序还可计及从云素材库搜集的信息、以及其上正执行剔选算法的设备特有的信息。
在框516,处理核可计算或确定在应用精简分类器模型时应当评估的独特测试条件(即,在推升式决策树桩中可测试的移动设备状态、特征、行为、或状况)的数目。计算或确定此独特测试条件数目可涉及在应用该模型所需的移动设备的处理、存储器或能量资源的消耗与该精简分类器模型将达成的行为分类的准确度之间达成平衡或折衷。此类确定可包括确定移动设备中可用的处理、存储器和/或能量资源量,确定与要分析的行为相关联的优先级和/或复杂度,以及平衡可用资源与该行为的优先级和/或复杂度。
在框518,处理核可通过顺序地遍历第一推升式决策树桩列表并将与每个所遍历到的推升式决策树桩相关联的测试条件值插入第二列表来生成第二列表。处理核可继续遍历第一列表并将值插入第二列表,直至第二列表的长度等于所确定的独特测试条件数目或者直至第二列表包括了所有所确定数目的独特测试条件。
在框520,处理核可基于第一列表中所包括的推升式决策树桩来生成精简分类器模型。在一方面,处理核可生成精简分类器模型以仅包括测试第二列表(即,框518中生成的测试条件列表)中所包括的测试条件之一的那些推升式决策树桩。
在可选框522,可增大独特测试条件的数目以通过重复在框518中针对更大数目的测试条件遍历推升式决策树桩列表以及在框520中生成另一精简分类器模型的操作来生成另一更稳健的(即,精简度较低的)精简分类器模型。可重复这些操作以生成精简分类器模型族。
图5C解说了使用精简分类器模型来分类移动设备的行为的一方面方法524。方法524可由移动设备中的处理核来执行。
在方法524的框526,处理核可执行观测以从在移动设备系统的各种层级处置备的各种组件收集行为信息。在一方面,这可经由以上参照图2讨论的行为观测器模块202来完成。在框528,处理核可生成表征观测、所收集的行为信息、和/或移动设备行为的行为向量。同样在框528,处理核可使用从网络服务器接收到的完整分类器模型来生成精简分类器模型或有不同复杂度水平(或“精简度”)的精简分类器模型族。为完成此举,处理核可剔选完整分类器模型中所包括的推升式决策树桩族以生成包括缩减数目的推升式决策树桩和/或评估有限数目的测试条件的精简分类器模型。
在框529,处理核可选择精简分类器模型族中尚未被移动设备评估或应用的最精简的分类器(即,基于最少数目的不同移动设备状态、特征、行为、或状况的模型)。在一方面,这可通过处理核选择经排序分类器模型列表中的首个分类器模型来完成。
在框530,处理核可将所收集的行为信息或行为向量应用于所选精简分类器模型中的每个推升式决策树桩。由于推升式决策树桩是二元决策并且精简分类器模型是通过选择基于相同测试条件的许多二元决策来生成的,因此将行为向量应用于精简分类器模型中的推升式决策树桩的过程可在并行操作中执行。替换地,在框530中应用的行为向量可被截短或过滤以仅包括在精简分类器模型中所包括的有限数目的测试条件参数,由此进一步减少应用该模型时的计算努力。
在框532,处理核可计算或确定将所收集的行为信息应用于精简分类器模型中的每个推升式决策树桩的结果的加权平均。在框534,处理核可将计算出的加权平均与阈值作比较。在确定框535,处理核可确定此比较的结果和/或通过应用所选精简分类器模型生成的结果是否是可疑的。例如,处理核可确定这些结果是否可被用于以高置信度将行为分类为恶意的或良性的,并且若否,则将该行为当作是可疑的。
如果处理核确定这些结果是可疑的(例如,确定框535=“是”),则处理核可重复框529-534中的操作以选择并应用评估更多设备状态、特征、行为、或状况的更强的(即,精简度较低的)分类器模型,直至该行为以高置信度被分类为恶意的或良性的。如果处理核确定这些结果不是可疑的(例如,确定框535=“否”),诸如通过确定该行为能以高置信度被分类为恶意的或良性的,则在框536,则处理核可使用在框534中生成的比较结果来将移动设备的行为分类为良性的或潜在恶意的。
在图5D中解说的替换方面方法540中,以上参照框518和520描述的操作可通过如下步骤来完成:顺序地选择尚未在精简分类器模型中的推升式决策树桩;标识依赖于与所选决策树桩相同的移动设备状态、特征、行为或状况(且由此能基于一个确定结果而被应用)的所有其他推升式决策树桩;在精简分类器模型中包括所选推升式决策树桩和所有标识出的依赖于相同移动设备状态、特征、行为或状况的其他推升式决策树桩;以及重复该过程达等于所确定的测试条件数目的次数。由于每次都将依赖于与所选推升式决策树桩相同的测试条件的所有推升式决策树桩添加到精简分类器模型,因此限制执行此过程的次数将限制精简分类器模型中所包括的测试条件的数目。
参照图5D,在框542,处理核可计算或确定在精简分类器模型中应当评估的独特测试条件(即,在推升式决策树桩中可测试的移动设备状态、特征、行为、或状况)的数目(N)。计算或确定此独特测试条件数目可涉及在应用该模型所需的移动设备的处理、存储器或能量资源的消耗与该精简分类器模型将达成的行为分类的准确度之间达成平衡或折衷。此类确定可包括确定移动设备中可用的处理、存储器和/或能量资源量,确定与要分析的行为相关联的优先级和/或复杂度,以及平衡可用资源与该行为的优先级和/或复杂度。
在框544,处理核可将循环计数变量的值设为等于零(0),或以其他方式发起将被执行所确定的数目N次的循环。在框546,处理核可选择完整推升式决策树桩集合中所包括的或从其生成的、且未被包括在精简分类器模型列表中的推升式决策树桩。在第一次历经该循环时,精简分类器模型列表中将没有推升式决策树桩,因此首个推升式决策树桩将被选择。如本文中提到的,完整分类器模型可被配置成使得该完整集合中的首个推升式决策树桩具有识别恶意或良性行为的最高概率。在框548,处理核可确定与所选决策树桩相关联的测试条件。在框550,处理核可标识完整分类器模型中所包括的或从其生成的所有依赖于、包括、或测试与所选决策树桩的测试条件相同的测试条件的决策树桩。在框552,处理核可将所选推升式决策树桩和所有标识出的依赖于、包括、或测试相同测试条件的推升式决策树桩添加到精简分类器模型列表。
在框554,处理核可递增循环计数变量的值。在确定框556,处理核可确定循环计数变量的值是否大于或等于在框542中确定的独特测试条件数目N。当处理核确定循环计数变量的值不大于或等于独特测试条件数目时(即,确定框556=“否”),处理核可重复框546-554中的操作。当处理核确定循环计数变量的值大于或等于独特测试条件数目时(即,确定框556=“是”),在框558,处理核可生成精简分类器模型以包括精简分类器模型列表中的所有推升式决策树桩。
此方法540可被使用数次以通过改变精简分类器模型中的独特测试条件的数目N来生成有不同稳健度或精简度的精简分类器模型族。例如,在可选框560,移动设备处理器可增大在框542中确定的独特测试条件数目N以生成纳入更多测试条件的另一精简分类器模型。在可选确定框562,处理器可确定增大了的数目N是否超过最大测试条件数目(max N)。最大测试条件数目可基于评价难以分类的行为所期望的最大性能惩罚或资源投资来确定(例如,由开发者、服务提供方、用户或经由算法来确定)。如果增大了的数目N小于最大数目max N(即,确定框562=“否”),则可重复以上描述的框544到560的操作以生成另一精简分类器模型。一旦最大数目的独特测试条件已被包括在精简分类器模型中(即,确定框562=“是”),则生成精简分类器模型的过程就可结束。
虽然图5A、5B和5D描述了通过重复遍历完整推升式决策树桩集合的整个过程来生成精简分类器模型族,但通过从所生成的精简分类器模型(即,在框508、520和558中的任一者中生成的模型)开始并遍历完整推升式决策树桩集合以寻找向该模型添加依赖于尚未被包括在所生成的精简分类器模型中的测试条件的推升式决策树桩的增加数目的测试条件可达成类似的结果。
而且,虽然图5A、5B和5D描述了从最精简到最稳健的精简分类器模型地来生成精简分类器模型族,但也可简单地通过从最大测试条件数目(例如,N=max N)开始并每次减小该数目来从最稳健到最精简的精简分类器模型地来生成精简分类器模型。
图6A解说了在服务器或云中生成完整分类器的一方面方法600。方法600可由耦合至云网络的服务器计算设备中的处理核来执行。
在框602,处理核可从许多移动设备搜集行为数据素材库,包括大量设备状态、配置和行为、以及关于是否检测到恶意行为的信息。在框604,处理核可标识能在来自行为数据素材库的设备状态、配置和行为内测试的特定二元问题/测试条件。为了表征所有设备状态、配置和行为,通常将标识大量此类二元问题/测试条件。随后,在框606,对于每个所标识出的二元问题,处理核可测试数据库以确定恶意行为对应于该二元问题的答案中的一个答案或另一个答案的次数分数或百分比。在框608,处理核可选择具有与恶意行为的最高对应性的二元问题作为首个决策树桩,其权重值是基于对应性百分比来确定的。在框610,处理核可推升不正确地分类的样本/测试条件的权重,如以下参照图6B描述的。
假定第一问题的答案是不与恶意行为相关联的值(例如,“否”),服务器的处理核可随后重复进行扫描二元问题的过程,以标识在这种情形中具有与恶意行为的最高对应性的问题。该问题随后被设为该模型中的第二个二元问题,其权重值是基于其对应性百分比来确定的。服务器随后重复扫描二元问题的过程——假定第一和第二问题/测试条件的答案是不与恶意行为相关联的值(例如,“否”)——以标识在这种情形中具有与恶意行为的最高对应性的下一问题/测试条件。该问题/测试条件则是该模型中的第三个二元问题/测试条件,其权重值是基于其对应性百分比来确定的。该过程继续历经所有标识出的二元问题/测试条件以构建完整集合。
在生成二元问题/测试条件的过程中,服务器可评估具有一范围的数据(诸如通信频度、或先前时间区间内的通信数目),并以帮助分类行为的方式编制涵盖该范围的一系列二元问题/测试条件。由此,一个二元问题/测试条件可以是设备在先前五分钟内是否发送了0次以上数据传输(其可具有低相关性),第二个二元问题/测试条件可以是设备在先前五分钟内是否发送了10次以上数据传输(其可具有中等相关性),而第三个问题/测试条件可以是设备在先前五分钟内是否发送了100次以上数据传输(其可具有高相关性)。
在将完整分类器集合发送给移动设备之前可由服务器进行对最终问题/测试条件集合的一些剔选,诸如移除其所确定的权重或与恶意行为的相关性小于阈值的(例如,达不到统计上显著的)那些问题/测试条件。例如,如果与恶意行为的相关性约为50/50,则使用该决策树桩可能存在很少益处,因为任一答案都无助于回答当前行为是恶意还是良性的问题。
图6B解说了适合用于生成适合根据各个方面来使用的推升式决策树/分类器的示例推升方法620。在操作622中,处理器可生成和/或执行决策树/分类器,从该决策树/分类器的执行中收集训练样本,以及基于该训练样本生成新的分类器模型(h1(x))。训练样本可包括从对移动设备行为、软件应用、或移动设备中的进程的先前观测或分析收集的信息。训练样本和/或新的分类器模型(h1(x))可基于先前分类器中所包括的问题或测试条件的类型和/或基于从行为分析器模块204的分类器模块208中对先前数据/行为模型或分类器的执行/应用所收集的准确性或性能特性来生成。在操作624中,处理器可推升(或增大)被所生成的决策树/分类器(h1(x))误分类了的条目的权重,以生成第二新的树/分类器(h2(x))。在一方面,训练样本和/或新的分类器模型(h2(x))可基于先前执行或使用分类器(h1(x))的错误率来生成。在一方面,训练样本和/或新的分类器模型(h2(x))可基于被确定为在分类器的先前执行或使用中已造成错误率或数据点误分类的属性来生成。
在一方面,被误分类的条目可基于其相对准确性或有效性来被加权。在操作626中,处理器可推升(或增大)被所生成的第二树/分类器(h2(x))误分类了的条目的权重,以生成第三新的树/分类器(h3(x))。在操作628,操作624-626可被重复以生成数目“t”个新的树/分类器(ht(x))。
通过推升或增大被第一决策树/分类器(h1(x))误分类了的条目的权重,第二树/分类器(h2(x))可以更准确地分类被第一决策树/分类器(h1(x))误分类了的条目,但是也可能会误分类被第一决策树/分类器(h1(x))正确分类了的一些条目。类似地,第三树/分类器(h3(x))可以更准确地分类被第二决策树/分类器(h2(x))误分类了的条目并且可能误分类被第二决策树/分类器(h2(x))正确分类了的一些条目。即,生成树/分类器族h1(x)-ht(x)可能不会导致整体而言收敛的系统,而是得到可被并行执行的数个决策树/分类器。
图7解说了生成分类器模型的示例方法700,该分类器模型包括推升式决策树桩并且可被用于智能且高效地标识移动设备102上主动恶意的或编写得很差的软件应用和/或可疑的或使性能降级的移动设备行为,而不消耗该移动设备的过量处理、存储器、或能量资源。在方法700的操作1中,网络服务器的离线分类器可基于从云服务/网络接收到的信息来生成完整或稳健的分类器模型。例如,完整分类器可包括测试四十个(40)独特条件的100个推升式决策树桩。在方法700的操作2中,完整分类器模型可被发送给移动设备102中的分析器/分类器模块208。在方法700的操作3中,分析器/分类器模块208可基于分析完整分类器模型来生成推升式决策树桩形式的精简数据/行为模型分类器集合。这可通过执行“联合特征选择及剔选”操作来完成,其允许移动设备:在运行中生成精简模型而无需访问云训练数据;每应用动态地重配置分类器以增强分类准确性;以及为每个分类器指定确定性的复杂度(例如,O(树桩的数目))。“联合特征选择及剔选”操作还可包括执行特征选择操作。
图8解说了可由一方面服务器处理器生成并由设备处理器用来在移动设备中生成精简分类器模型的示例推升式决策树桩800。在图8解说的示例中,推升式决策树桩800包括多个决策节点W1-W4,每个决策节点包括问题或测试条件(例如,F1、F3、F5),这些问题或测试条件在由处理器执行或运行时可导致确定性的二元答案(例如,真或假、恶意或良性等)。每个决策节点W1-W4还可与权重值相关联。
图8还解说了执行以上参照图7讨论的“联合特征选择及剔选”操作的方法802。方法802可包括移动设备的分析器模块确定其需要生成测试两个独特条件的精简分类器,在这种情形中,特征选择操作可包括遍历具有100个推升式决策树桩的列表直至发现前2个独特条件(例如,图8中的F1和F3)。分析器/分类器模块208可随后仅测试由特征选择操作标识出的条件(例如,F1和F3),这可通过遍历具有100个推升式决策树桩的整个列表并删除测试不同条件(例如,F5)的任何树桩来完成。其余推升式决策树桩(即,测试条件“F1”和“F3”的树桩)可被用作精简分类器而无需重新训练该数据。分析器/分类器模块208可将行为信息应用于每个其余推升式决策树桩(即,测试条件“F1”和“F3”的树桩),计算从其余树桩接收到的所有答案的加权平均,并使用该加权平均来确定移动设备行为是恶意还是良性。
一旦已通过特征选择和剔选过程生成了推升式决策树桩,所选决策树桩就可被用作可对照当前设备状态、设定和行为进行比较的分类器或行为模型。由于决策树桩是独立的二元测试,因此将观测到的行为(其可被概括在行为向量中)与模型作比较的行为分析过程可被并行地执行。而且,由于树桩是非常简单的(基本上二元的),因此用于执行每个树桩的处理是非常简单的且由此可用较少处理开销来快速完成。每个决策树桩产生具有权重值的答案,并且关于行为是恶意还是良性的最终决策可被确定为所有结果的加权和,这也是简单计算。
与节点相关联的权重可基于从对移动设备行为、软件应用、或移动设备中的进程的先前观测或分析收集的信息来计算。与每个节点相关联的权重还可基于使用了数据素材库(例如,数据或行为向量的云素材库)的多少单元来构建推升式决策树桩来计算。
图9解说根据一方面的被配置成执行动态和自适应观测的计算系统的行为观测器模块202中的示例逻辑组件和信息流。行为观测器模块202可包括自适应过滤器模块902、节流器模块904、观测器模式模块906、高层级行为检测模块908、行为向量生成器910、和安全缓冲器912。高层级行为检测模块908可包括空间相关模块914和时间相关模块916。
观测器模式模块906可从各种源接收控制信息,这些源可包括分析器单元(例如,上文参照图2所描述的行为分析器模块204)和/或应用API。观测器模式模块906可将与各种观测器模式有关的控制信息发送给自适应过滤器模块902和高层级行为检测模块908。
自适应过滤器模块902可从多个源接收数据/信息,且智能地过滤收到信息以生成选自收到信息的较小信息子集。此过滤器可基于从分析器模块、或通过API进行通信的较高层级进程接收的信息或控制而被调适。经过滤信息可被发送给节流器模块904,节流器模块904可负责控制从该过滤器流出的信息量以确保高层级行为检测模块908不会因请求或信息而变得满溢或过载。
高层级行为检测模块908可从节流器模块904接收数据/信息、从观测器模式模块906接收控制信息、以及从移动设备的其他组件接收上下文信息。高层级行为检测模块908可使用收到信息来执行空间和时间相关以检测或标识可致使设备性能未达最优水平的高层级行为。空间和时间相关的结果可被发送给行为向量生成器910,行为向量生成器910可接收此相关(correlation)信息并生成描述特定进程、应用或子系统的行为的行为向量。在一方面,行为向量生成器910可生成行为向量,以使得特定进程、应用或子系统的每一高层级行为是该行为向量的元素。在一方面,所生成的行为向量可被存储在安全缓冲器912中。高层级行为检测的示例可包括检测特定事件的存在、另一事件的量或频度、多个事件之间的关系、事件发生的次序、某些事件的发生之间的时间差,等等。
在各种方面,行为观测器模块202可执行自适应观测并控制观测粒度。即,行为观测器模块202可动态地标识要观测的相关行为,并动态地确定要观测所标识出的行为的细致程度。以此方式,行为观测器模块202使系统能够以各种水平(例如,多个粗略和精细水平)监视移动设备的行为。行为观测器模块202可使系统能够适应于正被观测的事项。行为观测器模块202可使系统能够基于目标集中的信息子集而动态地改变正被观测的因素/行为,该目标集中的信息子集可从广泛的各种源获得。
如上文所讨论的,行为观测器模块202可执行自适应观测技术并基于从各种源接收的信息来控制观测粒度。例如,高层级行为检测模块908可从节流器模块904、观测器模式模块906接收信息,以及从移动设备的其他组件(例如,传感器)接收上下文信息。作为示例,执行时间相关的高层级行为检测模块908可能检测出相机已被使用且移动设备正尝试将图片上传至服务器。高层级行为检测模块908还可执行空间相关以确定移动设备上的应用是否是在该设备被放入皮套且附接至用户皮带时拍摄了该图片。高层级行为检测模块908可确定此检测出的高层级行为(例如,在放在皮套中的情况下使用相机)是否为可接受或常见的行为,这可通过将当前行为与移动设备的过往行为作比较和/或访问从多个设备收集的信息(例如,从众包服务器接收的信息)来达成。因为在放在皮套中的情况下拍摄图片且将其上传至服务器是异常行为(如可从在被放入皮套的上下文中观测到的正常行为来确定的),所以在此情形中,高层级行为检测模块908可将此行为识别为潜在有威胁的行为并发起适当响应(例如,关掉相机、发警报,等等)。
在一方面,行为观测器模块202可实现在多个部分中。
图10更详细地解说实现一方面的观测器守护进程的计算系统1000中的逻辑组件和信息流。在图10所解说的示例中,计算系统1000包括在用户空间中的行为检测器1002模块、数据库引擎1004模块和行为分析器模块204,以及在内核空间中的环形缓冲器1014、过滤器规则1016模块、节流规则1018模块、以及安全缓冲器1020。计算系统1000可进一步包括观测器守护进程,其包括在用户空间中的行为检测器1002和数据库引擎1004,以及在内核空间中的安全缓冲器管理器1006、规则管理器1008、和系统健康监视器1010。
各种方面可提供移动设备上涵盖webkit、SDK、NDK、内核、驱动器和硬件的交叉层观测,以便表征系统行为。可实时地作出行为观测。
观测器模块可执行自适应观测技术并控制观测粒度。如以上所讨论的,存在可造成移动设备降级的大量(即,数千个)因素,并且要监视/观测可造成设备性能降级的所有不同因素可能是不可行的。为了克服这一点,各种方面动态地标识要观测的相关行为,并动态地确定要观测所标识出的行为的细致程度。
图11解说了根据一方面的用于执行动态和自适应观测的示例方法1100。在框1102,移动设备处理器可通过监视/观测可能造成移动设备降级的大量因素/行为的子集来执行粗略观测。在框1103,移动设备处理器可基于粗略观测来生成表征粗略观测和/或移动设备行为的行为向量。在框1104,移动设备处理器可标识与粗略观测相关联的可能潜在地造成移动设备降级的子系统、进程、和/或应用。这可例如通过将从多个源接收到的信息与从移动设备的传感器接收到的上下文信息作比较来达成。在框1106,移动设备处理器可基于粗略观测来执行行为分析操作。在一方面,作为框1103和1104的部分,移动设备处理器可执行以上参照图2-10所讨论的一个或多个操作。
在确定框1108,移动设备处理器可确定是否能基于该行为分析的结果来标识和纠正可疑行为或潜在问题。当移动设备处理器确定能基于该行为分析的结果来标识和纠正可疑行为或潜在问题时(即,确定框1108=“是”),则在框1118,处理器可发起纠正该行为的过程并返回至框1102以执行附加粗略观测。
当移动设备处理器确定不能基于行为分析的结果来标识和/或纠正可疑行为或潜在问题时(即,确定框1108=“否”),则在确定框1109,移动设备处理器可确定是否存在出问题的可能性。在一方面,移动设备处理器可通过计算移动设备遭遇潜在问题和/或参与可疑行为的概率并确定计算出的概率是否大于预定阈值来确定存在出问题的可能性。当移动设备处理器确定计算出的概率不大于预定阈值和/或不可能有可疑行为或潜在问题存在和/或可检测到时(即,确定框1109=“否”),则处理器可返回至框1102以执行附加粗略观测。
当移动设备处理器确定可能有可疑行为或潜在问题存在和/或可检测到时(即,确定框1109=“是”),则在框1110,移动设备处理器可对所标识出的子系统、进程或应用执行更深入的日志记录/观测或最终日志记录。在框1112,移动设备处理器可对所标识出的子系统、进程或应用执行更深入且更细致的观测。在框1114,移动设备处理器可基于更深入且更细致的观测来执行进一步和/或更深入的行为分析。在确定框1108,移动设备处理器可再次确定是否能基于该更深入的行为分析的结果来标识和纠正可疑行为或潜在问题。当移动设备处理器确定不能基于该更深入的行为分析的结果来标识和纠正可疑行为或潜在问题时(即,确定框1108=“否”),则处理器可重复框1110-1114中的操作,直至细致程度精细到足以标识出问题、或直至确定不能通过附加细节来标识出问题或者不存在问题。
当移动设备处理器确定能基于该更深入的行为分析的结果来标识和纠正可疑行为或潜在问题时(即,确定框1108=“是”),则在框1118,移动设备处理器可执行用于纠正该问题/行为的操作,并且处理器可返回至框1102以执行附加操作。
在一方面,作为方法1100的框1102-1118的部分,移动设备处理器可对系统行为执行实时行为分析,以从有限且粗略的观测中标识可疑行为,动态地确定要更细致地观测的行为,以及动态地确定观测所需的精确的细致程度。这使得移动设备处理器能够高效地标识问题且防止发生该问题,而无需使用设备上的大量处理器、存储器或电池资源。
各种方面可实现在各种计算设备上,其中一示例在图12中以智能电话的形式作了解说。智能电话1200可包括耦合到内部存储器1204、显示器1212并耦合到扬声器1214的处理器1202。另外,智能电话1200可包括用于发送和接收电磁辐射的天线,该天线可以与无线数据链路和/或耦合至处理器1202的蜂窝电话收发机1208相连接。智能电话1200通常还包括用于接收用户输入的菜单选择按钮或摇杆开关1220。
典型的智能电话1200还包括声音编码/解码(CODEC)电路1206,其将从话筒接收到的声音数字化为适合无线传输的数据分组并解码接收到的声音数据分组以生成模拟信号,该模拟信号被提供给扬声器以生成声音。而且,处理器1202、无线收发机1208和CODEC 1206中的一者或多者可包括数字信号处理器(DSP)电路(未单独示出)。
各方面方法的部分可在客户端-服务器架构中完成,其中一些处理发生在服务器中,诸如维护正常操作行为的数据库,该数据库可由移动设备处理器在执行各方面方法时访问。此类方面可实现在各种市售的服务器设备中的任一者上,诸如图13中解说的服务器1300。此类服务器1300典型地包括耦合至易失性存储器1302和大容量非易失性存储器(诸如盘驱动器1303)的处理器1301。服务器1300还可包括耦合至处理器1301的软盘驱动器、压缩碟(CD)或DVD碟驱动器1304。服务器1300还可包括耦合至处理器1301的网络接入端口1306,以用于建立与网络1305(诸如耦合至其他广播系统计算机和服务器的局域网)的数据连接。
处理器1202、1301可以是能通过软件指令(应用)配置成执行各种功能(包括以下描述的各种方面的功能)的任何可编程微处理器、微计算机或者一个或多个多处理器芯片。在一些移动设备中,可提供多个处理器1202,诸如一个处理器专用于无线通信功能并且一个处理器专用于运行其他应用。通常,在软件应用被访问并被加载到处理器1202、1301中之前,这些软件应用可被存储在内部存储器1204、1302、1303中。处理器1202、1301可包括足以存储应用软件指令的内部存储器。
术语“性能降级”在本申请中用于指代广泛的各种不期望的移动设备操作和特性,诸如较长处理时间、较慢实时响应性、较低电池寿命、私有数据丢失、恶意经济活动(例如,发送未获授权的收费SMS消息)、拒绝服务(DoS)、与强征移动设备或利用电话进行窥探或僵尸网络活动有关的操作、等等。
用于在可编程处理器上执行以实施各种方面的操作的计算机程序代码或“程序代码”可用高级编程语言(诸如C、C++、C#、Smalltalk、Java、JavaScript、Visual Basic)、结构化查询语言(例如Transact-SQL)、Perl、或以各种其他编程语言来编写。如本申请中所使用的存储在计算机可读存储介质上的程序代码或程序可指其格式能被处理器理解的机器语言码(诸如,对象码)。
操作系统内核的许多移动计算设备被组织成用户空间(其中运行非特许代码)和内核空间(其中运行特许代码)。这种分离在和其他通用公共许可(GPL)环境中是尤其重要的,在GPL环境中,作为内核空间的一部分的代码必须得到GPL许可,而在用户空间中运行的代码可不被GPL许可。应理解,此处讨论的各种软件组件/模块可在内核空间或用户空间中的任一者中实现,除非另有明确声明。
上述方法描述和过程流图仅作为解说性示例提供,且并非旨在要求或暗示各种方面的步骤必须按所给出的次序来执行。如本领域技术人员将领会的,前述各方面中的步骤次序可按任何次序来执行。诸如“此后”、“然后”、“接着”等的措辞并非旨在限定步骤的次序;这些措辞仅是简单地用以指引读者遍历方法的描述。进一步,对单数形式的权利要求元素的任何引述,例如使用冠词“一”、“某”或“该”的引述不应解释为将该元素限定为单数。
如本申请中所使用的,术语“组件”、“模块”、“系统”、“引擎”、“生成器”、“管理器”及类似术语旨在包括计算机相关实体,诸如但不限于被配置成执行特定操作或功能的硬件、固件、硬件与软件的组合、软件、或执行中的软件。例如,组件可以是但不限于在处理器上运行的进程、处理器、对象、可执行件、执行的线程、程序、和/或计算机。作为解说,计算设备上运行的应用和计算设备两者都可被称为组件。一个或多个组件可驻留在进程和/或执行的线程内,并且组件可局部化在一个处理器或核上和/或分布在两个或更多个处理器或核之间。此外,这些组件可从其上存储着各种指令和/或数据结构的各种非瞬态计算机可读介质来执行。组件可借助于本地和/或远程进程、函数或规程调用、电子信号、数据分组、存储器读/写、以及其他已知的网络、计算机、处理器、和/或进程相关通信方法体系来通信。
结合本文中所公开的各方面来描述的各种解说性逻辑框、模块、电路、和算法步骤可实现为电子硬件、计算机软件、或这两者的组合。为清楚地解说硬件与软件的这一可互换性,各种解说性组件、块、模块、电路、和步骤在上面是以其功能性的形式作一般化描述的。此类功能性是被实现为硬件还是软件取决于具体应用和施加于整体系统的设计约束。技术人员对于每种特定应用可用不同的方式来实现所描述的功能性,但这样的实现决策不应被解读成导致脱离了本发明的范围。
用于实现结合本文中公开的方面描述的各种解说性逻辑、逻辑框、模块、以及电路的硬件可利用设计成执行本文中描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立的门或晶体管逻辑、分立的硬件组件、或其任何组合来实现或执行。通用处理器可以是多处理器,但在替换方案中,处理器可以是任何常规的处理器、控制器、微控制器、或状态机。处理器还可以被实现为计算设备的组合,例如DSP与多处理器的组合、多个多处理器、与DSP核心协作的一个或多个多处理器、或任何其他此类配置。替换地,一些步骤或方法可由专用于给定功能的电路系统来执行。
在一个或多个示例性方面,所描述的功能可在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则这些功能可作为一条或多条处理器可执行指令或代码存储在非瞬态计算机可读存储介质或非瞬态处理器可读存储介质上。本文中公开的方法或算法的步骤可在处理器可执行软件模块中实施,该处理器可执行软件模块可驻留在非瞬态计算机可读或处理器可读存储介质上。非瞬态计算机可读或处理器可读存储介质可以是能被计算机或处理器访问的任何存储介质。作为示例而非限定,此类非瞬态计算机可读或处理器可读介质可包括RAM、ROM、EEPROM、闪存、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或能被用来存储指令或数据结构形式的期望程序代码且能被计算机访问的任何其他介质。如本文中所使用的盘(disk)和碟(disc)包括压缩碟(CD)、激光碟、光碟、数字通用碟(DVD)、软盘和蓝光碟,其中盘(disk)往往以磁的方式再现数据而碟(disc)用激光以光学方式再现数据。以上的组合也被包括在非瞬态计算机可读和处理器可读介质的范围内。另外,方法或算法的操作可作为一条代码和/或指令或者任何代码和/或指令组合或集合而驻留在可被纳入计算机程序产品中的非瞬态处理器可读介质和/或计算机可读介质上。
提供了以上对所公开方面的描述是为了使得本领域任何技术人员皆能够制作或使用本发明。对这些方面的各种修改容易为本领域技术人员所显见,并且本文所定义的普适原理可被应用于其他方面而不会脱离本发明的精神或范围。由此,本发明并非旨在限定于本文中示出的方面,而是应被授予与所附权利要求和本文中公开的原理和新颖特征一致的最广义的范围。
Claims (30)
1.一种在移动设备中生成数据模型的方法,包括:
在所述移动设备的处理器中接收包括有限状态机的完整分类器模型,所述有限状态机包括适合表达为多个推升式决策树桩的信息,每个推升式决策树桩包括测试条件和权重值;以及
在所述移动设备中基于所述完整分类器模型来生成精简分类器模型。
2.如权利要求1所述的方法,其特征在于,进一步包括:
在所述移动设备中使用所述精简分类器模型来将所述移动设备的行为分类为良性的或非良性的。
3.如权利要求1所述的方法,其特征在于,基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;以及
基于所述推升式决策树桩列表中所包括的推升式决策树桩来生成所述精简分类器模型。
4.如权利要求3所述的方法,其特征在于,基于所述完整分类器模型来生成所述精简分类器模型进一步包括:
确定为了分类移动设备行为而应当评估而又不消耗所述移动设备的过量处理、存储器或能量资源的独特测试条件的数目;
通过顺序地遍历所述推升式决策树桩列表并将与每个顺序地遍历到的推升式决策树桩相关联的测试条件插入测试条件列表直至所述测试条件列表包括所确定数目的独特测试条件来生成所述测试条件列表;以及
生成所述精简分类器模型以仅包括测试所生成的测试条件列表中所包括的多个测试条件之一的那些推升式决策树桩。
5.如权利要求4所述的方法,其特征在于,进一步包括在所述移动设备中使用所述精简分类器模型通过如下操作来将所述移动设备的行为分类为良性的或非良性的:
将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩;
计算将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩的结果的加权平均;以及
将所述加权平均与阈值作比较。
6.如权利要求1所述的方法,其特征在于,基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;以及
基于所述推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型族,所述精简分类器模型族包括所述精简分类器模型以及多个附加精简分类器模型,所述多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
7.如权利要求1所述的方法,其特征在于,生成精简分类器模型包括:
生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。
8.如权利要求1所述的方法,其特征在于,进一步包括:
重新计算与在所述移动设备中基于所述完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的阈值。
9.如权利要求1所述的方法,其特征在于,进一步包括:
重新计算与在所述移动设备中基于所述完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的权重值。
10.如权利要求1所述的方法,其特征在于,进一步包括:
在服务器中通过以下操作来生成所述完整分类器模型:
在所述服务器中接收关于移动设备行为的信息素材库;以及
基于关于移动设备行为的所述信息素材库来生成所述有限状态机以包括适合转换成所述多个推升式决策树桩的数据;以及
将所述有限状态机作为所述完整分类器模型发送给所述移动设备。
11.如权利要求10所述的方法,其特征在于,每个测试条件与概率值相关联,所述概率值标识其相关联的测试条件将使得所述移动设备能确定移动设备行为是否为良性的可能性,所述方法进一步包括:
在将所述有限状态机作为所述完整分类器模型发送给所述移动设备之前基于概率值来组织所述有限状态机中的所述多个推升式决策树桩。
12.一种移动计算设备,包括:
处理器,其配置有处理器可执行指令以执行操作,所述操作包括:
接收包括有限状态机的完整分类器模型,所述有限状态机包括适合表达为多个推升式决策树桩的信息,每个推升式决策树桩包括测试条件和权重值;以及
基于所述完整分类器模型来生成精简分类器模型。
13.如权利要求12所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中包括的所述有限状态机转换成推升式决策树桩列表;
确定为了分类移动设备行为而应当评估而又不消耗所述移动计算设备的过量处理、存储器或能量资源的独特测试条件的数目;
通过顺序地遍历所述推升式决策树桩列表并将与每个顺序地遍历到的推升式决策树桩相关联的测试条件插入测试条件列表直至所述测试条件列表包括所确定数目的独特测试条件来生成所述测试条件列表;以及
生成所述精简分类器模型以包括所述推升式决策树桩列表中所包括的测试所生成的测试条件列表中所包括的多个测试条件之一的推升式决策树桩。
14.如权利要求13所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以用于执行操作,所述操作进一步包括:
使用所述精简分类器模型通过以下操作来将行为分类为良性的或非良性的:
将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩;
计算将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩的结果的加权平均;以及
将所述加权平均与阈值作比较。
15.如权利要求12所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;以及
基于所述推升式决策树桩列表中包括的推升式决策树桩来生成精简分类器模型族,所述精简分类器模型族包括所述精简分类器模型以及多个附加精简分类器模型,所述多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
16.如权利要求12所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以用于执行操作,以使得生成精简分类器模型包括:
生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。
17.如权利要求12所述的移动计算设备,其特征在于,所述处理器配置有处理器可执行指令以用于执行操作,所述操作进一步包括:
重新计算与基于所述完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的阈值和权重值。
18.一种其上存储有处理器可执行软件指令的非瞬态计算机可读存储介质,所述处理器可执行软件指令被配置成使移动设备中的处理器执行操作,所述操作包括:
接收包括有限状态机的完整分类器模型,所述有限状态机包括适合表达为多个推升式决策树桩的信息,每个推升式决策树桩包括测试条件和权重值;以及
基于所述完整分类器模型来生成精简分类器模型。
19.如权利要求18所述的非瞬态计算机可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使所述移动设备中的处理器执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中包括的所述有限状态机转换成推升式决策树桩列表;
确定为了分类移动设备行为而应当评估而又不消耗所述移动设备的过量处理、存储器或能量资源的独特测试条件的数目;
通过顺序地遍历所述推升式决策树桩列表并将与每个顺序地遍历到的推升式决策树桩相关联的测试条件插入测试条件列表直至所述测试条件列表包括所确定数目的独特测试条件来生成所述测试条件列表;以及
生成所述精简分类器模型以包括所述推升式决策树桩列表中所包括的测试所生成的测试条件列表中所包括的多个测试条件之一的推升式决策树桩。
20.如权利要求19所述的非瞬态计算机可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使所述移动设备中的处理器执行操作,所述操作进一步包括:
在所述移动设备中使用所述精简分类器模型通过如下操作来将所述移动设备的行为分类为良性的或非良性的:
将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩;
计算将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩的结果的加权平均;以及
将所述加权平均与阈值作比较。
21.如权利要求18所述的非瞬态计算机可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使所述移动设备中的处理器执行操作,使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;以及
基于所述推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型族,所述精简分类器模型族包括所述精简分类器模型以及多个附加精简分类器模型,所述多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
22.如权利要求18所述的非瞬态计算机可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使所述移动设备中的处理器执行操作,以使得生成精简分类器模型包括:
生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。
23.如权利要求18所述的非瞬态计算机可读存储介质,其特征在于,所存储的处理器可执行软件指令被配置成使所述移动设备中的处理器执行操作,所述操作进一步包括:
重新计算与基于所述完整分类器模型生成的多个精简分类器模型中的推升式决策树桩相关联的阈值和权重值。
24.一种系统,包括:
包括设备处理器的移动设备;以及
服务器,其配置有服务器可执行指令以执行操作,所述操作包括:
接收关于移动设备行为的信息素材库;
基于所述信息素材库来生成有限状态机,所述有限状态机包括适合转换成多个推升式决策树桩的数据,每个推升式决策树桩包括测试条件和权重值;以及
将所述有限状态机作为完整分类器模型发送给所述移动设备,
其中所述设备处理器配置有处理器可执行指令以用于执行操作,所述操作包括:
接收所述完整分类器模型;
在所述移动设备中基于所接收的完整分类器模型来生成精简分类器模型;以及
使用所述精简分类器模型来将所述移动设备的行为分类为良性的或非良性的。
25.如权利要求24所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;
确定为了分类所述移动设备的行为而应当评估而又不消耗所述移动设备的过量处理、存储器或能量资源的独特测试条件的数目;
通过顺序地遍历所述推升式决策树桩列表并将与每个顺序地遍历到的推升式决策树桩相关联的测试条件插入测试条件列表直至所述测试条件列表包括所确定数目的独特测试条件来生成所述测试条件列表;以及
生成所述精简分类器模型以包括所述推升式决策树桩列表中所包括的测试所生成的测试条件列表中所包括的多个测试条件之一的推升式决策树桩。
26.如权利要求24所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行操作,以使得使用所述精简分类器模型来分类所述移动设备的行为包括:
将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩;
计算将所收集的行为信息应用于所述精简分类器模型中的每个推升式决策树桩的结果的加权平均;以及
将所述加权平均与阈值作比较。
27.如权利要求24所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
将所述完整分类器模型中所包括的所述有限状态机转换成推升式决策树桩列表;以及
基于所述推升式决策树桩列表中所包括的推升式决策树桩来生成精简分类器模型族,所述精简分类器模型族包括所述精简分类器模型以及多个附加精简分类器模型,所述多个附加精简分类器模型中的每一者包括不同数目的独特测试条件。
28.如权利要求24所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行操作,以使得基于所述完整分类器模型来生成所述精简分类器模型包括:
生成多个精简分类器模型,每个精简分类器模型包括使用不同权重值和不同阈值来测试第一条件的决策树桩。
29.如权利要求28所述的系统,其特征在于,所述设备处理器配置有处理器可执行指令以执行操作,所述操作进一步包括:
重新计算与所述多个精简分类器模型中的推升式决策树桩相关联的阈值和权重值。
30.如权利要求24所述的系统,其特征在于,
所述服务器配置有服务器可执行指令以执行操作,以使得生成所述有限状态机包括生成所述有限状态机从而每个测试条件与概率值相关联,所述概率值标识其相关联的测试条件将使得所述移动设备能确定移动设备行为是否为良性的可能性,并且
所述服务器配置有服务器可执行指令以用于执行操作,所述操作进一步包括在将所述有限状态机作为所述完整分类器模型发送给所述移动设备之前基于所述概率值来组织所述有限状态机中的所述多个推升式决策树桩。
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361748217P | 2013-01-02 | 2013-01-02 | |
US201361748220P | 2013-01-02 | 2013-01-02 | |
US61/748,220 | 2013-01-02 | ||
US61/748,217 | 2013-01-02 | ||
US201361874129P | 2013-09-05 | 2013-09-05 | |
US61/874,129 | 2013-09-05 | ||
US14/090,261 | 2013-11-26 | ||
US14/090,261 US9684870B2 (en) | 2013-01-02 | 2013-11-26 | Methods and systems of using boosted decision stumps and joint feature selection and culling algorithms for the efficient classification of mobile device behaviors |
PCT/US2013/078352 WO2014107439A2 (en) | 2013-01-02 | 2013-12-30 | Methods and systems of using boosted decision stumps and joint feature selection and culling algorithms for the efficient classification of mobile device behaviors |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104885099A true CN104885099A (zh) | 2015-09-02 |
CN104885099B CN104885099B (zh) | 2018-05-08 |
Family
ID=51018354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380069119.8A Active CN104885099B (zh) | 2013-01-02 | 2013-12-30 | 使用推升式决策树桩和联合特征选择及剔选算法来对移动设备行为进行高效分类的方法和系统 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9684870B2 (zh) |
EP (1) | EP2941741A2 (zh) |
JP (1) | JP6258970B2 (zh) |
KR (1) | KR101826865B1 (zh) |
CN (1) | CN104885099B (zh) |
WO (1) | WO2014107439A2 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107567628A (zh) * | 2015-05-07 | 2018-01-09 | 高通股份有限公司 | 用于使用针对增强型决策树桩的因果分析来识别和响应非良性行为的方法和系统 |
CN107741899A (zh) * | 2017-10-16 | 2018-02-27 | 北京小米移动软件有限公司 | 处理终端数据的方法、装置及系统 |
CN108573147A (zh) * | 2017-03-10 | 2018-09-25 | 武汉安天信息技术有限责任公司 | 一种恶意样本的筛选装置及方法 |
CN108885662A (zh) * | 2016-04-22 | 2018-11-23 | 高通股份有限公司 | 用于智能地检测客户端计算装置和公司网络上的恶意软件和攻击的方法和系统 |
CN112583631A (zh) * | 2019-09-30 | 2021-03-30 | 瞻博网络公司 | 确定计算机系统事件的依赖原因 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9202047B2 (en) | 2012-05-14 | 2015-12-01 | Qualcomm Incorporated | System, apparatus, and method for adaptive observation of mobile device behavior |
US9609456B2 (en) | 2012-05-14 | 2017-03-28 | Qualcomm Incorporated | Methods, devices, and systems for communicating behavioral analysis information |
US9298494B2 (en) | 2012-05-14 | 2016-03-29 | Qualcomm Incorporated | Collaborative learning for efficient behavioral analysis in networked mobile device |
US9690635B2 (en) | 2012-05-14 | 2017-06-27 | Qualcomm Incorporated | Communicating behavior information in a mobile computing device |
US9324034B2 (en) | 2012-05-14 | 2016-04-26 | Qualcomm Incorporated | On-device real-time behavior analyzer |
US9319897B2 (en) | 2012-08-15 | 2016-04-19 | Qualcomm Incorporated | Secure behavior analysis over trusted execution environment |
US9495537B2 (en) | 2012-08-15 | 2016-11-15 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US9747440B2 (en) | 2012-08-15 | 2017-08-29 | Qualcomm Incorporated | On-line behavioral analysis engine in mobile device with multiple analyzer model providers |
US9330257B2 (en) | 2012-08-15 | 2016-05-03 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US9686023B2 (en) | 2013-01-02 | 2017-06-20 | Qualcomm Incorporated | Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors |
US10089582B2 (en) | 2013-01-02 | 2018-10-02 | Qualcomm Incorporated | Using normalized confidence values for classifying mobile device behaviors |
US9742559B2 (en) | 2013-01-22 | 2017-08-22 | Qualcomm Incorporated | Inter-module authentication for securing application execution integrity within a computing device |
US9491187B2 (en) | 2013-02-15 | 2016-11-08 | Qualcomm Incorporated | APIs for obtaining device-specific behavior classifier models from the cloud |
US9420029B2 (en) * | 2013-07-01 | 2016-08-16 | Cellco Partnership | Mobile device application rating |
US9652362B2 (en) * | 2013-12-06 | 2017-05-16 | Qualcomm Incorporated | Methods and systems of using application-specific and application-type-specific models for the efficient classification of mobile device behaviors |
US9947028B1 (en) * | 2014-02-27 | 2018-04-17 | Intuit Inc. | System and method for increasing online conversion rate of potential users |
US9703962B2 (en) * | 2014-10-09 | 2017-07-11 | Qualcomm Incorporated | Methods and systems for behavioral analysis of mobile device behaviors based on user persona information |
US20160350657A1 (en) * | 2015-06-01 | 2016-12-01 | Qualcomm Incorporated | Cross-Module Behavioral Validation |
US20170024660A1 (en) * | 2015-07-23 | 2017-01-26 | Qualcomm Incorporated | Methods and Systems for Using an Expectation-Maximization (EM) Machine Learning Framework for Behavior-Based Analysis of Device Behaviors |
EP3822977A1 (en) | 2015-08-26 | 2021-05-19 | Viavi Solutions Inc. | Identification using spectroscopy |
KR101715759B1 (ko) * | 2015-09-22 | 2017-03-15 | 한국전자통신연구원 | 멀티코어 환경에서의 악성코드 분석 장치 및 방법 |
US10097429B2 (en) * | 2015-11-25 | 2018-10-09 | Fluke Corporation | System and method for applying aggregated cable test result data |
EP3619629A4 (en) | 2017-05-10 | 2020-12-09 | Embee Mobile, Inc. | SYSTEM AND METHOD FOR DETECTING MOBILE BEHAVIOR, USE OR CONTENT EXPOSURE |
JP6767924B2 (ja) | 2017-05-19 | 2020-10-14 | 東芝映像ソリューション株式会社 | システム、方法及びプログラム |
JP6767926B2 (ja) | 2017-05-23 | 2020-10-14 | 東芝映像ソリューション株式会社 | 電子装置、方法及びプログラム |
CN109308411B (zh) * | 2018-08-20 | 2022-08-30 | 中国电力科学研究院有限公司 | 基于人工智能决策树的分层检测软件行为缺陷的方法和系统 |
US11641406B2 (en) * | 2018-10-17 | 2023-05-02 | Servicenow, Inc. | Identifying applications with machine learning |
TW201921893A (zh) * | 2018-12-14 | 2019-06-01 | 就肆電競股份有限公司 | 資料傳輸加速裝置 |
TWI686064B (zh) * | 2019-03-14 | 2020-02-21 | 就肆電競股份有限公司 | 點對點網路加速系統 |
CN110198244B (zh) * | 2019-06-19 | 2022-02-18 | 北京百度网讯科技有限公司 | 面向异构云服务的资源配置方法和装置 |
US11948056B2 (en) | 2020-12-08 | 2024-04-02 | International Business Machines Corporation | Communication-efficient data parallel ensemble boosting |
WO2022187484A2 (en) * | 2021-03-05 | 2022-09-09 | University Of Pittsburgh-Of The Commonwealth System Of Higher Education | Nanosecond execution of machine learning algorithms and nanosecond anomaly detection and encoded data transmission using autoencoders with decision tree grid in field programmable gate array and other electronic devices |
CN113516189B (zh) * | 2021-07-16 | 2022-08-26 | 广西师范大学 | 基于两阶段随机森林算法的网站恶意用户预测方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101770453A (zh) * | 2008-12-31 | 2010-07-07 | 华建机器翻译有限公司 | 基于领域本体结合机器学习模型的汉语文本共指消解方法 |
US20110145920A1 (en) * | 2008-10-21 | 2011-06-16 | Lookout, Inc | System and method for adverse mobile application identification |
Family Cites Families (195)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5870735A (en) | 1996-05-01 | 1999-02-09 | International Business Machines Corporation | Method and system for generating a decision-tree classifier in parallel in a multi-processor system |
US9195784B2 (en) | 1998-08-31 | 2015-11-24 | Cadence Design Systems, Inc. | Common shared memory in a verification system |
US6532541B1 (en) | 1999-01-22 | 2003-03-11 | The Trustees Of Columbia University In The City Of New York | Method and apparatus for image authentication |
US6647260B2 (en) | 1999-04-09 | 2003-11-11 | Openwave Systems Inc. | Method and system facilitating web based provisioning of two-way mobile communications devices |
US6681331B1 (en) | 1999-05-11 | 2004-01-20 | Cylant, Inc. | Dynamic software system intrusion detection |
US6643802B1 (en) | 2000-04-27 | 2003-11-04 | Ncr Corporation | Coordinated multinode dump collection in response to a fault |
EP1182552A3 (en) | 2000-08-21 | 2003-10-01 | Texas Instruments France | Dynamic hardware configuration for energy management systems using task attributes |
US7234126B2 (en) | 2000-08-23 | 2007-06-19 | Interuniversitair Microelektronica Centrum | Task concurrency management design method |
US7600014B2 (en) | 2000-11-16 | 2009-10-06 | Symantec Corporation | Method and system for monitoring the performance of a distributed application |
US20040068721A1 (en) | 2000-11-17 | 2004-04-08 | O'neill Patrick | Network for updating firmware and / or software in wireless communication devices |
US20030037237A1 (en) | 2001-04-09 | 2003-02-20 | Jean-Paul Abgrall | Systems and methods for computer device authentication |
US7051327B1 (en) | 2001-05-08 | 2006-05-23 | Gateway Inc. | System for providing data backup and restore with updated version by creating data package based upon configuration data application data and user response to suggestion |
US7849360B2 (en) | 2001-05-21 | 2010-12-07 | Vir2Us, Inc. | Computer system and method of controlling communication port to prevent computer contamination by virus or malicious code |
US7401359B2 (en) | 2001-12-21 | 2008-07-15 | Mcafee, Inc. | Generating malware definition data for mobile computing devices |
US7290282B1 (en) | 2002-04-08 | 2007-10-30 | Symantec Corporation | Reducing false positive computer virus detections |
US7694139B2 (en) | 2002-10-24 | 2010-04-06 | Symantec Corporation | Securing executable content using a trusted computing platform |
US7103772B2 (en) | 2003-05-02 | 2006-09-05 | Giritech A/S | Pervasive, user-centric network security enabled by dynamic datagram switch and an on-demand authentication and encryption scheme through mobile intelligent data carriers |
US8201249B2 (en) | 2003-05-14 | 2012-06-12 | Northrop Grumman Systems Corporation | Steady state computer intrusion and misuse detection |
US8458805B2 (en) | 2003-06-23 | 2013-06-04 | Architecture Technology Corporation | Digital forensic analysis using empirical privilege profiling (EPP) for filtering collected data |
WO2005060396A2 (en) | 2003-08-18 | 2005-07-07 | The General Hospital Corporation | Nanotopographic compositions and methods for cellular organization in tissue engineered structures |
KR100623552B1 (ko) | 2003-12-29 | 2006-09-18 | 한국정보보호진흥원 | 자동침입대응시스템에서의 위험수준 분석 방법 |
US7694150B1 (en) | 2004-06-22 | 2010-04-06 | Cisco Technology, Inc | System and methods for integration of behavioral and signature based security |
EP1774780A1 (en) | 2004-07-20 | 2007-04-18 | QUALCOMM Incorporated | Method and apparatus for motion vector processing |
US7793262B2 (en) | 2004-07-29 | 2010-09-07 | International Business Machines Corporation | Method and apparatus for facilitating software testing and report generation with interactive graphical user interface |
US7559053B2 (en) | 2004-08-24 | 2009-07-07 | Microsoft Corporation | Program and system performance data correlation |
US7877621B2 (en) | 2004-09-03 | 2011-01-25 | Virginia Tech Intellectual Properties, Inc. | Detecting software attacks by monitoring electric power consumption patterns |
KR100645735B1 (ko) | 2004-10-14 | 2006-11-15 | 주식회사 팬택 | 모바일 플랫폼의 컨텐츠 오동작 통신 검출 장치 및 방법 |
US8108929B2 (en) | 2004-10-19 | 2012-01-31 | Reflex Systems, LLC | Method and system for detecting intrusive anomalous use of a software system using multiple detection algorithms |
US7561877B2 (en) | 2005-03-18 | 2009-07-14 | Qualcomm Incorporated | Apparatus and methods for managing malfunctions on a wireless device |
US7881291B2 (en) | 2005-05-26 | 2011-02-01 | Alcatel Lucent | Packet classification acceleration using spectral analysis |
US20060288209A1 (en) | 2005-06-20 | 2006-12-21 | Vogler Dean H | Method and apparatus for secure inter-processor communications |
US20070006304A1 (en) | 2005-06-30 | 2007-01-04 | Microsoft Corporation | Optimizing malware recovery |
US8161548B1 (en) | 2005-08-15 | 2012-04-17 | Trend Micro, Inc. | Malware detection using pattern classification |
US8045958B2 (en) | 2005-11-21 | 2011-10-25 | Research In Motion Limited | System and method for application program operation on a wireless device |
US7809670B2 (en) | 2005-12-09 | 2010-10-05 | Microsoft Corporation | Classification of malware using clustering that orders events in accordance with the time of occurance |
US8381297B2 (en) | 2005-12-13 | 2013-02-19 | Yoggie Security Systems Ltd. | System and method for providing network security to mobile devices |
EP1977334A4 (en) | 2006-01-25 | 2011-01-12 | Greystripe Inc | SYSTEM AND METHOD FOR MANAGING CONTENT IN PRE-EXISTING MOBILE APPLICATIONS |
US8490194B2 (en) | 2006-01-31 | 2013-07-16 | Robert Moskovitch | Method and system for detecting malicious behavioral patterns in a computer, using machine learning |
IL181041A0 (en) | 2007-01-29 | 2007-07-04 | Deutsche Telekom Ag | Improved method and system for detecting malicious behavioral patterns in a computer, using machine learning |
US7831237B2 (en) | 2006-02-03 | 2010-11-09 | Broadcom Corporation | Authenticating mobile network provider equipment |
KR100791290B1 (ko) | 2006-02-10 | 2008-01-04 | 삼성전자주식회사 | 디바이스 간에 악성 어플리케이션의 행위 정보를 사용하는장치 및 방법 |
US20070220327A1 (en) | 2006-02-23 | 2007-09-20 | Evergrid, Inc., A Delaware Corporation | Dynamically Controlled Checkpoint Timing |
ATE515872T1 (de) | 2006-03-27 | 2011-07-15 | Telecom Italia Spa | Verfahren und system zum identifizieren von böswilligen nachrichten in mobilkommunikationsnetzen, diesbezügliches netz und computerprogrammprodukt dafür |
WO2007117585A2 (en) | 2006-04-06 | 2007-10-18 | Smobile Systems Inc. | System and method for managing malware protection on mobile devices |
US20070283170A1 (en) | 2006-06-05 | 2007-12-06 | Kabushiki Kaisha Toshiba | System and method for secure inter-process data communication |
KR101225374B1 (ko) | 2006-06-09 | 2013-01-22 | 삼성전자주식회사 | 이동 통신 단말에 대한 디바이스 관리 장치 및 방법 |
US20080016339A1 (en) | 2006-06-29 | 2008-01-17 | Jayant Shukla | Application Sandbox to Detect, Remove, and Prevent Malware |
US20080047009A1 (en) | 2006-07-20 | 2008-02-21 | Kevin Overcash | System and method of securing networks against applications threats |
US8788829B2 (en) | 2006-08-17 | 2014-07-22 | Aol Inc. | System and method for interapplication communications |
US7774599B2 (en) | 2006-09-15 | 2010-08-10 | Panasonic Corporation | Methodologies to secure inter-process communication based on trust |
US8201244B2 (en) * | 2006-09-19 | 2012-06-12 | Microsoft Corporation | Automated malware signature generation |
US9069957B2 (en) | 2006-10-06 | 2015-06-30 | Juniper Networks, Inc. | System and method of reporting and visualizing malware on mobile networks |
US7747575B2 (en) | 2006-11-07 | 2010-06-29 | Magix Ag | Application-specific intelligent backup and restore system |
US8087085B2 (en) | 2006-11-27 | 2011-12-27 | Juniper Networks, Inc. | Wireless intrusion prevention system and method |
US8225093B2 (en) | 2006-12-05 | 2012-07-17 | Qualcomm Incorporated | Providing secure inter-application communication for a mobile operating environment |
US7650317B2 (en) | 2006-12-06 | 2010-01-19 | Microsoft Corporation | Active learning framework for automatic field extraction from network traffic |
US7778792B2 (en) | 2006-12-08 | 2010-08-17 | Chumby Industries, Inc. | Systems and methods for location, motion, and contact detection and tracking in a networked audiovisual device |
JP4805116B2 (ja) | 2006-12-11 | 2011-11-02 | 株式会社日立製作所 | 情報処理システム、情報処理システムの制御方法、サービス利用装置及びサービス提供装置 |
US7945955B2 (en) | 2006-12-18 | 2011-05-17 | Quick Heal Technologies Private Limited | Virus detection in mobile devices having insufficient resources to execute virus detection software |
US8769099B2 (en) | 2006-12-28 | 2014-07-01 | Yahoo! Inc. | Methods and systems for pre-caching information on a mobile computing device |
US9021605B2 (en) | 2007-01-03 | 2015-04-28 | International Business Machines Corporation | Method and system for protecting sensitive data in a program |
US7996005B2 (en) | 2007-01-17 | 2011-08-09 | Eagency, Inc. | Mobile communication device monitoring systems and methods |
US8331987B2 (en) | 2007-04-19 | 2012-12-11 | Apple Inc. | Personal area network systems and devices and methods for use thereof |
JP2008271126A (ja) | 2007-04-19 | 2008-11-06 | Ntt Docomo Inc | 移動端末装置、移動端末装置の診断方法 |
JP4956292B2 (ja) | 2007-06-25 | 2012-06-20 | パナソニック株式会社 | 情報セキュリティ装置およびカウンタ制御方法 |
US8245295B2 (en) | 2007-07-10 | 2012-08-14 | Samsung Electronics Co., Ltd. | Apparatus and method for detection of malicious program using program behavior |
US8713680B2 (en) | 2007-07-10 | 2014-04-29 | Samsung Electronics Co., Ltd. | Method and apparatus for modeling computer program behaviour for behavioural detection of malicious program |
US7890443B2 (en) | 2007-07-13 | 2011-02-15 | Microsoft Corporation | Learning classifiers using combined boosting and weight trimming |
US20100199264A1 (en) | 2007-08-02 | 2010-08-05 | Naoto Maeda | Pattern inspection system, pattern inspection device, method and pattern inspection program |
CN101350054B (zh) | 2007-10-15 | 2011-05-25 | 北京瑞星信息技术有限公司 | 计算机有害程序自动防护方法及装置 |
WO2009088709A2 (en) | 2008-01-02 | 2009-07-16 | Sandisk Il Ltd. | Storage device having direct user access |
US8160975B2 (en) | 2008-01-25 | 2012-04-17 | Mcafee, Inc. | Granular support vector machine with random granularity |
US8719936B2 (en) | 2008-02-01 | 2014-05-06 | Northeastern University | VMM-based intrusion detection system |
US8595834B2 (en) | 2008-02-04 | 2013-11-26 | Samsung Electronics Co., Ltd | Detecting unauthorized use of computing devices based on behavioral patterns |
US7676573B2 (en) | 2008-02-08 | 2010-03-09 | Microsoft Corporation | Node monitor client cache synchronization for mobile device management |
US8320329B2 (en) | 2008-03-24 | 2012-11-27 | Cisco Technology, Inc. | Policy for a roaming terminal based on a home internet protocol (IP) address |
US20090288080A1 (en) | 2008-05-13 | 2009-11-19 | Partridge Lucas W | Method of Delivering Software Over a Network |
US8108323B2 (en) | 2008-05-19 | 2012-01-31 | Yahoo! Inc. | Distributed spam filtering utilizing a plurality of global classifiers and a local classifier |
US20090293121A1 (en) | 2008-05-21 | 2009-11-26 | Bigus Joseph P | Deviation detection of usage patterns of computer resources |
IL191744A0 (en) | 2008-05-27 | 2009-02-11 | Yuval Elovici | Unknown malcode detection using classifiers with optimal training sets |
US20090327168A1 (en) | 2008-06-26 | 2009-12-31 | Yahoo! Inc. | Playful incentive for labeling content |
JP2010016443A (ja) | 2008-07-01 | 2010-01-21 | Toshiba Corp | 状況認識装置、状況認識方法、及び無線端末装置 |
JP4710933B2 (ja) | 2008-07-09 | 2011-06-29 | ソニー株式会社 | 学習装置、学習方法、およびプログラム |
GB2461870B (en) | 2008-07-14 | 2012-02-29 | F Secure Oyj | Malware detection |
US8069128B2 (en) | 2008-08-08 | 2011-11-29 | Yahoo! Inc. | Real-time ad-hoc spam filtering of email |
US8775333B1 (en) | 2008-08-20 | 2014-07-08 | Symantec Corporation | Systems and methods for generating a threat classifier to determine a malicious process |
US8095964B1 (en) | 2008-08-29 | 2012-01-10 | Symantec Corporation | Peer computer based threat detection |
US8245315B2 (en) | 2008-09-10 | 2012-08-14 | Qualcomm Incorporated | Remote diagnosis of unauthorized hardware change |
US8504504B2 (en) | 2008-09-26 | 2013-08-06 | Oracle America, Inc. | System and method for distributed denial of service identification and prevention |
WO2010045596A1 (en) | 2008-10-16 | 2010-04-22 | Qualys, Inc. | Systems and methods for assessing the compliance of a computer across a network |
US8087067B2 (en) | 2008-10-21 | 2011-12-27 | Lookout, Inc. | Secure mobile platform system |
US8533844B2 (en) | 2008-10-21 | 2013-09-10 | Lookout, Inc. | System and method for security data collection and analysis |
US9235704B2 (en) | 2008-10-21 | 2016-01-12 | Lookout, Inc. | System and method for a scanning API |
US8347386B2 (en) | 2008-10-21 | 2013-01-01 | Lookout, Inc. | System and method for server-coupled malware prevention |
US9537613B2 (en) | 2008-10-24 | 2017-01-03 | Qualcomm Incorporated | Acknowledgment based on short cell radio network temporary identifier |
US20100107257A1 (en) | 2008-10-29 | 2010-04-29 | International Business Machines Corporation | System, method and program product for detecting presence of malicious software running on a computer system |
IL195081A0 (en) | 2008-11-03 | 2011-08-01 | Deutche Telekom Ag | Acquisition of malicious code using active learning |
JP4576452B2 (ja) | 2008-11-06 | 2010-11-10 | イーソル株式会社 | オペレーティングシステムおよび情報処理装置 |
DE102008043954A1 (de) | 2008-11-21 | 2010-05-27 | Robert Bosch Gmbh | Sensornetzwerksystem, Übertragunsprotokoll, Verfahren zum Wiedererkennen eines Objekts sowie Computerprogramm |
US8549625B2 (en) | 2008-12-12 | 2013-10-01 | International Business Machines Corporation | Classification of unwanted or malicious software through the identification of encrypted data communication |
US20100153371A1 (en) | 2008-12-16 | 2010-06-17 | Yahoo! Inc. | Method and apparatus for blending search results |
US20100192222A1 (en) | 2009-01-23 | 2010-07-29 | Microsoft Corporation | Malware detection using multiple classifiers |
US8793758B2 (en) | 2009-01-28 | 2014-07-29 | Headwater Partners I Llc | Security, fraud detection, and fraud mitigation in device-assisted services systems |
US20100192201A1 (en) | 2009-01-29 | 2010-07-29 | Breach Security, Inc. | Method and Apparatus for Excessive Access Rate Detection |
EP2222048A1 (en) | 2009-02-24 | 2010-08-25 | BRITISH TELECOMMUNICATIONS public limited company | Detecting malicious behaviour on a computer network |
US8266698B1 (en) * | 2009-03-09 | 2012-09-11 | Symantec Corporation | Using machine infection characteristics for behavior-based detection of malware |
US8763127B2 (en) | 2009-03-13 | 2014-06-24 | Rutgers, The State University Of New Jersey | Systems and method for malware detection |
US8490187B2 (en) | 2009-03-20 | 2013-07-16 | Microsoft Corporation | Controlling malicious activity detection using behavioral models |
US8683554B2 (en) | 2009-03-27 | 2014-03-25 | Wavemarket, Inc. | System and method for managing third party application program access to user information via a native application program interface (API) |
US8161130B2 (en) | 2009-04-10 | 2012-04-17 | Microsoft Corporation | Bottom-up analysis of network sites |
EP2425365A4 (en) | 2009-04-30 | 2016-08-24 | Ericsson Telefon Ab L M | DEVIATING BEHAVIOR OF A USER TERMINAL |
US8694624B2 (en) | 2009-05-19 | 2014-04-08 | Symbol Technologies, Inc. | Systems and methods for concurrent wireless local area network access and sensing |
US8356001B2 (en) | 2009-05-19 | 2013-01-15 | Xybersecure, Inc. | Systems and methods for application-level security |
WO2010141826A2 (en) | 2009-06-05 | 2010-12-09 | The Regents Of The University Of Michigan | System and method for detecting energy consumption anomalies and mobile malware variants |
US9074897B2 (en) | 2009-06-15 | 2015-07-07 | Qualcomm Incorporated | Real-time data with post-processing |
US8701192B1 (en) | 2009-06-30 | 2014-04-15 | Symantec Corporation | Behavior based signatures |
US20110013528A1 (en) | 2009-07-16 | 2011-01-20 | Chen Byron H | Method for providing presence and location information of mobiles in a wireless network |
US8776218B2 (en) | 2009-07-21 | 2014-07-08 | Sophos Limited | Behavioral-based host intrusion prevention system |
US8311956B2 (en) | 2009-08-11 | 2012-11-13 | At&T Intellectual Property I, L.P. | Scalable traffic classifier and classifier training system |
EP2474130B1 (en) | 2009-09-01 | 2017-01-25 | NEC Corporation | Method for monitoring a network and network including a monitoring functionality |
CA2712002C (en) | 2009-09-09 | 2016-08-30 | Aastra Technologies Limited | Diagnostics methods for a communications device |
US8509755B2 (en) | 2009-10-30 | 2013-08-13 | Research In Motion Limited | System and method for activating a component on an electronic device |
US8397301B2 (en) | 2009-11-18 | 2013-03-12 | Lookout, Inc. | System and method for identifying and assessing vulnerabilities on a mobile communication device |
EP2326057A1 (en) | 2009-11-20 | 2011-05-25 | British Telecommunications public limited company | Detecting malicious behaviour on a network |
US20110161452A1 (en) | 2009-12-24 | 2011-06-30 | Rajesh Poornachandran | Collaborative malware detection and prevention on mobile devices |
JP2011138219A (ja) | 2009-12-25 | 2011-07-14 | Toshiba Corp | 並列プログラム解析結果表示装置および並列プログラム解析結果表示方法 |
US20120254333A1 (en) | 2010-01-07 | 2012-10-04 | Rajarathnam Chandramouli | Automated detection of deception in short and multilingual electronic messages |
US8458809B2 (en) | 2010-01-20 | 2013-06-04 | Research In Motion Limited | Apparatus, and an associated method, for facilitating secure operations of a wireless device |
US20120331137A1 (en) | 2010-03-01 | 2012-12-27 | Nokia Corporation | Method and apparatus for estimating user characteristics based on user interaction data |
US20110219449A1 (en) | 2010-03-04 | 2011-09-08 | St Neitzel Michael | Malware detection method, system and computer program product |
KR101051641B1 (ko) | 2010-03-30 | 2011-07-26 | 주식회사 안철수연구소 | 이동통신 단말 및 이를 이용한 행위기반 악성 코드 진단 방법 |
US8694744B1 (en) | 2010-03-31 | 2014-04-08 | Emc Corporation | Mobile device snapshot backup |
US9043254B2 (en) | 2010-04-12 | 2015-05-26 | Siemens Aktiengesellschaft | Method for computer-aided closed-loop and/or open-loop control of a technical system |
EP3242465B1 (en) | 2010-04-26 | 2020-01-01 | BlackBerry Limited | Mobile wireless communications device providing enhanced file transfer management features and related methods |
US8570993B2 (en) | 2010-05-20 | 2013-10-29 | At&T Mobility Ii Llc | Wi-Fi intelligent selection engine |
DE102010021825A1 (de) | 2010-05-28 | 2011-12-01 | Christmann Informationstechnik + Medien Gmbh & Co. Kg | Mehrprozessor-Computersystem |
US9449175B2 (en) | 2010-06-03 | 2016-09-20 | Nokia Technologies Oy | Method and apparatus for analyzing and detecting malicious software |
CN101882000B (zh) | 2010-06-18 | 2012-08-22 | 华南理工大学 | 一种基于加速度传感器的手势识别方法 |
US20120180126A1 (en) | 2010-07-13 | 2012-07-12 | Lei Liu | Probable Computing Attack Detector |
US20120016633A1 (en) | 2010-07-16 | 2012-01-19 | Andreas Wittenstein | System and method for automatic detection of anomalous recurrent behavior |
US9294946B2 (en) | 2010-08-27 | 2016-03-22 | Qualcomm Incorporated | Adaptive automatic detail diagnostic log collection in a wireless communication system |
US8424093B2 (en) | 2010-11-01 | 2013-04-16 | Kaspersky Lab Zao | System and method for updating antivirus cache |
US8683591B2 (en) | 2010-11-18 | 2014-03-25 | Nant Holdings Ip, Llc | Vector-based anomaly detection |
US9100425B2 (en) | 2010-12-01 | 2015-08-04 | Cisco Technology, Inc. | Method and apparatus for detecting malicious software using generic signatures |
US20120151479A1 (en) | 2010-12-10 | 2012-06-14 | Salesforce.Com, Inc. | Horizontal splitting of tasks within a homogenous pool of virtual machines |
US9710645B2 (en) | 2010-12-23 | 2017-07-18 | Ebay Inc. | Systems and methods to detect and neutralize malware infected electronic communications |
US20120167218A1 (en) * | 2010-12-23 | 2012-06-28 | Rajesh Poornachandran | Signature-independent, system behavior-based malware detection |
US8762298B1 (en) | 2011-01-05 | 2014-06-24 | Narus, Inc. | Machine learning based botnet detection using real-time connectivity graph based traffic features |
CN102591696A (zh) | 2011-01-14 | 2012-07-18 | 中国科学院软件研究所 | 一种手机软件行为数据提取方法及系统 |
US9326698B2 (en) | 2011-02-18 | 2016-05-03 | The Trustees Of The University Of Pennsylvania | Method for automatic, unsupervised classification of high-frequency oscillations in physiological recordings |
US8695095B2 (en) | 2011-03-11 | 2014-04-08 | At&T Intellectual Property I, L.P. | Mobile malicious software mitigation |
US8554912B1 (en) | 2011-03-14 | 2013-10-08 | Sprint Communications Company L.P. | Access management for wireless communication devices failing authentication for a communication network |
JP5665188B2 (ja) | 2011-03-31 | 2015-02-04 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | ソフトウエア更新を適用した情報処理装置を検査するシステム |
US8533857B2 (en) | 2011-04-12 | 2013-09-10 | Teletech Holdings, Inc. | Methods for providing cross-vendor support services |
KR101906834B1 (ko) | 2011-04-19 | 2018-10-11 | 삼성전자주식회사 | 휴대단말기의 어플리케이션 리소스 선택장치 및 방법 |
US9323928B2 (en) | 2011-06-01 | 2016-04-26 | Mcafee, Inc. | System and method for non-signature based detection of malicious processes |
US8819471B2 (en) | 2011-06-03 | 2014-08-26 | Apple Inc. | Methods and apparatus for power state based backup |
US20120317306A1 (en) | 2011-06-10 | 2012-12-13 | Microsoft Corporation | Statistical Network Traffic Signature Analyzer |
US9152882B2 (en) | 2011-06-17 | 2015-10-06 | Microsoft Technology Licensing, Llc. | Location-aided recognition |
US9286182B2 (en) | 2011-06-17 | 2016-03-15 | Microsoft Technology Licensing, Llc | Virtual machine snapshotting and analysis |
CN102202102B (zh) | 2011-07-05 | 2014-08-13 | 施昊 | 基于云计算架构的网络服务聚合系统及其聚合方法 |
US8984581B2 (en) | 2011-07-27 | 2015-03-17 | Seven Networks, Inc. | Monitoring mobile application activities for malicious traffic on a mobile device |
US20130203440A1 (en) | 2011-07-27 | 2013-08-08 | Qualcomm Labs, Inc. | Selectively performing a positioning procedure at an access terminal based on a behavior model |
US8782412B2 (en) | 2011-08-31 | 2014-07-15 | AstherPal Inc. | Secured privileged access to an embedded client on a mobile device |
US20130066815A1 (en) | 2011-09-13 | 2013-03-14 | Research In Motion Limited | System and method for mobile context determination |
US9672355B2 (en) | 2011-09-16 | 2017-06-06 | Veracode, Inc. | Automated behavioral and static analysis using an instrumented sandbox and machine learning classification for mobile security |
US8793593B2 (en) | 2011-09-21 | 2014-07-29 | Facebook, Inc. | Integrating structured objects and actions generated on external systems into a social networking system |
US9529996B2 (en) | 2011-10-11 | 2016-12-27 | Citrix Systems, Inc. | Controlling mobile device access to enterprise resources |
CN104205114B (zh) | 2011-11-29 | 2018-08-07 | 索尼移动通信公司 | 用于提供安全的进程间通信的系统和方法 |
US9413538B2 (en) | 2011-12-12 | 2016-08-09 | Microsoft Technology Licensing, Llc | Cryptographic certification of secure hosted execution environments |
US9071636B2 (en) | 2011-12-21 | 2015-06-30 | Verizon Patent And Licensing Inc. | Predictive scoring management system for application behavior |
JP2015508540A (ja) | 2012-01-06 | 2015-03-19 | オプティオ ラブス リミテッド ライアビリティ カンパニー | モバイルコンピューティングにおけるセキュリティを強化するためのシステムおよび方法 |
US8943204B2 (en) | 2012-01-23 | 2015-01-27 | Cellco Partnership | Method and system for conserving network resources when sending information to mobile devices |
US9832211B2 (en) | 2012-03-19 | 2017-11-28 | Qualcomm, Incorporated | Computing device to detect malware |
US9439077B2 (en) | 2012-04-10 | 2016-09-06 | Qualcomm Incorporated | Method for malicious activity detection in a mobile station |
US9298494B2 (en) | 2012-05-14 | 2016-03-29 | Qualcomm Incorporated | Collaborative learning for efficient behavioral analysis in networked mobile device |
US9202047B2 (en) | 2012-05-14 | 2015-12-01 | Qualcomm Incorporated | System, apparatus, and method for adaptive observation of mobile device behavior |
US20130304677A1 (en) | 2012-05-14 | 2013-11-14 | Qualcomm Incorporated | Architecture for Client-Cloud Behavior Analyzer |
US9690635B2 (en) | 2012-05-14 | 2017-06-27 | Qualcomm Incorporated | Communicating behavior information in a mobile computing device |
US9609456B2 (en) | 2012-05-14 | 2017-03-28 | Qualcomm Incorporated | Methods, devices, and systems for communicating behavioral analysis information |
US9324034B2 (en) | 2012-05-14 | 2016-04-26 | Qualcomm Incorporated | On-device real-time behavior analyzer |
EP2680182B1 (en) | 2012-06-29 | 2016-03-16 | GSMK Gesellschaft für sichere Mobile Kommunikation mbH | Mobile device and method to monitor a baseband processor in relation to the actions on an application processor |
US20140032358A1 (en) | 2012-07-25 | 2014-01-30 | Aro, Inc. | Sharing Recommendation Agents |
US9319897B2 (en) | 2012-08-15 | 2016-04-19 | Qualcomm Incorporated | Secure behavior analysis over trusted execution environment |
US9747440B2 (en) | 2012-08-15 | 2017-08-29 | Qualcomm Incorporated | On-line behavioral analysis engine in mobile device with multiple analyzer model providers |
US9495537B2 (en) | 2012-08-15 | 2016-11-15 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US20140150100A1 (en) | 2012-08-15 | 2014-05-29 | Qualcomm Incorporated | Adaptive Observation of Driver and Hardware Level Behavioral Features on a Mobile Device |
US9330257B2 (en) | 2012-08-15 | 2016-05-03 | Qualcomm Incorporated | Adaptive observation of behavioral features on a mobile device |
US20140096246A1 (en) | 2012-10-01 | 2014-04-03 | Google Inc. | Protecting users from undesirable content |
US9686023B2 (en) | 2013-01-02 | 2017-06-20 | Qualcomm Incorporated | Methods and systems of dynamically generating and using device-specific and device-state-specific classifier models for the efficient classification of mobile device behaviors |
US10089582B2 (en) | 2013-01-02 | 2018-10-02 | Qualcomm Incorporated | Using normalized confidence values for classifying mobile device behaviors |
US9742559B2 (en) | 2013-01-22 | 2017-08-22 | Qualcomm Incorporated | Inter-module authentication for securing application execution integrity within a computing device |
US9491187B2 (en) | 2013-02-15 | 2016-11-08 | Qualcomm Incorporated | APIs for obtaining device-specific behavior classifier models from the cloud |
WO2014165230A1 (en) | 2013-03-13 | 2014-10-09 | Lookout, Inc. | System and method for changing security behavior of a device based on proximity to another device |
US20140279745A1 (en) | 2013-03-14 | 2014-09-18 | Sm4rt Predictive Systems | Classification based on prediction of accuracy of multiple data models |
-
2013
- 2013-11-26 US US14/090,261 patent/US9684870B2/en active Active
- 2013-12-30 KR KR1020157020512A patent/KR101826865B1/ko active IP Right Grant
- 2013-12-30 WO PCT/US2013/078352 patent/WO2014107439A2/en active Application Filing
- 2013-12-30 CN CN201380069119.8A patent/CN104885099B/zh active Active
- 2013-12-30 JP JP2015550850A patent/JP6258970B2/ja active Active
- 2013-12-30 EP EP13829028.3A patent/EP2941741A2/en not_active Withdrawn
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110145920A1 (en) * | 2008-10-21 | 2011-06-16 | Lookout, Inc | System and method for adverse mobile application identification |
CN101770453A (zh) * | 2008-12-31 | 2010-07-07 | 华建机器翻译有限公司 | 基于领域本体结合机器学习模型的汉语文本共指消解方法 |
Non-Patent Citations (2)
Title |
---|
AUBREY-DERRICK SCHMIDT等: "Static Analysis of Executables for Collaborative Malware Detection on Android", 《IEEE COMMUNICATIONS SOCIETY SUBJECT MATTER EXPERTS FOR PUBLICATION IN THE IEEE ICC 2009 PROCEEDINGS》 * |
JEAN-BAPTISTE FADDOUL等: "Boosting Multi-Task Weak Learners with Applications to Textual and Social Data", 《2010 NINTH INTERNATIONAL CONFERENCE ON MACHINE LEARNING AND APPLICATIONS》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107567628A (zh) * | 2015-05-07 | 2018-01-09 | 高通股份有限公司 | 用于使用针对增强型决策树桩的因果分析来识别和响应非良性行为的方法和系统 |
CN107567628B (zh) * | 2015-05-07 | 2019-07-12 | 高通股份有限公司 | 用于使用针对增强型决策树桩的因果分析来识别和响应非良性行为的方法和系统 |
CN108885662A (zh) * | 2016-04-22 | 2018-11-23 | 高通股份有限公司 | 用于智能地检测客户端计算装置和公司网络上的恶意软件和攻击的方法和系统 |
CN108573147A (zh) * | 2017-03-10 | 2018-09-25 | 武汉安天信息技术有限责任公司 | 一种恶意样本的筛选装置及方法 |
CN107741899A (zh) * | 2017-10-16 | 2018-02-27 | 北京小米移动软件有限公司 | 处理终端数据的方法、装置及系统 |
CN107741899B (zh) * | 2017-10-16 | 2021-07-27 | 北京小米移动软件有限公司 | 处理终端数据的方法、装置及系统 |
CN112583631A (zh) * | 2019-09-30 | 2021-03-30 | 瞻博网络公司 | 确定计算机系统事件的依赖原因 |
US11900273B2 (en) | 2019-09-30 | 2024-02-13 | Juniper Networks, Inc. | Determining dependent causes of a computer system event |
Also Published As
Publication number | Publication date |
---|---|
EP2941741A2 (en) | 2015-11-11 |
JP2016510451A (ja) | 2016-04-07 |
KR101826865B1 (ko) | 2018-02-07 |
JP6258970B2 (ja) | 2018-01-10 |
WO2014107439A2 (en) | 2014-07-10 |
US20140188781A1 (en) | 2014-07-03 |
WO2014107439A3 (en) | 2015-01-29 |
CN104885099B (zh) | 2018-05-08 |
US9684870B2 (en) | 2017-06-20 |
KR20150103173A (ko) | 2015-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104885099A (zh) | 使用推升式决策树桩和联合特征选择及剔选算法来对移动设备行为进行高效分类的方法和系统 | |
US10089582B2 (en) | Using normalized confidence values for classifying mobile device behaviors | |
JP6231688B2 (ja) | 重要なアプリケーションの選択的な保護のためにアプリケーション固有のモデルを生成する方法およびシステム | |
CN106133642B (zh) | 在移动设备中通过执行行为分析操作推断应用状态的方法和系统 | |
CN106716382B (zh) | 用于移动装置行为的聚集多应用程序行为分析的方法和系统 | |
US9721212B2 (en) | Efficient on-device binary analysis for auto-generated behavioral models | |
CN104541293B (zh) | 用于客户端‑云行为分析器的架构 | |
CN104303538B (zh) | 使用签名高速缓冲存储器来最小化行为分析的时延 | |
CN107580699A (zh) | 用于特定于行为的致动以实时白名单化的方法和系统 | |
US20160379136A1 (en) | Methods and Systems for Automatic Extraction of Behavioral Features from Mobile Applications | |
US20170024660A1 (en) | Methods and Systems for Using an Expectation-Maximization (EM) Machine Learning Framework for Behavior-Based Analysis of Device Behaviors | |
US20170046510A1 (en) | Methods and Systems of Building Classifier Models in Computing Devices | |
CN107209832A (zh) | 基于相似装置中的恶意代码检测来确定装置上的模型保护等级 | |
US20160078362A1 (en) | Methods and Systems of Dynamically Determining Feature Sets for the Efficient Classification of Mobile Device Behaviors | |
US20160285897A1 (en) | Methods and systems for identifying malware through differences in cloud vs. client behavior | |
CN106104555A (zh) | 用于保护外围设备的行为分析 | |
CN107567628A (zh) | 用于使用针对增强型决策树桩的因果分析来识别和响应非良性行为的方法和系统 | |
CN104903918A (zh) | 动态地产生和使用装置特定及装置状态特定的分类器模型以高效分类移动装置行为的方法及系统 | |
CN107924492A (zh) | 使用归一化置信值对移动设备行为进行分类 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |