CN107710687A - 用于检测应用异常的定制网络业务模型 - Google Patents

用于检测应用异常的定制网络业务模型 Download PDF

Info

Publication number
CN107710687A
CN107710687A CN201680038009.9A CN201680038009A CN107710687A CN 107710687 A CN107710687 A CN 107710687A CN 201680038009 A CN201680038009 A CN 201680038009A CN 107710687 A CN107710687 A CN 107710687A
Authority
CN
China
Prior art keywords
application
computing device
processor
behavior
classifications
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201680038009.9A
Other languages
English (en)
Inventor
S·M·达斯
M·马哈穆迪
V·斯里哈拉
R·古普塔
Y·陈
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN107710687A publication Critical patent/CN107710687A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Telephone Function (AREA)
  • Debugging And Monitoring (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

各个方面的系统、方法和设备实现了异常应用行为的识别。计算设备处理器可以检测该计算设备上的应用的网络通信活动。处理器可以识别计算设备的一个或多个设备状态以及应用的一个或多个类别。处理器可以基于所检测到的该应用的网络通信活动、该计算设备的所识别的一个或多个设备状态、以及该应用的所识别的一个或多个类别的相关性,来判断该应用是否是行为异常的。

Description

用于检测应用异常的定制网络业务模型
背景技术
便携式电子设备、计算设备和通信设备现在能够提供各种各样的功能和服务,这些功能和服务向它们的用户提供信息、资源和通信的空前水平的访问。为了提供这些服务,计算设备可能要在设备上执行一个或多个应用,此外,计算设备可能还要与一个或多个通信网络进行通信,其通常发送和/或接收用于所述一个或多个应用的信息。提供高级信息服务的计算设备越来越普遍,并且越来越依赖于执行可能涉及个人信息(例如,信用卡信息、联系人等等)的安全性的重要任务。这样的计算设备也日益地集成到物理系统中,例如用于监视患者的状况、儿童的安全以及机械(例如,车辆、制造机械等等)的物理控制等等。保持这种计算设备的完整性以防止故障和恶意攻击变得越来越重要。
发明内容
各个方面的系统、方法和设备使计算设备的处理器能够识别异常应用行为。各个方面包括:检测计算设备上的应用的网络通信活动;识别计算设备的一个或多个设备状态;识别所述应用的一个或多个类别;基于所检测到的网络通信活动、该计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的相关性,判断所述应用是否是行为异常的。
在一些方面,所述网络通信活动可以包括下面各项中的一个或多个:所述网络通信活动的网络业务模式、所述应用发送的信息的量、所述应用接收的信息的量、所述应用将信息发送到的目的地的数量、所述应用从其接收信息的源的数量、所述应用发送或者接收的信息的类型、所述应用使用的数据协议、以及与所述应用的所述网络通信活动有关的端口业务映射。
在一些方面,所述设备状态可以包括下面各项中的一个或多个:粗略运动分类器、设备位置和设备网络通信状态。在一些方面,基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的相关性,判断所述应用是否是行为异常的可以包括:基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别,来生成行为向量;将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量;基于将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量的结果,来判断所述应用是否是行为异常的。
此外,一些方面还可以包括:响应于确定所述应用是行为异常的,采取动作以限制应用行为。在一些方面,识别所述应用的一个或多个类别可以包括:对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析。在一些方面,对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析可以包括:基于所述计算设备上的所述应用生成的所述显示的多个屏幕截图来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
在一些方面,对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析可以包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。在一些方面,识别所述应用的一个或多个类别可以包括:对所述应用生成的音频信号进行分析;将所述分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。在一些方面,识别所述应用的一个或多个类别可以包括:对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;将所述分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
一些方面的系统、方法和设备使计算设备的处理器能够确定计算设备上的应用的类别。这些方面可以包括:生成用于表征所述计算设备上的所述应用生成的显示的一个或多个屏幕截图的特征向量;向所述特征向量应用分类器模型,其中,基于向所述特征向量应用所述分类器模型的结果来识别所述应用的一个或多个类别。在一些方面,向所述特征向量应用分类器模型可以包括:基于所述生成的特征向量来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
在一些方面,向所述特征向量应用分类器模型可以包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。
在一些方面,生成特征向量可以包括:对所述应用生成的音频信号进行分析;将所分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。在一些方面,生成特征向量可以包括:对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;将所分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
各个方面可以包括具有处理器的计算设备,该处理器配置有处理器可执行指令以执行上面所描述的方法的操作。各个方面可以包括一种计算设备,其中该计算设备包括用于执行上面所描述的方法的功能的单元。各个方面可以包括:配置为使计算设备处理器执行上面所描述的方法的操作的非临时性处理器可执行指令。
附图说明
被并入本文并且构成本说明书一部分的附图,描绘了示例性方面,并且连同上面给出的概括描述以及下面给出的详细描述一起来解释各个方面的特征。
图1是示出可以用于实现各个方面的示例性片上系统的体系结构图。
图2是示出适合于结合各个方面使用的应用行为表征系统中的示例性逻辑组件和信息流的框图。
图3是根据各个方面,示出用于识别异常应用行为的方法的处理流程图。
图4是根据各个方面,示出用于识别异常应用行为的方法的另一个处理流程图。
图5是根据各个方面,示出用于识别应用的类别以识别异常应用行为的方法的另一个处理流程图。
图6是根据各个方面,示出用于识别应用的类别以识别异常应用行为的方法的另一个处理流程图。
图7是示出适合于结合各个方面使用的移动设备的组件框图。
具体实施方式
现在参照附图来详细地描述各个方面。在可以的地方,贯穿附图使用相同的附图标记来指代相同或者类似的部件。对于特定示例和实现的引用只是用于说明目的,而不是旨在限制各个方面或者本发明的保护范围。
各个方面包括被配置为通过以下方式,实现对在计算设备上运行的应用的行为进行监测和分析的方法的方法、计算设备和系统:由计算设备的处理器检测该应用的网络通信活动,并且基于所检测的该应用的网络通信活动是否与该应用的类别相一致来判断该应用是否是行为异常的。
本文互换地使用术语“计算设备”、“移动设备”和“通信设备”来指代下面各项中的任何一种或全部:蜂窝电话、智能电话、个人或移动多媒体播放器、个人数据助理(PDA)、膝上型计算机、平板计算机、智能本、超级本、掌上型计算机、无线电子邮件接收机、具备多媒体互联网能力的蜂窝电话、无线游戏控制器、以及包括存储器和可编程处理器的类似个人电子设备。
本文使用术语“组件”、“模块”、“系统”等等旨在指代与计算机相关的实体,例如但不限于:配置为执行特定的操作或功能的硬件、固件、硬件和软件的结合、软件或运行中的软件。例如,模块、组件可以是,但不限于是:在处理器上运行的处理、处理器、对象、可执行文件、执行的线程、程序和/或计算机。举例而言,在通信设备上运行的应用和该通信设备都可以称为组件。一个或多个组件可以存在于处理和/或执行线程中,组件可以位于一个处理器或内核中和/或分布在两个或更多处理器或内核之间。此外,这些组件能够从其上存储有各种指令和/或数据结构的各种非临时性计算机可读介质中执行。组件可以通过本地和/或远程处理、函数或过程调用、电信号、数据分组、存储器读/写、以及其它已知的计算机、处理器和/或与处理有关的通信方法的方式进行通信。
计算设备已经发展成能够提供高级信息服务的复杂电子系统,现在通常包括一些功能强大的处理器、大容量存储器以及能够执行复杂的软件应用和通过通信网络进行通信的资源。各个方面通过对运行在计算设备上的应用的行为进行监视和分析并且判断该应用是否行为异常来维持计算设备的完整性以防止故障和恶意攻击。
在一些方面,计算设备可以使用行为分析系统。该行为分析系统可以检测在设备上运行的应用或者进程的异常行为。在一些方面,计算设备的处理器可以监视设备上的应用的网络活动,将该应用的网络活动与设备的状态进行相关以识别应用的行为异常(特别是网络交互行为)。在一些方面,处理器可以使用行为分类器模型,可以针对确定的应用类别来定制或者专门生成行为分类器模型,以分析可以通过一个或多个行为向量来表示的应用的行为。例如,一些应用程序应该预期使用最少的蜂窝数据,并且应该使用Wi-Fi通信链路来执行大多数网络操作,但可以使用蜂窝网络连接来执行某些对时间要求严格的应用。再举一个例子,可以期望应用将使用大量的网络通信,但是期望的网络通信可以是具有特定的数据类型、数据大小、具有特定的数据通信格式或者通信协议,或者可能预期具有某个通信源或者目的地,或者被限制在某个范围的通信源或目的地。再举一个例子,可能预期应用将最低限度地使用通信网络(如果有的话)。处理器可以基于应用的行为,自动地对应用进行分类。在一些方面,应用可能与一个以上的类别相关联。
在一些方面,处理器还可以将应用的行为与设备状态进行相关。例如,可以预期游戏应用在设备静止时将访问通信网络,但是当设备处于运动时(例如,当用户正在行走或跑步时(例如,如可以通过加速度计、GPS数据、接入点或者基站三角测量或通过其它方法来确定)),可以预期其将不参与网络通信活动。再举一个例子,当计算设备处于皮套或者包中时,可能不会预期照片应用会进行拍照和访问通信网络。因此,与设备状态相关的设备应用的网络活动可以是该应用的异常活动的指示。
在一些方面,处理器可以基于粗略运动分类器、设备位置跟踪分类器和/或网络通信状态,来识别计算设备的一个或多个设备状态。处理器可以基于检测到的设备的运动状态(例如,站立、行走、跑步、骑自行车和其它运动状态)来确定粗略运动分类器。处理器可以使用例如由计算设备接收的GPS数据、加速度计数据以及可以由计算设备计算或者接收的其它运动数据,来确定粗略运动分类器。
处理器可以基于该设备是否正在使用(即,正在经历运动、检测周围光水平、检测RF信号强度电平以及其它信息输入,在用户的手中或者穿在用户的身上)或者没有使用(即,在设备皮套中、在包中、在桌面上或者与未使用相一致的另一位置),来确定设备位置跟踪分类器。处理器可以基于通信设备是否连接到通信网络(例如,Wi-Fi网络、蜂窝网络、或二者,或者两者都不是),来确定网络通信状态。此外,处理器还可以基于与一个或多个通信网络通信的计算设备所发送或者接收的数据业务的量,来确定网络通信状态。
在一些方面,计算设备的处理器可以开发高级业务模型来分析应用行为和设备状态。例如,计算设备可以收集应用的与状态相关数据和网络业务数据,通过通信网络将该状态数据和网络业务数据发送给服务器以进行合并和分析。服务器可以使用来自许多设备的状态数据和网络业务数据,为应用类别(或者一些类别)开发定制模型,以训练更加高度定制的模型来检测该类别(或者一些类别)的应用中的异常网络活动。在一些方面,处理器可以基于设备限制(例如,低电池电量、有限网络连接速度、慢速处理器、低可用性存储器或者另一种设备限制),来减少在该设备上测试的特征的数量。
特定于应用的业务模型对于检测应用行为中的异常可能是有用的。例如,可以期望文本消息应用访问计算设备上的联系人列表,或者发送或接收图片或视频,或者发送文本消息,而可能不期望游戏应用执行这些活动中的任何活动。再举一个例子,可能期望某些应用为了注册的目的,发送诸如标识符或者其它设备特定信息之类的信息,而对于其它应用程序而言,这样的行为可能是明显恶意的。再举一个例子,与通信应用(例如,语音或者消息传递应用)相比,可能预期用于记笔记的应用几乎没有(如果有的话)网络流量。再举一个例子,在计算设备处于与步行或者骑自行车一致的运动时,可以预期游戏应用不使用网络通信,但是当计算设备静止,并且计算设备正在执行游戏应用时(即,用户正在玩游戏),可以预期其将使用网络通信。
在一些方面,处理器可以使用行为分析系统对在计算设备上运行的应用进行分类。处理器可以通过分析该应用在计算设备上生成的显示周期性拍摄的一个或多个屏幕截图,来识别在计算设备上运行的应用。处理器可以使用各种图像分析技术来分析所述一个或多个屏幕截图,还可以分析一系列屏幕截图中的改变。处理器可以确定分析的屏幕截图和/或分析的屏幕截图序列上的应用类别。
在一些方面,处理器可以判断所述一个或多个截图主要是文本还是主要是图像。例如,处理器可以通过分析所述一个或多个截图中的可检测的尖角,来使用“角计数”技术,这在文字中可能比在图像中更普遍。处理器还可以绘制灰度值或梯度范数的直方图(其对于图像来说是更多样化的),并且对于文本来说更多是二元的(例如,更严格地黑或白)。
在一些方面,处理器可以进一步区分视频和静止图像之间的图像。例如,与静止图像相比,处理器可以使用梯度分布来区分较低对比度的视频。此外,处理器还可以计算一系列屏幕截图之中的重叠或改变的百分比,其可以在来自视频的一系列屏幕截图中相对较高,在非常不同的屏幕截图序列中可能相对较低,正如相册应用或者类似应用所预期的那样。此外,处理器还可以计算异或(XOR)函数,以在来自视频的一系列屏幕截图中识别较高的重叠(即,较低的XOR)(与来自不同图像的一系列屏幕截图相反)。此外,处理器还可以确定一个或多个屏幕截图中的每一个的匹配描述符的数量,与来自不同图像的屏幕截图序列相比,在来自视频的屏幕截图序列中,该匹配描述符的数量更高。
在一些方面,处理器还可以分析由应用生成的音频信号和/或由应用生成的在计算设备的用户接口处接收的输入。处理器可以使分析的音频信号和/或分析的输入进行相关,以更精确地确定应用的类别。
各个方面可以在包括单一处理器和多处理器系统以及片上系统(SOC)的多种不同的计算设备中实现。图1是示出可以在实现本文各个方面的计算设备和系统中使用的示例性SOC 100架构的体系结构图。SOC 100可以包括多个异构处理器,例如,数字信号处理器(DSP)102、调制解调器处理器104、图形处理器106和应用处理器108。此外,SOC 100还可以包括连接到异构处理器102、104、106、108中的一个或多个的一个或多个协处理器110(例如,向量协处理器)。每一个处理器102、104、106、108、110可以包括一个或多个内核,每一个处理器/内核可以独立于其它处理器/内核来执行操作。例如,SOC 100可以包括执行第一类型的操作系统(例如,FreeBSD、LINUX、OS X等等)的处理器和执行第二类型的操作系统(例如,微软Windows 8)的处理器。调制解调器处理器104可以与天线104a进行通信,以实现例如与另一个设备或者与通信网络的无线通信的发送和接收。
SOC 100还可以包括用于管理传感器数据、模数转换、无线数据传输,以及用于执行其它专用操作(如,对用于游戏和电影的编码音频信号进行处理)的模拟电路和定制电路114。此外,SOC 100还可以包括系统组件和资源116,例如电压调整器、振荡器、锁相环、外围桥接、数据控制器、内存控制器、系统控制器、接入端口、定时器、以及用于支持这些处理器和客户端在计算设备上运行的其它类似组件。系统组件116和定制电路114可以包括用于与外围设备进行交互的电路,例如,照相机、电子显示器、无线通信设备、外部存储器芯片等等。处理器102、104、106和108可以经由互连/总线模块124(其可以包括可再配置逻辑门阵列和/或实现总线架构(例如,CoreConnect、AMBA等等))来互连到一个或多个存储器单元112、系统组件和资源116和定制电路114。可以通过诸如高性能片上网络(NoC)之类的高级互连来提供通信。
SOC 100还可以包括用于与该SOC之外的资源进行通信的输入/输出模块(没有示出),例如,时钟118和电压调整器120。SOC之外的资源(例如,时钟118、电压调整器120)可以由内部SOC处理器/内核(例如,DSP 102、调制解调器处理器104、图形处理器106、应用处理器108等等)中的两个或更多来实现。
此外,SOC 100还可以包括适合于从传感器收集传感器数据的硬件和/或软件组件,这些传感器包括扬声器、用户接口单元(例如,输入按键、触摸屏显示器等等)、麦克风阵列、用于监测物理状况(例如,位置、方向、运动、方位、振动、压力等等)的传感器、照相机、指南针、GPS接收机、通信电路(例如,蓝牙、WLAN、Wi-Fi等等)、以及现代电子设备的其它公知组件(例如,加速计等等)。
除了上面所讨论的SOC 100之外,可以利用各种各样的计算系统(其可以包括单一处理器、多个处理器、多核处理器或者其任意组合)来实现这些各个方面。
图2根据各个方面,示出了一个方面计算设备200中的示例性逻辑组件和信息流,其中该计算设备200包括配置为使用行为分析技术来表征应用的行为的应用行为特征系统220。在图2所示出的例子中,该计算设备包括配置有可执行指令模块的设备处理器(例如,图1的处理器102、104、106、108),其中这些可执行指令模块包括行为观测器模块202、特征提取器模块204、分析器模块206、执行器模块208和行为表征模块210。
行为观测器模块可以被配置为观测应用的行为(例如,网络通信活动、消息、指令、存储器访问、请求、数据转换和其它应用行为),还可以观测获得其它信息(例如,一个或多个设备状态)。行为观测器模块可以收集关于应用的行为信息、以及关于计算设备的其它信息,将所收集的信息存储在存储器中(例如,存储在日志文件等等中)。特征提取器模块可以使用所收集的关于应用的行为信息和关于计算设备的其它信息,以一个或多个行为向量的形式来生成该信息的表示。分析器模块可以将生成的行为向量与适合于该类型或类别的应用的一个或多个分类器模型进行比较,以评估该应用的行为,表征应用行为,并且判断被观测行为是否指示该应用是行为异常的。在一些方面,分析器模块还可以确定应用的类别。执行器模块可以响应于确定该应用是行为异常的,来发起或者推荐一个动作以修改应用行为。
每一个行为向量可以是包括或者封装一个或多个特征的数据结构或者信息结构。行为向量可以包括用于表示被观测应用行为的全部或者一部分的抽象数字或符号(即,特征)。每一个特征可以与下面的信息相关联:用于标识一系列可能的值的数据类型、可以关于这些值执行的操作、这些值的含义和其它类似的信息。行为表征系统可以使用该数据类型来确定应当如何对相应的特征(或者特征值)进行测量、分析、加权或者使用。
在一个方面,行为表征系统可以被配置为生成大小为“n”的行为向量,其将观测器实时数据映射到n维空间。行为向量中的每个数字或者符号(即,该向量所存储的“n”个值中的每个值)可以表示特征的值。行为表征系统可以对行为向量进行分析(例如,通过向各个类别的应用的模型应用行为向量,以评估被观测应用的行为)。在一些方面,行为表征系统还可以对所有应用行为和/或设备状态的行为评分进行组合或者聚合,例如,组合成总行为评分、加权的平均行为评分或者另一种聚合。在一些方面,可以基于被观测行为的特征来选择一个或多个权重。
在一个方面,行为表征系统可以被配置为存储各种类别的应用的模型。应用类别的模型可以标识应用类别的可观测行为的一个或多个特征,其中这些特征可以指示该应用是行为异常的。在一些方面,应用类别行为的模型可以存储在云服务器或者网络中,在大量的设备的模块之间共享,定期地或者按需地发送给每个通信设备,并基于应用的被观测行为在行为表征系统中进行定制。应用行为的一个或多个模型可以是分类器模型,或者可以包括在分类器模型中。在一些方面,行为分析系统可以调整行为向量的大小,以改变从应用行为中提取的特征的粒度。
分类器模型可以是一种行为模型,其包括能由设备处理器进行使用,以快速地和高效地测试或者评估被观测的应用行为的特征(例如,特定的因素、数据点、条目、API、状态、状况、行为、软件应用、进程、操作和/或组件等等)的数据、条目、决策节点、决策标准和/或信息结构。分类器模型可以包括更大或者更小的数据集,数据集的大小可能影响向该分类器模型应用行为向量所需要的处理的量。例如,“完整”分类器模型可以是根据较大的训练数据集来生成的较大并健壮的数据模型,其中该较大的训练数据集可以包括例如数千个特征和数亿个条目。再举一个例子,“精益”分类器模型可以是根据精简的数据集来生成的更聚焦的数据模型,其中该精简的数据集包括或者优先级划分关于以下的特征/条目的测试:与确定和表征特定的应用的行为最有关的特征/条目。在一些方面,行为分析系统可以改变用于分析行为向量的分类器模型的健壮性和/或大小。
本地分类器模型可以是在行为表征系统中生成的精益分类器模型。通过在行为表征系统中生成分类器模型(其中在该行为表征系统中使用该模型),各个方面允许每个计算设备基于行为表征系统可观测的特定应用行为,来准确地识别对于确定和表征具体被观测应用的行为来说最重要的特定特征。这些方面还可以允许每个计算设备根据它们对于应用的行为进行分类的相对重要性,来准确地对分类器模型中的特征划分优先级。
基于所生成的行为向量与所述一个或多个分类器模型的比较,每个通信设备的行为分析系统可以发起一个动作。在一些方面,响应于确定应用是行为异常的,该动作可以修改该应用的行为。在一些方面,该动作可以用于限制或者停止该应用的任何网络通信活动。
在各个方面,行为表征模块210中的全部或者一部分可以实现成行为观测器模块202、特征提取器模块204、分析器模块206或者执行器模块208的一部分。模块202-210中的每一个可以是利用软件、硬件或者其组合来实现的线程、进程、守护进程、模块、子系统或者组件。在各个方面,可以将模块202-210实现在操作系统的一部分中(例如,实现在内核中、实现在内核空间中、实现在用户空间中等等)、实现在单独的程序或应用中、实现在专用硬件缓冲区或处理器中、或者实现在其任意组合中。在一个方面,模块202-210中的一个或多个可以实现成在模块200的一个或多个处理器上执行的软件指令。
行为表征模块210可以被配置为表征应用的行为,基于观测的应用的行为来生成至少一个行为向量,将该应用的行为向量与至少一个分类器模型进行比较,并且基于所述至少一个行为向量与所述至少一个分类器模型的比较来判断该应用是否是行为异常的。行为表征模块210可以使用行为观测器模块202所收集的信息来确定应用的行为,并且使用任何或者所有这种信息来表征应用的行为。
行为观测器模块202可以通过监测数据网络活动,来监测应用的活动,其中数据网络活动可以包括连接的类型、协议、端口号、目的地和/或与该应用传输信息的目的地和/或源、建立的连接的数量、通信的量或者频率、使用的数据通信协议、端口业务映射等等。此外,行为观测器模块202还可以将该观测的通信信息与应用的大小(例如,APK文件的大小)进行相关。此外,行为观测器模块202还可以被配置为:基于消息、指令、存储器访问、请求、数据转换、活动、状况、操作、事件和其它应用行为,来观测应用的行为。此外,行为观测器模块202还可以监测电话网络活动,其可以包括发送、接收或者截取的呼叫或消息(例如,SMS等等)的类型和数量。行为观测器模块202还可以监测应用下载的软件或其它代码、应用所访问和/或使用的计算设备信息(例如,设备标识信息、用户标识信息、计算设备和/或用户帐户信息、联系人信息、关于计算设备上的其它应用的信息、呼叫信息、文本或媒体消息信息、计算设备位置信息、设备硬件信息(例如,关于设备照相机、加速计、GPS的信息)、浏览器信息、基于浏览器的通信的内容、基于语音的通信的内容、短距离无线电通信(例如,蓝牙、WiFi等等)、基于文本的通信的内容、记录的音频文件的内容、以及应用可以访问的计算设备上的其它信息。此外,行为观测器模块202还可以通过监测系统资源使用(其可以包括监测fork的数量、存储器访问操作、文件打开的数量等等),来监测应用的活动。
行为观测器模块202还可以监测计算设备的一个或多个状态。设备状态信息可以包括粗略运动分类器、设备位置跟踪分类器和网络通信状态中的一个或多个。行为观测器模块202可以基于检测到的设备的运动状态(例如,站立、行走、跑步、骑自行车和其它运动状态)来确定粗略运动分类器。行为观测器模块202可以使用例如由计算设备接收的GPS数据、加速度计数据以及可以由计算设备计算或者接收的其它运动数据,来确定粗略运动分类器。行为观测器模块202可以基于该设备是否正在使用(即,正在经历运动、检测周围光水平、检测RF信号强度电平以及其它信息输入,在用户的手中或者穿在用户的身上)或者没有使用(即,在设备皮套中、在包中、在桌面上或者与未使用相一致的另一位置),来确定设备位置跟踪分类器。行为观测器模块202可以基于通信设备是否连接到通信网络(例如,Wi-Fi网络、蜂窝网络、或二者,或者两者都不是),来确定网络通信状态。此外,行为观测器模块202还可以基于与一个或多个通信网络通信的计算设备所发送或者接收的数据业务的量,来确定网络通信状态。
应用的可观测行为元素的数量可能相对较大。为了将监测的行为元素的数量减少到可管理的水平,在一个方面,行为观测器模块202可以被配置为:通过对行为或因素的初始集合进行监测或观测,来执行粗观测,其中该初始集合是应用的所有可观测行为的一个较小子集。在一些方面,行为观测器模块202可以从服务器和/或云服务或网络中的组件接收该行为和/或因素的初始集合。在一些方面,可以在机器学习分类器模型中指定该行为/因素的初始集合。
行为观测器模块202可以将所收集的观测的行为数据传输给特征提取器模块204(例如,经由存储器写操作、函数调用等等)。特征提取器模块204可以被配置为接收或者获取该观测的行为数据(例如,从行为观测器模块、或者从诸如日志文件之类的存储器存贮设备),并且使用该信息来生成一个或多个行为表示。每一个行为向量可以简洁地描述一个值或者向量数据结构中的所观测的行为数据。在一些方面,该向量数据结构可以包括一系列数字,每一个数字表示行为观测器模块202所收集的应用行为数据的部分或者完整表示。
在一些方面,特征提取器模块204可以被配置为生成行为向量,使得它们充当为使行为分析系统(例如,分析器模块206)能够快速地认识、识别或者分析该应用行为数据的标识符。在一个方面,特征提取器模块204可以被配置为生成大小为“n”的行为向量,其每一个将应用行为映射到n维空间。在一个方面,特征提取器模块204可以被配置为生成行为向量,以包括能够输入到行为表征模块中的特征/决策节点的信息,以便针对关于该行为数据的一个或多个特征的查询来生成应答,从而表征该应用的行为。
特征提取器模块204可以将所生成的行为向量传输给分析器模块206(例如,经由存储器写操作、函数调用等等)。分析器模块206可以被配置为:将这些行为向量应用于分类器模型,以表征执行该应用的计算设备的被观测的行为,例如,表征成在正常操作参数内、或者表征成异常的。此外,分析器模块206可以被配置为将这些行为向量应用于分类器模型,以表征执行该应用的计算设备的行为。
每一个分类器模型可以是包括能由例如计算设备的处理器进行使用,以评估观测到的行为数据的特定特征或方面的数据和/或信息结构(例如,特征向量、行为向量、组件列表等等)的行为模型。每一个分类器模型还可以包括用于监测应用的多种特征、因素、数据点、条目、消息、指令、存储器调用、状态、状况、行为、进程、操作、组件等等(本文统称为“特征”)的决策标准。分类器模型可以预安装在计算设备上,从网络服务器下载或接收,在计算设备中生成或者是其任意组合。此外,还可以通过使用行为建模技术、机器学习算法、或者生成分类器模型的其它方法,来生成这些分类器模型。
每一个分类器模型可以是完整分类器模型或者精益分类器模型。完整分类器模型可以是根据大量的训练数据集所生成的健壮数据模型,其可以包括数千个特征和数亿个条目。精益分类器模型可以是根据精简数据集生成的更聚焦的数据模型,其仅仅分析或者测试对评估观测到的行为数据来说非常重要的特征/条目。可以使用精益分类器模型来分析行为向量,其中该行为向量包括能在应用中观测到的全部数量的特征和行为的一个子集。举例而言,处理器可以被配置为接收完整分类器模型,基于该完整分类器来生成该模块中的精益分类器模型,使用本地生成的精益分类器模型,对行为向量中收集和表示的应用行为数据进行评估。
本地生成的精益分类器模型是在行为表征系统中生成的精益分类器模型。每个行为表征系统可以针对每个应用,开发不同的精益分类器模型。此外,特征的不同组合可能需要在每一个行为表征系统和/或计算设备中进行监测和/或分析,以便该行为表征系统快速地和高效地评估被观测应用的行为。通常可以仅仅使用特定的行为表征系统从特定的应用获得的信息,来确定需要监测和分析的精确特征组合,以及每一个特征或者特征组合的相对优先级或重要性。由于这些和其它原因,本文的各个方面可以在使用分类器模型的计算设备中,生成这些模型。
本地分类器模型可以使设备处理器能够准确地识别对于评估该被观测应用的行为来说最重要的特定特征。此外,本地分类器模型还可以使设备处理器能够根据它们对于该被观测应用的行为进行评估的相对重要性,对要测试或者评估的特征划分优先级。
在一些方面,可以使用特定于应用的一个类别或者一些类别的分类器模型,其是一种包括聚焦的数据模型的分类器模型,其仅仅包括/测试:确定对于评估该应用的行为来说最相关的特定于被观测应用类别的特征/条目。通过在行为监测系统中本地地动态生成特定于应用的分类器模型,本文的各个方面使计算设备能够将监测和分析操作聚焦于很少数量的特征上,其中这些很少数量的特征对于评估该被观测应用的行为来说最重要、最适用和/或最相关。
在一个方面,分析器模块206可以被配置为:调整该分析器模块所评估的被观测应用行为的特征的细节的粒度或者水平,例如当被观测应用行为的分析特征是非决定的时。例如,分析器模块206可以被配置为:响应于确定其不能表征应用的行为,向行为观测器模块202进行通知。作为响应,行为观测器模块202可以基于从分析器模块206发送的通知(例如,基于观测的行为特征的分析结果的通知),改变进行监测的因素或者行为,和/或调整其观测的粒度(即,细节水平、特征的类型和/或数量、和/或对应用的行为进行观测的频率)。
此外,行为观测器模块还可以观测新的或者另外的应用行为,向特征提取器模块204和分析器模块206发送新的/另外的被观测行为数据来进行进一步分析/分类。行为观测器模块202和分析器模块206之间的这种反馈通信,使应用行为表征系统220能够递归地增加观测的粒度(即,更精细或者更频繁地观测),或者改变进行观测的实时数据,直到分析器模块可以评估和表征被观测应用的行为在某个范围的可靠性之内或者达到某个可靠性门限水平为止。此外,这种反馈通信还可以使行为表征系统220能够调整或修改行为向量和分类器模型,而无需消耗该计算设备的过度的处理、存储器或能量资源。在一些方面,行为表征系统还可以基于诸如以下之类的其它设备状况,减少或者限制进行观测和分析的特征的数量和/或类型:电池电量(例如,电池电量高于或低于门限)、网络连接速度(例如,数据速率和/或可用/可实现的带宽)、计算设备中的处理器的处理速度(例如,可用/可实现处理速度、或者处理的/排队的线程的数量是高于还是低于门限)。
计算设备可以使用完整分类器模型,来生成不同程度的复杂度(或者“精简性”)的一系列精益分类器模型。可以例行地应用该系列的精益分类器模型中的最精简模型(即,基于最少数量的测试条件的精益分类器模型),直到分析器模块确定其不能可靠地表征应用的行为为止。响应于这种确定,分析器模块可以向行为观测器模块和/或特征提取器模块提供反馈(例如,通知或者指令),以便使用该系列的所生成的精益分类器模型中的更健壮的分类器模型,直到分析器模块能够明确地表征应用的行为为止。用此方式,行为表征系统220可以通过将最完整、但资源密集型分类器模型的使用,限制于需要健壮的分类器模型来明确地表征被观测应用的行为的那些情形,在效率和准确性之间取得平衡。
在各个方面,计算设备可以被配置为:通过将完整分类器模型中包括的所观测行为数据的表示或者表达转换成增强型决策树桩,来生成精益分类器模型。计算设备可以基于被观测应用的行为的特定特征,来修剪或剔除该完全集合的增强型决策树桩,以生成包括有完整分类器模型中所包括的增强型决策树桩的一个子集的精益分类器模型。随后,计算设备可以使用该精益分类器模型,对被观测应用的行为进行智能地监测和表征。增强型决策树桩是只有一个节点(即,一个测试问题或者测试条件)和一个权重值的一级决策树,因此其非常适合于在数据/行为的轻量级、非处理器密集型二进制分类中使用。向增强型决策树桩应用行为向量可以导致二进制应答(例如,1或0、是或否等等)。例如,增强型决策树桩测试的问题/条件可以包括:应用是否在通过通信网络来发送或接收信息、或者应用是否在使用诸如照相机之类的设备硬件组件,针对它们的应答可以是二进制的。由于增强型决策树桩不需要显著的处理资源来生成二进制应答,因此它们是高效的。此外,增强型决策树桩还可以高度可并行化,因此可以并行地/在同一时间,应用或者测试多个树桩(例如,通过模块、计算设备或者系统中的多个内核或者处理器)。
此外,设备处理器还可以动态地生成特定于应用的分类器模型,后者标识与特定的软件应用和/或特定类别的软件应用(例如,游戏、导航、金融、新闻、生产力等等)有关的状况或特征。在一个方面,可以生成这些分类器模型以包括完整分类器模型中包括的精简并且更加聚焦的决策节点的子集或者根据所接收的完整分类器模型所生成的精益分类器模型中包括的那些。在各个方面,设备处理器可以被配置为针对系统中的每个软件应用和/或针对系统中的每个类别的软件应用,生成基于应用的分类器模型。在各个方面,设备处理器可以被配置为动态地、反应性地、主动地和/或在每次安装或更新新的应用时,生成基于应用的分类器模型。
通信设备200可以通过通信网络224(例如,经由图1的调制解调器处理器104和天线104a),与一个或多个网络服务器220进行通信。在一些方面,行为表征系统可以从网络服务器中下载应用类别的一个或多个行为模型。在一些方面,可以将所述一个或多个行为模型组织在类别树或者另一种类似的组织结构中。行为表征系统可以从一个或多个应用收集与网络业务有关的数据并进行存储,还可以将该与网络业务有关的数据和一个或多个应用类别进行关联。除了与网络业务有关的数据之外,行为表征系统还可以收集计算设备的与状态有关的数据,并且可以向网络服务器220发送该与状态有关的数据。
服务器220可以使用与网络业务有关的数据和与状态有关的数据,来生成用于一个或多个类别的应用的高级业务模型。例如,服务器220可以针对每个类别和设备状态,生成一种定制的模型,以训练一个或多个高级业务模型来检测应用的异常网络活动。因此,计算设备与服务器可以一起对新应用进行观测和分类,以及开发高级业务模型来更高效地识别应用的异常活动。在一些方面,服务器220可以向计算设备提供所述一个或多个高级业务模型,以便测试、收集另外的信息、以及进行业务模型的进一步精练。服务器220可以向其它计算设备222提供这些高级业务模型,另外,服务器220还可以向其它计算设备222提供应用类别模型,从其它计算设备222接收与网络业务有关的数据和与状态有关的数据。通过这样做,计算设备200、服务器220和其它计算设备222可以共同地收集应用行为和设备状态数据,使用非常大的数据信来生成高级业务模型,生成极度高效的高级业务模型来检测异常应用行为。
图3根据各个方面,示出了用于识别异常应用行为的方法300。方法300可以由处理内核或者设备处理器(例如,片上系统上的处理器(例如,图1中所示出的SOC 100上的处理器102、104、106和108)或者任何类似的设备处理器)来执行,方法300可以使用行为分析系统来观测和表征被观测模块的行为(例如,图2中的行为表征系统220)。
参见图1-3,在方框302中,处理器可以检测计算设备上的应用的网络通信活动。网络通信活动可以包括下面各项中的一个或多个:网络通信活动的网络业务模式、应用发送的信息的量、应用接收的信息的量、应用将信息发送到的目的地的数量、应用从其接收信息的源的数量、应用发送或者接收的信息的类型、应用使用的数据协议、以及与应用的网络通信活动有关的端口业务映射。
在方框304中,处理器可以基于粗略运动分类器、设备位置、和/或设备网络通信状态,来识别计算设备的一个或多个设备状态。处理器可以基于检测到的设备的运动状态(例如,站立、行走、跑步、骑自行车和其它运动状态)来确定粗略运动分类器。处理器可以使用例如由计算设备接收的GPS数据、加速度计数据以及可以由计算设备计算或者接收的其它运动数据,来确定粗略运动分类器。处理器可以基于该设备是否正在使用(即,正在经历运动、检测周围光水平、检测RF信号强度电平以及其它信息输入,在用户的手中或者穿在用户的身上)或者没有使用(即,在设备皮套中、在包中、在桌面上或者与未使用相一致的另一位置),来确定设备位置跟踪分类器。处理器可以基于通信设备是否连接到通信网络(例如,Wi-Fi网络、蜂窝网络、或二者,或者两者都不是),来确定网络通信状态。此外,处理器还可以基于与一个或多个通信网络通信的计算设备所发送或者接收的数据业务的量,来确定网络通信状态。
在方框306中,处理器可以识别应用的一个或多个类别。类别可以描述应用的通用分类,例如,消息、语音、导航、教育、社交、相册、照相机、浏览器、电子书阅读器、音乐播放器、媒体播放器、天气、笔记记录、计算器、应用商店、以及其它可能的通用分类。在一些方面,处理器可以使用行为表征系统来识别应用的一个或多个类别。
在方框308中,处理器可以将所检测到的网络通信活动、所识别的一个或多个设备状态、以及所识别的该应用的一个或多个类别进行相关。在判断框310中,处理器可以判断该应用是否是行为异常的。响应于确定该应用不是行为异常的(即,判断框310=“否”),处理器可以返回到方框302,重复方框302-310的操作。
响应于确定该应用是行为异常的(即,判断框310=“是”),在方框312中,处理器可以采取动作来修改应用行为。在一些方面,处理器可以采取动作来限制或者停止应用的任何网络通信活动。
图4根据各个方面,示出了用于识别异常应用行为的方法400。方法400可以由处理内核或者模块的设备处理器(例如,片上系统上的处理器(例如,图1中所示出的SOC 100上的处理器102、104、106和108)或者任何类似的设备处理器)来执行,方法400可以使用行为分析系统来观测和表征被观测模块的行为(例如,图2中的行为表征系统220)。在一些方面,设备处理器可以执行方框302-312中的操作,类似于参照方法300的方框302-312所描述的那些操作(参见图3)。
在方框304中,处理器可以基于粗略运动分类器、设备位置、和/或设备网络通信状态,识别计算设备的一个或多个设备状态。随后,处理器可以转到图5中所示出的方框502,下面将进行进一步描述。处理器可以从图5中所示出的方框516、528或532返回,在方框306中,处理器可以识别应用的一个或多个类别。
在方框402中,处理器可以基于所检测到的应用的网络通信活动、识别的设备状态、和/或识别的应用的类别,生成一个或多个行为向量。例如,特征提取器模块(例如,图2的特征提取器模块204)可以使用应用的网络通信活动、识别的设备状态、和/或识别的应用的类别,来生成一个或多个行为向量。在一些方面,特征提取器模块可以直接从行为观测器模块(例如,图2的行为观测器模块202)或者从存储器位置或数据结构(例如,缓冲区、日志文件或者另一个类似的存储位置)获得观测的应用行为和/或设备状态信息。
在方框404中,处理器可以向特定于在方框306中所确定的应用类别的一个或多个分类器模型或者针对该应用类别所生成的一个或多个分类器模型,应用所生成的一个或多个行为向量。例如,如果在方框306中确定的应用类别是文本或者文字处理器,则分析器模块(例如,图2的分析器模块206)可以将所生成的一个或多个行为向量应用于一个或多个文本或文字处理器分类器模型(对比游戏、浏览器或者社交媒体分类器模型)。分析器模块可以被配置为向分类器模型应用行为向量,以表征被观测应用的行为(例如,表征成正常的操作参数,或者表征成异常的)。
基于所生成的一个或多个行为向量与所述一个或多个分类器模型的比较,在判断框310中,处理器可以判断该应用是否是行为异常的。响应于确定该应用不是行为异常的(即,判断框310=“否”),处理器可以返回到方框302,重复方框302-310的操作。响应于确定该应用是行为异常的(即,判断框310=“是”),在方框312中,处理器可以采取动作来修改应用行为。在一些方面,处理器可以采取动作来限制或者停止应用的任何网络通信活动。
图5根据各个方面,示出了用于基于在方法300或者方法400的方框306中的可观测方面,对应用进行分类的方法306a。方法306a可以由处理内核或者设备处理器(例如,片上系统上的处理器(例如,图1中所示出的SOC 100上的处理器102、104、106和108)或者任何类似的设备处理器)来执行,方法306a可以使用行为分析系统来观测和表征被观测模块的行为(例如,图2中的行为表征系统220)。
可以在如上所述的方法300或方法400的方框304之后执行方法306a。在方框502中,处理器可以获得在计算设备上运行的应用所生成的显示的一个或多个屏幕截图。所述一个或多个屏幕截图可以按照紧密的顺序进行,或者顺序地间隔一段时间。处理器可以获得所述一个或多个屏幕截图,以捕获运行的应用所生成的显示活动。
在方框504中,处理器可以对应用生成的音频信号进行分析。处理器可以将应用的音频信号使用成另外的数据,以便更准确地对应用进行分类。例如,游戏应用、视频流应用、或者媒体播放器应用可以生成可识别成音乐的音频信号,而电子书阅读器或者消息应用可以生成作为反馈的音频信号,其是相对不频繁的并可与音乐相区分。再举一个例子,与流媒体视频或者媒体播放器应用的视频相比,游戏应用可以使用更高音的声音。此外,游戏应用可以使用高度重复或者周期性声音,其可以与流媒体视频或媒体播放器应用的音频信号相区分。
在方框506中,处理器可以分析与该应用有关并在用户接口处接收的输入。处理器可以使用与该应用有关的用户接口输入作为另外的输入,以便更准确地对应用进行分类。例如,流媒体视频或者媒体播放器应用可以具有较少的(如果有的话)用户接口交互。再举一个例子,用于web浏览器应用的相册应用可以以相对特定和可识别模式(例如,向上和向下滚动、向侧面滚动、敲击键盘区域、以及其它类似的用户接口输入)来接收用户接口输入。再举一个例子,可以预期游戏应用涉及更多的更大频率和多种多样的用户接口输入。
在方框508中,处理器可以对所述一个或多个屏幕截图进行分析。在一些方面,处理器可以使用各种图像分析技术来分析所述一个或多个屏幕截图,还可以分析一系列屏幕截图中的改变。在一些方面,处理器可以判断所述一个或多个屏幕截图主要是文本还是主要是图像。例如,处理器可以通过分析所述一个或多个截图中的可检测的尖角,来使用“角计数”技术,这在文字中可能比在图像中更普遍。在一些方面,可以将角规定成两个边的交叉点,或者可以将角定义成:在点的局部邻域中,在不同的边缘方向上存在两个主导的点。举例而言,电子书阅读器应用、显示新闻文章的浏览器应用和消息应用可能显示大量的主要文本,与图像相比,其可能包括更多的更高平均数量的角。相反,显示照片的浏览器应用、相册应用或者视频应用(举例而言)可以包括更少的平均数量的角。
此外,处理器还可以绘制灰度值或梯度范数的直方图,其对于图像来说是更多样化的,对于文本来说更多是二元的(例如,更严格地黑或白)。举例而言,在电子书阅读器应用、显示新闻文章的浏览器应用或者消息应用中,直方图可能集中于两块:背景颜色和前景颜色(例如,白色背景和黑色文本)。相比而言,在显示照片的浏览器应用、相册应用或者视频应用中,直方图可以是更平滑地反映更高数量的活动块,这是由于图像中的颜色具有更大的变化。
在一些方面,处理器可以进一步区分视频和静止图像的屏幕截图。例如,与静止图像相比,处理器可以使用梯度分布来区分较低对比度的视频(即,与来自视频的屏幕截图序列相比,静止图像序列(比如,来自相册应用)可能呈现更大的变化)。此外,处理器还可以计算一系列屏幕截图之中的重叠或改变的百分比,其可以在来自视频的一系列屏幕截图中相对较高(例如,来自于媒体播放器应用或者视频流媒体应用),在非常不同的屏幕截图序列中可能相对较低(例如,来自于相册应用、浏览器中的图像序列、或者来自于类似的应用)。此外,处理器还可以计算异或(XOR)函数,以在来自视频的一系列屏幕截图中识别较高的重叠(即,较低的XOR)(与来自不同图像的一系列屏幕截图相反)。此外,处理器还可以确定一个或多个屏幕截图中的每一个的匹配描述符的数量,与来自不同图像的屏幕截图序列相比,在来自视频的屏幕截图序列中,该匹配描述符的数量更高。
在一些方面,处理器可以以相对较高水平的粒度来识别用于应用的一个或多个类别。例如,处理器可以将应用识别成游戏应用,另外,处理器可以使用用于区分来自各种类型的游戏应用的屏幕截图的一个或多个处理,将游戏应用区分成动作游戏(例如,在一屏与一屏之间呈现相对较高的运动)、棋盘游戏(例如,在一屏与一屏之间呈现相对较低的运动或者静态运动)等等。
在一些方面,处理器还可以将某些应用识别成元应用,其是呈现与基于文本的应用和基于图像的应用相关联的行为的应用,比如web浏览器。例如,处理器可以确定一个或多个屏幕截图呈现可使用基于文本的应用来识别的特性、以及可使用基于图像的应用来识别的特性,并基于这种确定,将应用识别成元应用。
在方框510中,处理器可以将分析的屏幕截图、分析的音频信号和分析的用户接口进行相关。处理器可以将分析的音频信号和/或分析的输入进行相关,以便更准确地确定应用的类别或者类别集。
在判断框512中,处理器可以判断应用是基于文本的应用还是基于图像的应用、或者这二者的某种组合。响应于确定应用是基于文本的应用(即,判断框512=“基于文本”),在方框514中,处理器可以将该应用的类别识别成基于文本。在方框516中,处理器可以识别基于文本的应用的类型。例如,处理器可以使用一个或多个图像分析处理(例如,上面所描述的图像分析技术中的一个或多个)来判断应用是否是消息应用、电子书阅读器、教育应用和/或另一种基于文本的应用。随后,处理器可以转到方法300的方框306或者方法400的方框402,如上所述。
响应于确定应用是基于图像的应用(即,判断框512=“基于图像”),在方框522中,处理器可以分析连续的屏幕截图,以便在静止图像应用和视频应用之间区分该应用。例如,处理器可以使用一个或多个图像分析处理(例如,上面所描述的技术中的一个或多个)来判断所述一个或多个屏幕截图是呈现与静止图像序列更一致的特性,还是呈现与来自视频的图像序列更一致的特性。
在判断框524中,处理器可以判断该应用是静止图像应用还是视频应用。响应于确定该应用是静止图像应用(即,判断框524=“静止图像”),在方框526中,处理器可以将该应用的类别识别成静止图像。在方框528中,处理器可以识别静止图像应用的类型。例如,处理器可以使用一个或多个图像分析处理(例如,上面所描述的图像分析技术中的一个或多个)来判断应用是否是相册应用、棋盘游戏、照片处理应用、绘画应用和/或另一种静止图像应用。随后,处理器可以转到方法300的方框306或者方法400的方框402,如上所述。
响应于确定该应用是视频应用(即,判断框524=“视频”),在方框530中,处理器可以将该应用的类别识别成视频。在方框320中,处理器可以识别视频应用的类型。例如,处理器可以使用一个或多个图像分析处理(例如,上面所描述的图像分析技术中的一个或多个)来判断应用是否是流媒体应用、视频应用、动作游戏、视频编辑应用和/或另一种视频应用。随后,处理器可以转到方法300的方框306或者方法400的方框402,如上所述。
图6根据一个方面,示出了用于使用特征向量和分类器模型,基于在方法300或者方法400的方框306中的可观测方面,对应用进行分类的方法306b。方法306B可以由处理内核或者设备处理器(例如,片上系统上的处理器(例如,图1中所示出的SOC 100上的处理器102、104、106和108)或者任何类似的设备处理器)来执行,方法306b可以使用行为分析系统来观测和表征被观测模块的行为(例如,图2中的行为表征系统220)。
可以在如上所述的方法300或方法400的方框304之后执行方法306b。在方框502中,处理器可以获得在计算设备上运行的应用所生成的显示的一个或多个屏幕截图,如上面参照图5所描述的。在方框602中,处理器可以对应用所生成的音频信号进行分析,以识别音频信号的一个或多个特征。在方框604中,处理器可以对于与该应用有关的在用户接口处接收的输入进行分析,以识别用户接口输入的一个或多个特征。在方框606中,处理器可以使用一个或多个图像分析技术来分析所述一个或多个屏幕截图,以识别这些屏幕截图的一个或多个特征。例如,行为观测器模块(如,图2的行为观测器模块202)可以接收和/或分析该应用所生成的显示拍摄的一个或多个屏幕截图、该应用生成的音频信号和/或与该应用有关的用户接口输入,可以向特征提取器模块(例如,图2的特征提取器模块204)提供所接收的关于该应用的信息。
在方框608中,处理器可以生成用于表征从所述一个或多个屏幕截图、音频信号和/或该应用的用户接口输入提取的特征的一个或多个行为向量。例如,特征提取器模块可以使用所分析的一个或多个屏幕截图、音频信号和/或用户接口输入的特征,来生成一个或多个行为向量。在一些方面,特征提取器模块可以直接从行为观测器模块获得关于一个或多个屏幕截图、音频信号和/或用户接口输入的信息,或者从存储器位置或数据结构(例如,缓冲区、日志文件或者另一个类似的存储位置)获得该信息。
在方框610中,处理器可以向所述一个或多个分类器模型应用所述一个或多个行为向量。例如,分析器模块(例如,图2的分析器模块206)可以向一个或多个分类器模型应用所生成的一个或多个行为向量。分析器模块可以被配置为向分类器模型应用这些行为向量,以将应用的类别表征或者识别成基于文本的、基于图像的或者元应用。
在将应用的类别识别成基于文本的、基于图像的或者元应用之后,例如,处理器可以执行方框514-532的操作,如针对于参照图5的方法500的类似编号框所描述的。随后,处理器可以转到方法300的方框306或者方法400的方框402,如上所述。
各个方面通过以下方式来改进了现有的解决方案:使用行为分析和/或机器学习技术来监测和评估在计算设备上运行的应用的行为,以判断观测的应用是否是行为异常的,具体而言,判断观测的应用的网络活动是否与该应用的一个或多个识别的类别相一致。计算设备使用行为分析或者机器学习技术来评估被观测应用的行为是重要的,这是由于当前的计算设备和电子系统是极端复杂的系统,每个应用的可观测行为/特征/因素的不同组合可能在每个设备或系统中需要不同的分析,以便该设备评估应用的行为。在一些情况下,可以使用从特定的被观测模块获得的信息,来确定观测器模块可以进行监测的行为和/或特征的精确组合。由于这些和其它原因,现有的解决方案并不足以评估被观测模块在高度复杂和不同系统或设备中的异常行为,而不会消耗大量的该系统或者设备的处理、存储器和/或功率资源。
各个方面(其包括上面参照图1-6所讨论的方面)可以在各种各样的计算设备上实现,其一个例子是图7中所示出的移动通信设备700。移动计算设备700可以包括耦合到内部存储器704、显示器712,以及耦合到扬声器714的处理器702。处理器702可以是被设计为实现通用任务或特定处理任务的一个或多个多核集成电路。内部存储器704可以是易失性存储器或非易失性存储器,还可以是安全和/或加密存储器,或者非安全和/或非加密存储器、或者其任意组合。移动通信设备700可以具有用于发送和接收通信的两个或更多无线电信号收发机708(例如,Peanut、Bluetooth、Zigbee、Wi-Fi、RF无线电等等)和天线710,它们彼此之间相耦合并耦合到处理器702。另外,移动通信设备700还可以包括用于发送和接收电磁辐射的天线710,后者可以连接到耦合到处理器702的无线数据链路和/或收发机708。移动通信设备700可以包括耦合到处理器702和天线710的一个或多个蜂窝网络无线调制解调器芯片716,其实现经由两种或更多无线接入技术,通过两个或更多蜂窝网络进行通信。
移动通信设备700可以包括耦合到处理器702的外围设备连接接口718。外围设备连接接口718可以被单独地配置为接受一种类型的连接,或者被配置为接受多种类型的物理和通信连接、共同或专有连接(例如,USB、火线、Thunderbolt或PCIe)。此外,外围设备连接接口718还可以耦合到类似配置的外围设备连接端口(没有示出)。此外,移动通信设备700还可以包括用于提供音频输出的扬声器714。此外,移动通信设备700还可以包括使用塑料、金属、或材料的组合构成的壳体720,以包含本文所讨论的所有部件或者一些部件。移动通信设备700可以包括耦合到处理器702的电源722,例如一次性或可充电电池。此外,该可充电电池还可以耦合到外围设备连接端口,以便从移动通信设备700之外的源接收充电电流。此外,移动通信设备700还可以包括用于接收用户输入的物理按键724。此外,移动通信设备700还可以包括用于打开和关闭移动通信设备700的电源按键726。
处理器702可以是任何可编程微处理器、微计算机或者多处理器芯片或芯片集,它们可以由软件指令(应用)进行配置以执行各种各样的功能,其包括下面所描述的各个方面的功能。在一些移动通信设备中,可以提供多个处理器702,例如,一个处理器专用于无线通信功能,一个处理器专用于运行其它应用。通常,在访问软件应用并将它们装载到处理器702之前,可以将这些软件应用存储在内部存储器704中。处理器702可以包括足够用于存储这些应用软件指令的内部存储器。在各个方面,处理器712可以是设备处理器、处理内核或者SOC(例如,图1中所示出的示例性SOC 100)。在一个方面,移动通信设备700可以包括SOC,处理器702可以是SOC中包括的处理器里的一个(例如,图1中所示出的处理器102、104、106、108和110中的一个)。
用于在可编程处理器上运行以执行本文的各个方面的操作的计算机代码或程序代码,可以利用诸如C、C++、C#、Smalltalk、Java、JavaScript、Visual Basic、结构化查询语言(例如,Transact-SQL)、Perl之类的高级编程语言来编写,或者利用各种其它编程语言来编写。如本申请所使用的计算机可读存储介质上所存储的程序代码或程序,可以指代其格式是处理器可理解的机器语言代码(例如,目标代码)。
将很多移动计算设备操作系统内核组织到用户空间(非特权代码运行的空间)和内核空间(特权代码运行的空间)。这种分隔在和其它通用公共许可证(GPL)环境中具有特别的重要性,其中在这些环境中,作为内核空间的一部分的代码必须是GPL许可的,而在用户空间中运行的代码可以不是GPL许可的。应当理解的是,这里所讨论的各种软件组件/模块可以实现在内核空间中,也可以实现在用户空间中,除非另外明确指出。
上述的方法描述和处理流程图仅仅是用作为说明性例子,而不是旨在要求或者隐含着必须以所给出的顺序来执行各个方面的操作。如本领域普通技术人员所应当理解的,可以以任何顺序来执行上述的方面中的操作顺序。此外,诸如“其后”、“转而”、“接着”等等之类的词语,并不旨在限制这些操作的顺序;这些词语仅仅只是用于引导读者遍历该方法的描述。此外,任何对权利要求元素的单数引用(例如,使用冠词“一个(a)”、“某个(an)”或者“该(the)”),不应被解释为将该元素限制为单数形式。
结合本文所公开的方面描述的各种示例性的逻辑框、模块、电路和算法操作均可以实现成电子硬件、计算机软件或二者的组合。为了清楚地表示硬件和软件之间的这种可交换性,上面对各种示例性的部件、框、模块、电路和操作均围绕其功能进行了总体描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离各个方面的保护范围。
用于执行本文所述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件部件或者其任意组合,可以用来实现或执行结合本文所公开的方面描述的用于实现各种示例性的逻辑、逻辑框、模块和电路的硬件。通用处理器可以是多处理器,或者,该处理器也可以是任何常规的处理器、控制器、微控制器或者状态机。处理器也可以实现为计算设备的组合,例如,DSP和多处理器的组合、若干多处理器、一个或多个多处理器与DSP内核的结合,或者任何其它此种结构。替代地,一些操作或方法可以由特定于给定的功能的电路来执行。
在一个或多个示例性方面,本文所述功能可以用硬件、软件、固件或它们任意组合的方式来实现。当在软件中实现时,可以将这些功能存储成非临时性计算机可读存储介质或者非临时性处理器可读存储介质上的一个或多个处理器可执行指令或代码。本文所公开的方法或算法的操作,可以体现在处理器可执行软件模块中,后者可以位于非临时性计算机可读存储介质或处理器可读存储介质上。非临时性计算机可读或处理器可读存储介质可以是计算机或处理器能够存取的任何存储介质。举例而言,但非做出限制,这种非临时性计算机可读介质或者处理器可读介质可以包括RAM、ROM、EEPROM、闪存、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备、或者能够用于存储具有指令或数据结构形式的期望的程序代码并能够由计算机进行存取的任何其它介质。如本申请所使用的,磁盘和光盘包括压缩光盘(CD)、激光光盘、光盘、数字通用光盘(DVD)、软盘和蓝光光盘,其中磁盘通常磁性地复制数据,而光盘则用激光来光学地复制数据。上述的组合也应当包括在非临时性计算机可读介质和处理器可读介质的保护范围之内。另外,一种方法或算法的操作可以作为一个代码和/或指令集或者其任意组合,位于非临时性处理器可读介质和/或计算机可读介质上,其中该非临时性处理器可读介质和/或计算机可读介质可以并入到计算机程序产品中。
为使本领域任何普通技术人员能够实现或者使用各个方面,上面围绕所公开的方面进行了描述。对于本领域普通技术人员来说,对这些方面的各种修改是显而易见的,并且,本文定义的总体原理也可以在不脱离各个方面的精神或保护范围的基础上应用于其它方面。因此,各个方面并不限于本申请所示出的方面,而是与所附权利要求书和本文公开的原理和新颖性特征的最广范围相一致。

Claims (30)

1.一种由计算设备的处理器识别异常应用行为的方法,包括:
检测计算设备上的应用的网络通信活动;
识别所述计算设备的一个或多个设备状态;
识别所述应用的一个或多个类别;以及
基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的相关性,来判断所述应用是否是行为异常的。
2.根据权利要求1所述的方法,其中,所述网络通信活动包括下面各项中的一个或多个:所述网络通信活动的网络业务模式、所述应用发送的信息的量、所述应用接收的信息的量、所述应用将信息发送到的目的地的数量、所述应用从其接收信息的源的数量、所述应用发送或者接收的信息的类型、所述应用使用的数据协议、以及与所述应用的所述网络通信活动有关的端口业务映射。
3.根据权利要求1所述的方法,其中,所述一个或多个设备状态包括下面各项中的一个或多个:粗略运动分类器、设备位置、以及设备网络通信状态。
4.根据权利要求1所述的方法,其中,基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的相关性,来判断所述应用是否是行为异常的包括:
基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别,来生成行为向量;
将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量;以及
基于将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量的结果,来判断所述应用是否是行为异常的。
5.根据权利要求1所述的方法,还包括:
响应于确定所述应用是行为异常的,采取动作以限制应用行为。
6.根据权利要求1所述的方法,其中,识别所述应用的一个或多个类别包括:对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析。
7.根据权利要求6所述的方法,其中,对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析包括:基于所述计算设备上的所述应用生成的所述显示的多个屏幕截图来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
8.根据权利要求7所述的方法,其中,对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。
9.根据权利要求6所述的方法,其中,识别所述应用的一个或多个类别包括:
对所述应用生成的音频信号进行分析;以及
将所述分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
10.根据权利要求6所述的方法,其中,识别所述应用的一个或多个类别包括:
对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;以及
将所述分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
11.一种由计算设备的处理器确定所述计算设备上的应用的类别的方法,包括:
生成用于表征所述计算设备上的所述应用生成的显示的一个或多个屏幕截图的特征向量;以及
向所述特征向量应用分类器模型,其中,基于向所述特征向量应用所述分类器模型的结果来识别所述应用的一个或多个类别。
12.根据权利要求11所述的方法,其中,向所述特征向量应用分类器模型,其中,基于向所述特征向量应用所述分类器模型的结果来识别所述应用的一个或多个类别包括:基于所述生成的特征向量来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
13.根据权利要求12所述的方法,其中,向所述特征向量应用分类器模型,其中,基于向所述特征向量应用所述分类器模型的结果来识别所述应用的一个或多个类别包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。
14.根据权利要求11所述的方法,其中,生成特征向量包括:
对所述应用生成的音频信号进行分析;以及
将所述分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
15.根据权利要求11所述的方法,其中,生成特征向量包括:
对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;以及
将所述分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
16.一种计算设备,包括:
处理器,其配置有处理器可执行指令以执行包括以下的操作:
检测计算设备上的应用的网络通信活动;
识别所述计算设备的一个或多个设备状态;
识别所述应用的一个或多个类别;以及
基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的相关性,来判断所述应用是否是行为异常的。
17.根据权利要求16所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得所述网络通信活动包括下面各项中的一个或多个:所述网络通信活动的网络业务模式、所述应用发送的信息的量、所述应用接收的信息的量、所述应用将信息发送到的目的地的数量、所述应用从其接收信息的源的数量、所述应用发送或者接收的信息的类型、所述应用使用的数据协议、以及与所述应用的所述网络通信活动有关的端口业务映射。
18.根据权利要求16所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得所述一个或多个设备状态包括下面各项中的一个或多个:粗略运动分类器、设备位置、以及设备网络通信状态。
19.根据权利要求16所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别的所述相关性,来判断所述应用是否是行为异常的包括:
基于所述检测到的所述应用的网络通信活动、所述计算设备的所识别的一个或多个设备状态、以及所述应用的所识别的一个或多个类别,来生成行为向量;
将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量;以及
基于将适合于所述应用的所述一个或多个类别的一个或多个分类器模型应用于所述生成的行为向量的结果,来判断所述应用是否是行为异常的。
20.根据权利要求16所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行还包括下面的操作:
响应于确定所述应用是行为异常的,采取动作以限制应用行为。
21.根据权利要求16所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得识别所述应用的一个或多个类别包括:对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析。
22.根据权利要求21所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析包括:基于所述计算设备上的所述应用生成的所述显示的多个屏幕截图来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
23.根据权利要求22所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得对所述计算设备上的所述应用生成的显示的一个或多个屏幕截图进行分析包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。
24.根据权利要求21所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得识别所述应用的一个或多个类别包括:
对所述应用生成的音频信号进行分析;以及
将所述经分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
25.根据权利要求21所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得识别所述应用的一个或多个类别包括:
对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;以及
将所述分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
26.一种计算设备,包括:
处理器,其配置有处理器可执行指令以执行包括以下的操作:
生成用于表征所述计算设备上的应用生成的显示的一个或多个屏幕截图的特征向量;以及
向所述特征向量应用分类器模型,其中,基于向所述特征向量应用所述分类器模型的结果来识别所述应用的一个或多个类别。
27.根据权利要求26所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得向所述特征向量应用分类器模型包括:基于所述生成的特征向量来判断所述应用是基于图像的应用、基于文本的应用、还是元应用。
28.根据权利要求27所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得向所述特征向量应用分类器模型包括:响应于确定所述应用是基于图像的应用,判断所述应用是静止图像应用还是视频应用。
29.根据权利要求26所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得生成特征向量包括:
对所述应用生成的音频信号进行分析;以及
将所述分析的音频信号与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
30.根据权利要求26所述的计算设备,其中,所述处理器配置有处理器可执行指令以执行操作,使得生成特征向量包括:
对于与所述应用有关的在所述计算设备的用户接口处接收的输入进行分析;以及
将所述分析的所述用户接口处的输入与所述计算设备上的所述应用生成的所述显示的一个或多个屏幕截图进行相关运算。
CN201680038009.9A 2015-06-29 2016-05-25 用于检测应用异常的定制网络业务模型 Pending CN107710687A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/753,666 2015-06-29
US14/753,666 US10021123B2 (en) 2015-06-29 2015-06-29 Customized network traffic models to detect application anomalies
PCT/US2016/034060 WO2017003593A1 (en) 2015-06-29 2016-05-25 Customized network traffic models to detect application anomalies

Publications (1)

Publication Number Publication Date
CN107710687A true CN107710687A (zh) 2018-02-16

Family

ID=56131617

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680038009.9A Pending CN107710687A (zh) 2015-06-29 2016-05-25 用于检测应用异常的定制网络业务模型

Country Status (3)

Country Link
US (1) US10021123B2 (zh)
CN (1) CN107710687A (zh)
WO (1) WO2017003593A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414603A (zh) * 2019-07-29 2019-11-05 中国工商银行股份有限公司 用于检测移动设备的方法、装置、计算机系统和介质
CN110460488A (zh) * 2019-07-01 2019-11-15 华为技术有限公司 业务流识别方法和装置、模型生成方法和装置
CN111052708A (zh) * 2018-06-15 2020-04-21 微软技术许可有限责任公司 识别电子设备的异常使用
CN112363388A (zh) * 2020-11-05 2021-02-12 广东技术师范大学 一种基于连接关系观测器的复杂网络节点动态分类控制方法

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX366590B (es) 2013-07-21 2019-07-15 Mobility View Inc Sistema, dispositivo inteligente y metodo de reparticion de las operaciones y de los costes de un dispositivo inteligente.
WO2017087840A1 (en) * 2015-11-20 2017-05-26 Webroot Inc. Binocular fusion analytics security
US10893059B1 (en) 2016-03-31 2021-01-12 Fireeye, Inc. Verification and enhancement using detection systems located at the network periphery and endpoint devices
US10826933B1 (en) 2016-03-31 2020-11-03 Fireeye, Inc. Technique for verifying exploit/malware at malware detection appliance through correlation with endpoints
US10063579B1 (en) * 2016-06-29 2018-08-28 EMC IP Holding Company LLC Embedding the capability to track user interactions with an application and analyzing user behavior to detect and prevent fraud
US10218718B2 (en) * 2016-08-23 2019-02-26 Cisco Technology, Inc. Rapid, targeted network threat detection
US10135868B1 (en) * 2017-03-30 2018-11-20 Symantec Corporation Defeating wireless signal interference hacks by manipulating signal strength
US10231104B2 (en) * 2017-06-08 2019-03-12 T-Mobile Usa, Inc. Proactive and reactive management for devices in a network
US20190034254A1 (en) * 2017-07-31 2019-01-31 Cisco Technology, Inc. Application-based network anomaly management
US20190174319A1 (en) * 2017-12-01 2019-06-06 Seven Networks, Llc Detection and identification of potentially harmful applications based on detection and analysis of malware/spyware indicators
CN116055170B (zh) * 2023-01-10 2024-01-23 北京微步在线科技有限公司 一种流量数据检测方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004012063A2 (en) * 2002-07-30 2004-02-05 Asgard Holding, Llc Intrusion detection system
US20080163372A1 (en) * 2006-12-28 2008-07-03 Matrix Xin Wang Anti-virus system for IMS network
US20090326690A1 (en) * 2006-07-19 2009-12-31 Daniele Turchetta Audio watermarking technique for motion picture presentations
US20120002839A1 (en) * 2010-06-30 2012-01-05 F-Secure Corporation Malware image recognition
US20120210431A1 (en) * 2011-02-11 2012-08-16 F-Secure Corporation Detecting a trojan horse
US20130247187A1 (en) * 2012-03-19 2013-09-19 Qualcomm Incorporated Computing device to detect malware

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6401210B1 (en) * 1998-09-23 2002-06-04 Intel Corporation Method of managing computer virus infected files
US20030229810A1 (en) * 2002-06-05 2003-12-11 Bango Joseph J. Optical antivirus firewall for internet, LAN, and WAN computer applications
US7529754B2 (en) 2003-03-14 2009-05-05 Websense, Inc. System and method of monitoring and controlling application files
JP2004302543A (ja) * 2003-03-28 2004-10-28 Ntt Docomo Inc 受信装置およびプログラム
WO2008039241A1 (en) * 2006-04-21 2008-04-03 Av Tech, Inc Methodology, system and computer readable medium for detecting and managing malware threats
US20080047009A1 (en) 2006-07-20 2008-02-21 Kevin Overcash System and method of securing networks against applications threats
US20150195181A1 (en) * 2010-09-30 2015-07-09 Google Inc. Testing of dynamic web content applications
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
US20130183951A1 (en) 2012-01-12 2013-07-18 Shih-Wei Chien Dynamic mobile application classification
US8544060B1 (en) * 2012-01-27 2013-09-24 Symantec Corporation Method and system for detecting and protecting against potential data loss from unknown applications
US8806644B1 (en) 2012-05-25 2014-08-12 Symantec Corporation Using expectation measures to identify relevant application analysis results
US9396320B2 (en) * 2013-03-22 2016-07-19 Nok Nok Labs, Inc. System and method for non-intrusive, privacy-preserving authentication
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
US20160330233A1 (en) * 2015-05-07 2016-11-10 Cyber-Ark Software Ltd. Systems and Methods for Detecting and Reacting to Malicious Activity in Computer Networks
US9838405B1 (en) * 2015-11-20 2017-12-05 Symantec Corporation Systems and methods for determining types of malware infections on computing devices

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004012063A2 (en) * 2002-07-30 2004-02-05 Asgard Holding, Llc Intrusion detection system
US20090326690A1 (en) * 2006-07-19 2009-12-31 Daniele Turchetta Audio watermarking technique for motion picture presentations
US20080163372A1 (en) * 2006-12-28 2008-07-03 Matrix Xin Wang Anti-virus system for IMS network
US20120002839A1 (en) * 2010-06-30 2012-01-05 F-Secure Corporation Malware image recognition
US8844039B2 (en) * 2010-06-30 2014-09-23 F-Secure Corporation Malware image recognition
US20120210431A1 (en) * 2011-02-11 2012-08-16 F-Secure Corporation Detecting a trojan horse
US20130247187A1 (en) * 2012-03-19 2013-09-19 Qualcomm Incorporated Computing device to detect malware

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111052708A (zh) * 2018-06-15 2020-04-21 微软技术许可有限责任公司 识别电子设备的异常使用
US11245543B2 (en) 2018-06-15 2022-02-08 Microsoft Technology Licensing, Llc Identifying abnormal usage of electronic device
CN110460488A (zh) * 2019-07-01 2019-11-15 华为技术有限公司 业务流识别方法和装置、模型生成方法和装置
CN110460488B (zh) * 2019-07-01 2022-10-18 华为技术有限公司 业务流识别方法和装置、模型生成方法和装置
CN110414603A (zh) * 2019-07-29 2019-11-05 中国工商银行股份有限公司 用于检测移动设备的方法、装置、计算机系统和介质
CN110414603B (zh) * 2019-07-29 2022-02-22 中国工商银行股份有限公司 用于检测移动设备的方法、装置、计算机系统和介质
CN112363388A (zh) * 2020-11-05 2021-02-12 广东技术师范大学 一种基于连接关系观测器的复杂网络节点动态分类控制方法
CN112363388B (zh) * 2020-11-05 2023-07-04 广东技术师范大学 一种基于连接关系观测器的复杂网络节点动态分类控制方法

Also Published As

Publication number Publication date
WO2017003593A1 (en) 2017-01-05
US20160381057A1 (en) 2016-12-29
US10021123B2 (en) 2018-07-10

Similar Documents

Publication Publication Date Title
CN107710687A (zh) 用于检测应用异常的定制网络业务模型
CN106133642B (zh) 在移动设备中通过执行行为分析操作推断应用状态的方法和系统
CN107077547B (zh) 使用针对高效连续认证的行为分析的方法和系统
Cruciani et al. Feature learning for human activity recognition using convolutional neural networks: A case study for inertial measurement unit and audio data
CN107567628B (zh) 用于使用针对增强型决策树桩的因果分析来识别和响应非良性行为的方法和系统
CN106716382B (zh) 用于移动装置行为的聚集多应用程序行为分析的方法和系统
CN107851154B (zh) 存储器层次结构监测系统和方法
CN105830080B (zh) 使用特定于应用和特定于应用类型的模型进行移动设备行为的高效分类的方法和系统
CN107580699A (zh) 用于特定于行为的致动以实时白名单化的方法和系统
CN107408178A (zh) 用于通过云与客户端行为的差异来识别恶意软件的方法及系统
CN104885099A (zh) 使用推升式决策树桩和联合特征选择及剔选算法来对移动设备行为进行高效分类的方法和系统
CN107209825A (zh) 经由存储器监测的数据流跟踪
CN106796627A (zh) 用于基于用户角色信息来进行移动设备行为的行为分析的方法和系统
Chaudhry et al. Design of a mobile face recognition system for visually impaired persons
CN107250945A (zh) 用于检测由于rf干扰引起的故障的设备上行为分析
CN111522987A (zh) 一种图像审核方法、设备及计算机可读存储介质
CA3204311A1 (en) Method and system for securely deploying an artificial intelligence model
JP2023176023A (ja) 分散型データ分析のためのシステムおよび方法
CN110532838A (zh) 对象检测装置和方法及存储介质
Middya et al. Privacy protected user identification using deep learning for smartphone-based participatory sensing applications
CN110197375A (zh) 一种相似用户识别方法、装置、相似用户识别设备和介质
CN107690627A (zh) 交叉模块行为验证
Desai Applying Deep learning techniques-Masked facial recognition in Smartphone security systems using transfer learning
CN111599417A (zh) 溶解度预测模型的训练数据获取方法及装置
Nguyen et al. UIT-ANPR: toward an open framework for automatic number plate recognition on smartphones

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180216

WD01 Invention patent application deemed withdrawn after publication