CN109690548A - 基于设备属性和设备风险因素的计算设备保护 - Google Patents
基于设备属性和设备风险因素的计算设备保护 Download PDFInfo
- Publication number
- CN109690548A CN109690548A CN201780051799.9A CN201780051799A CN109690548A CN 109690548 A CN109690548 A CN 109690548A CN 201780051799 A CN201780051799 A CN 201780051799A CN 109690548 A CN109690548 A CN 109690548A
- Authority
- CN
- China
- Prior art keywords
- equipment
- calculating equipment
- content
- attribute
- risk
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Virology (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
计算设备向风险确定***传送请求以确定特定的内容是否是恶意软件。所述内容常常是包含要被运行的程序的文件,但是可以可替代地采取其他形式,并且对该内容的指示被提供至该风险确定***。描述计算设备的属性的额外的信息也被提供至该风险确定***。这些属性可以包括计算设备硬件技术参数、操作***技术参数、匿名化信息、描述杀毒或其他反恶意软件程序设置的信息、描述在计算设备上运行的程序的信息等。风险确定***分析描述计算设备的属性和/或活动的信息以确定内容的风险因素,并且从该风险因素来确定该内容是否是该计算设备的恶意软件。
Description
背景技术
随着计算技术的发展,计算设备已经变得越来越互联化。尽管该增加的互联性给用户提供了对大量信息和其他设备的访问,但它不是没有问题的。一个这样的问题是用户的设备暴露于各种不同的威胁,包括恶意用户尝试在所述用户的设备上安装各种不同的恶意软件程序。仍然难以针对这样的威胁来保护计算设备。
发明内容
提供了该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于限制所要求保护的主题的范围。
根据一个或多个方面,获得对计算设备的属性的描述,并且可选地确定计算设备的活动。从该计算设备接收对要在该计算设备处被访问的内容的指示。基于该计算设备的属性和/或该计算设备的活动来确定该计算设备的风险因素,并且使用该计算设备的风险因素以及对该内容的指示来确定该内容在该计算设备上是否是恶意软件。将对该内容在该计算设备上是否被确定为恶意软件的指示传送至该计算设备。
根据一个或多个方面,收集对计算设备的属性的描述。将对计算设备的属性的描述传送至风险确定***,并且也将针对关于内容在该计算设备处是否是恶意软件的确定的指示传送至风险确定***。从风险确定***接收对该内容是否是恶意软件的指示,该指示是基于该计算设备的风险因素的,该计算设备的风险因素是基于该计算设备的属性和/或该计算设备的活动的。
附图说明
参考附图描述了具体实施方式。在附图中,附图标记中最左边的数字标识了该附图标记第一次出现的图。在说明书和附图中的不同实例中使用相同的附图标记可以指示相似或相同的项。在附图中所表示的实体可以指示一个或多个实体,并因此可以在以下的讨论中可交换地指代单数或复数形式的实体。
图1示出了根据一个或多个实施例的示例***,其现实了基于设备属性和设备风险因素的计算设备保护。
图2示出了根据一个或多个实施例的示例风险确定***。
图3和图4是流程图,其示出了根据一个或多个实施例的用于基于设备属性和设备风险因素来实现计算设备保护的示例过程。
图5示出了示例***,其包括代表可以实现在本文中所描述的各种技术的一个或多个***和/或设备的示例计算设备。
具体实施方式
在本文中讨论了基于设备属性和设备风险因素的计算设备保护。风险确定***通常能够通过诸如互联网之类的网络由计算设备访问。当内容在计算设备上被访问时,计算设备将对内容的指示发送至风险确定***。内容常常是包含要运行的程序的文件,但可替代地可以采取其他形式。所述指示可以采取各种形式,例如表示该内容、该内容的行为、或者内容本身的哈希值或摘要(digest)值。对内容进行访问是指对该内容采取的动作,例如运行该内容、下载或者以其他方式将该内容存储在计算设备上、将该内容安装在计算设备上,等等。
还向风险确定***提供描述计算设备的属性的额外信息。这些属性可以包括例如:计算设备硬件技术参数、计算设备的操作***技术参数、与计算设备的用户相关的匿名化的信息、描述计算设备上的杀毒或其他反恶意程序设置的信息、描述在计算设备上运行的程序的信息、其组合,等等。
描述计算设备的活动的额外信息也被提供至风险确定***或者由风险确定***确定。计算设备活动是指计算设备被使用的量或者使用计算设备的频率。例如,计算设备活动可以是该计算设备每周被使用的天数、该计算设备每天被使用的小时数,等等。被使用的计算设备是指被上电并且运行一个或多个程序(例如,不在睡眠或休眠模式下)的计算设备。
风险确定***分析描述计算设备的属性的信息以确定该内容在该计算设备上的风险因素。该风险因素是指示该计算设备在未来某一时间受到恶意软件感染的概率或可能性的评分或值。接着,基于对该内容的指示以及针对计算设备的风险因素来进行该内容是否是恶意软件的确定。风险因素是基于计算设备的属性确定的,因此针对该内容的恶意软件确定不是仅基于对该内容的指示的。这可以引起具有不同属性的不同计算设备针对同一内容有不同的恶意软件确定。
在本文中所讨论的技术允许在确定特定内容是否是恶意软件时将与计算设备本身有关的信息考虑在内。恶意软件是指有恶意或有敌意的内容,其通常被设计为攻击、控制、或者以其他方式干扰用户对其计算设备的期望使用。在例如对特定内容的指示被已知为与安全内容或恶意软件相对应的一些情况下,则针对该内容的恶意软件确定(例如,是恶意软件或不是恶意软件)可以以高置信度被确定。然而,在对特定内容的指示不已知为对应于安全内容或者恶意软件的情况下,对计算设备的属性的使用允许风险确定***确定与该计算设备相关联的风险因素,并且因此以较高的置信度来进行针对该内容的恶意软件确定,和/或改变计算设备与该内容进行交互的方式。例如,一组计算设备X可以具有一组特定的属性A,并且与具有另一组属性B的一组计算设备Y相比,更容易受到恶意软件的感染。因此,风险确定***可以指示针对该组计算设备X比该组计算设备Y更高的风险因素,并且因此在该内容在该组计算设备X上被访问的情况下,相比于该内容在该组计算设备Y上被访问时,更有可能确定该内容是恶意软件和/或改变其关于该内容的行为。
图1示出了根据一个或多个实施例的示例***100,其现实了基于设备属性和设备风险因素的计算设备保护。***100包括多(m)个计算设备102,其中每个可以经由网络106与风险确定***104进行通信。网络106可以是多种不同的网络,包括互联网、局域网(LAN)、公共电话网络、内联网、或者其他公共和/或私有网络、其组合,等等。
每个计算设备102可以是多种不同类型的设备,例如台式计算机、服务器计算机、膝上型或上网本计算机、移动设备(例如,平板或板式设备、蜂窝或其他无线电话(例如,智能电话)、笔记本计算机、移动站)、可穿戴设备(例如,眼镜、头戴式显示器、手表、手环)、娱乐设备(例如,娱乐家电、可通信地耦合至显示设备的机顶盒、游戏机)、物联网(IoT)设备(例如,具有允许与其他设备通信的软件、固件、和/或硬件的对象或事物)、电视机或其他显示设备、车载计算机,等等。因此,每个计算设备102的范围可以从具有大量存储器和处理器资源的全资源设备(例如,个人计算机、游戏机)到具有受限的存储器和/或处理资源的低资源设备(例如,传统机顶盒、手持式游戏机)。不同的计算设备102可以是相同或不同类型的计算设备。
风险确定***104是由可以每个是多种不同类型的计算设备的一个或多个设备来实现。类似于对计算设备102的讨论,风险确定***104可以由范围从具有大量存储器和处理器资源的满资源设备到具有受限的存储器和/或处理资源的低资源设备的设备来实现。
每个计算设备102包括设备属性确定模块112和风险检查模块114。针对每个计算设备102,该计算设备102的设备属性确定模块112确定该计算设备102的各种属性。这些属性可以包括例如:计算设备硬件技术参数、计算设备的操作***技术参数、与计算设备的用户相关的匿名化的信息、描述计算设备上的杀毒或其他反恶意程序设置的信息、描述在计算设备上运行的程序的信息、其组合,等等,如在下文中详细讨论的。
针对每个计算设备102,该计算设备102的风险检查模块114检查内容在该计算设备102上是否是恶意软件(或者针对该内容在该计算设备102上是恶意软件的风险因素或可能性进行检查)。风险检查模块114通过将对该内容的指示以及特定计算设备102的属性提供至风险确定***104来执行该检查。风险确定***104分析对内容的指示以及特定计算设备102的属性,并且返回对该内容是否是恶意软件的指示。
风险检查模块114可以检查各种不同类型的内容。在一个或多个实施例中,内容是可以在计算设备102处被运行的程序。所述程序可以是二进制文件,或者可替代地是被执行、解译、或者以其他方式运行的另一文件或数据结构。额外地或可替代地,所述内容可以采取其他形式,例如所显示的视频内容、可听见地回放的音频内容,等等。
风险检查模块114获得对内容的指示。风险检查模块114可以生成该指示,或者可替代地可以从其他地方(例如,从计算设备102的另一组件或模块)获得该对内容的指示。该对内容的指示可以采取各种形式,例如,通过将哈希函数(例如,加密哈希函数)应用至该内容(整个内容或内容的一部分)所生成的哈希值、内容本身、将该内容唯一地标识到风险确定***104的另一标识符,等等。
风险检查模块114可以在各种不同时间检查内容。在一个或多个实施例中,风险检查模块114在内容被运行时检查该内容。风险检查模块114可以在每次内容被运行时,或者可替代地较不频繁地检查该内容。例如,风险检查模块114可以在内容第一次被运行时检查该内容,但在该同一内容每次被重新运行时不重新检查该内容。可以以各种方式来确定内容是否是同一内容(例如,通过应用哈希函数以生成针对该内容的哈希值,并且验证当该内容随后被运行时该哈希值没有改变)。额外地或可替代地,风险检查模块114可以在其他时间检查内容,例如当内容被计算设备102下载或者以其他方式获取时。
针对每个计算设备102,除了对内容的指示,该计算设备102的风险检查模块114还向风险确定***104提供该计算设备102的属性。风险检查模块114可以将计算设备102的属性以及对内容的指示提供至风险确定***104(例如,在同时),或者可替代地,在不同时间。例如,计算设备102可以将计算设备102的属性提供至风险确定***102,其存储所述属性。当风险检查模块114随后将对内容的指示提供至风险确定***102时(例如,可以是数小时、数天、数星期等之后),风险确定***102取回所存储的计算设备102的属性。
设备属性确定模块112确定计算设备102的属性。设备属性确定模块112可以以各种方式来确定计算设备102的属性,并且可以从相同和/或不同的源获得不同的属性。例如,设备属性确定模块112可以针对所述属性对在计算设备102上运行的操作***或其他程序进行查询,例如,通过调用由在计算设备102上运行的操作***或其他程序展现的应用编程接口(API)方法。作为另一示例,设备属性确定模块112可以从各种数据存储(例如,操作***存储、计算设备102的硬件寄存器、其他数据结构)中读取数据。
计算设备102的各种属性可以由设备属性确定模块112确定并且被提供至风险确定***104。这些属性包括不随着时间改变(或者不频繁地改变)的静态属性和/或随着时间改变(或者预期为以至少阈值频率改变,例如每周或每月)的动态属性。
在一个或多个实施例中,设备的属性包括计算设备102的硬件技术参数。硬件技术参数可以包括例如以下中的任何一个或组合:计算设备102的形状因子(例如,台式机、笔记本电脑、可拆卸计算机、平板电脑等)、计算设备102的型号和模型(例如,根据计算设备102的原始设备制造商(OEM))、计算设备102的一个或多个处理器的架构、计算设备102中的物理随机存取存储器(RAM)的数量和类型、计算设备102的总存储容量(例如,盘驱动容量)、计算设备102的硬件的性能特性或能力(例如,如由诸如***评估工具(WinSAT)之类的各种性能工具所获得的),等等。
额外地或可替代地,设备的属性可以包括计算设备102的操作***技术参数。操作***技术参数可以包括例如以下中的任何一个或组合:在计算设备102上运行的操作***的版本号、在计算设备102上运行的操作***的架构、由在计算设备102上运行的操作***所使用的语言(例如,英语、法语、德语等)、在计算设备102上运行的操作***的安装日期、在计算设备102上运行的操作***的安装类型(例如,更新、纯净安装等)、在计算设备102上运行的操作***(例如,Windows 10新兴市场单一语言)的定价库存单位(SKU)、在计算设备102上运行的操作***的许可状态(例如,操作***的副本是否是正版的)、在计算设备102上运行的操作***的安全性设置(例如,防火墙是否开启、智能屏幕是否开启等),等等。
额外地或可替代地,设备的属性可以包括与计算设备102的用户和/或计算设备102本身有关的匿名化信息。计算设备102的用户例如是登录到计算设备102中的用户。匿名化信息是指与用户和/或计算设备有关但不与该用户相关联的信息——将该用户与匿名化信息相关联的记录不被保存。匿名化信息可以包括例如以下中的任何一个或组合:计算设备102的用户的年龄组、计算设备102的用户的性别、计算设备102和/或计算设备102的用户的地理位置(例如,国家、州、城市等)、用户与之相关联的客户细分(例如,消费者、游戏、企业、教育等)、由计算设备102的用户访问的不同网络位置(例如,互联网协议(IP)地址)的数量,等等。
额外地或可替代地,设备的属性可以包括描述计算设备102上的杀毒或其他反恶意软件程序设置的信息。描述杀毒或其他反恶意软件程序设置的信息可以例如包括以下中的任何一个或组合:在计算设备102上运行或安装的杀毒应用或其他反恶意软件程序的类型、对在计算设备102上运行或安装的杀毒应用或其他反恶意软件程序的排名(例如,根据各种工业测试中的任何一种)、在计算设备102上运行或安装的杀毒应用或其他反恶意软件程序的排除列表(例如,指示不被在计算设备102上运行或安装的杀毒应用或其他反恶意软件程序所监视的内容)、计算设备102上的杀毒应用或其他反恶意软件程序的安全性设置,等等。
额外地或可替代地,设备的属性可以包括描述在计算设备102上运行的程序的信息。描述在计算设备102上运行的程序的信息可以包括例如以下中的任何一个或组合:在设备上运行软件的软件发布者(例如,运行由公司创建的软件的用户)的列表——一些软件发布者创建充当恶意软件传输的高效通道的软件(例如,在已经被感染了恶意软件的设备与运行文件共享客户端的设备之间可以存在高度相关)、在计算设备102上安装的应用的年龄(例如,应用多久以前被安装在计算设备102上)、在计算设备102上安装的应用的数量,等等。
额外地或可替代地,设备的属性可以包括描述计算设备102的安全性设置的信息。描述计算设备102的安全性设置的信息可以包括例如以下中的任何一个或组合:计算设备上的防火墙被启用还是禁用、计算设备上的反恶意软件程序被启用还是禁用、计算设备上的磁盘加密特征(例如,全盘加密特征)被启用还是禁用、计算设备的用户账户控制(UAC)特征被启用还是禁用,等等。
额外地或可替代地,设备的属性可以包括描述计算设备102和/或计算设备102上的反病毒软件程序的行为性信息。所述行为信息可以包括例如以下中的任何一个或组合:在计算设备上看到的先前的感染、排除不被反恶意软件程序扫描(例如,经由操作***设置中的用户发起的动作)的计算设备的用户的文件夹的数量、在计算设备上看到的先前的“可疑”内容(例如,风险确定***104不确定该内容是恶意软件,但有足够证据相信其有问题)、最频繁使用(运行)的应用、最频繁运行的过程运行时间、由计算设备102上的反恶意软件程序执行的对威胁的先前补救、从计算设备102上的反恶意软件程序接收的任何其他信息,等等。
图2示出了根据一个或多个实施例的示例风险确定***104。风险确定***104包括数据收集模块202、感染跟踪模块204、风险因素确定模块206、恶意软件确定模块208、以及数据存储210。数据存储210可以是诸如磁盘驱动器、固态驱动器等之类的多种不同的存储设备中的任何一个或多个。
数据收集模块202从各种计算设备(例如,从图1的计算设备102的风险检查模块114)获得计算设备的属性和对内容的指示。数据收集模块202还确定图1的计算设备102中的每个的活动。数据收集模块202与风险因素确定模块206和恶意软件确定模块208通信以确定如由计算设备指示的内容是否是恶意软件(或者针对特定内容是恶意软件的风险因素或可能性进行检查)。
数据收集模块202可以接收计算设备102的属性以及对内容的指示和/或将它们分别地接收。在一个或多个实施例中,数据收集模块202接收计算设备102的属性并且将所述属性存储在数据存储210中。响应于随后接收到对内容的指示,数据收集模块202接收对提供该内容的指示的计算设备的指示(例如,标识符),并且从数据存储210中取回所存储的针对该计算设备的属性。可替代地,风险确定***104可以不将计算设备102的属性的记录保存在数据存储210中,并且所述属性是与对内容的指示一起从计算设备102中接收的。可替代地,计算设备102的一些属性可以被保存在数据存储210中,并且计算设备102的其他属性可以与对内容的指示一起从计算设备102接收。
数据收集模块202还确定图1的计算设备102中的每个的计算设备活动。计算设备活动的概念(notion)被包括在本文所讨论的风险因素确定中,这是因为活动可以在计算设备如何被感染恶意软件中扮演重要角色(例如,与每天使用的设备相比,一个月使用一次的计算设备通常不太可能感染)。数据收集模块202可以以不同的方式来确定计算设备的活动。在一个或多个实施例中,计算设备将对计算设备的活动的描述提供至数据收集模块202。例如,计算设备102的模块(例如,设备属性确定模块或其他模块)可以生成描述计算设备102的活动的信息并将该信息提供至数据收集模块202。额外地或可替代地,数据收集模块202可以基于由计算设备102提供至数据收集模块202的其他信息(例如,计算设备102的属性、从计算设备102所接收的对内容的指示、对计算设备102上的感染的指示等)来确定计算设备活动。例如,数据收集模块202可以基于多频繁从计算设备102接收对内容的指示来确定计算设备102的活动。
感染跟踪模块204跟踪哪些计算设备102被识别为以一段时间内感染恶意软件。感染恶意软件的计算设备102包括在计算设备102上运行或安装的恶意软件。额外地或可替代地,感染了恶意软件的计算设备102包括检测到在计算设备102上运行或安装恶意软件的尝试。
感染跟踪模块204可以以各种方式识别哪些计算设备被识别为感染恶意软件。在一个或多个实施例中,感染跟踪模块从恶意软件确定模块208接收恶意软件确定,如在下文中更加详细地讨论的。额外地或可替代地,感染跟踪模块从计算设备102本身接收与计算设备102的感染相关的信息(例如,在计算设备102上运行的反恶意软件程序可以在遇到恶意软件时通知风险确定***104)。
感染跟踪模块204保存关于哪些计算设备102已经感染了恶意软件的记录。感染跟踪模块204还保存针对计算设备的感染的定时信息(例如感染的日期和时间,感染的日期和时间指示是由感染跟踪模块204接收的),执行了什么补救步骤(例如,用户被提示和选择对感染的文件隔离检查),关于恶意软件感染的严重性的信息(例如,如由诸如杀毒研究者之类的专家先前确定的),等等。计算设备102与任何感染之间的对应性也被保存在数据存储210中。该对应性可以以各种方式被保存,例如记录、表格、或者计算设备的其他数据库。该对应性允许风险确定***104针对给定的计算设备102容易地确定该计算设备是否感染了恶意软件,以及如果感染,该感染是何时(例如,多久以前)发生的。
在一个或多个实施例中,由感染跟踪模块204所保存的信息中的至少一些信息也被风险因素确定模块206使用以识别针对内容的风险因素。与感染相关的信息(例如,先前的恶意软件感染的严重性)可以是例如计算设备的属性或活动。
风险因素确定模块206分析对内容的指示、计算设备的属性、以及计算设备的活动,以确定该内容的风险因素。风险因素确定模块206使用多种不同的算法、规则、或技术中的任何一种来确定风险因素。在一个或多个实施例中,风险因素确定模块206使用诸如逻辑回归模型之类的机器学习算法来确定风险因素。额外地或可替代地,风险因素确定模块206可以使用其他机器学习算法或模型,例如深度神经网络、多种不同的聚类算法之一、其他类型的回归模型、多种序列标签算法之一、决策树,等等。
风险因素确定模块206将多个计算设备102中的每个标记为在一段时间内(例如,之前60或90天)受感染或没有受感染。与计算设备在该时段内是否受到感染相关的信息是能够从由感染跟踪模块204存储在数据存储210中的信息容易地获得的。接着,使用受感染的计算设备的属性和活动以及没有受感染的计算设备的属性和活动来训练机器学习算法,以基于计算设备的属性来生成计算设备的风险因素。可以使用多种不同的公共和/或私有技术中的任何一中技术来执行对机器学习算法的该训练,以允许机器学习算法确定哪些属性与受感染的计算设备相关联,而哪些属性与没有受感染的计算设备相关联。机器学习算法可以在各种时间被训练,例如以规律或不规律的间隔(例如,每天或每周)、响应于其他事件(例如,对新类型的恶意软件的最近的发现),等等。
在一个或多个实施例中,所有计算设备102的空间被分成多个子空间(例如,通过地理区域),并且不同的机器学习算法针对所述不同的子空间中的每个而被训练。这可以允许比尝试跨所有设备训练单个机器学习算法更好的结果。例如,可以存在某些软件发布者较为普遍的地理位置(例如,一个软件仅在一个国家非常普遍地被使用,但也是恶意软件传输的良好通道)。通过针对不同的地理区域来训练不同的机器学习算法,在不位于该国家的设备上运行的该软件比在位于该国家的设备上运行时更有可能被确定为恶意软件。
风险因素确定模块206在给定计算设备的一组属性和计算设备的活动的情况下确定计算设备的风险因素。该风险因素是该计算设备在未来的某一时间感染恶意软件的概率或可能性的指示符。风险因素可以是多种不同的评分或值中的任何一种,例如,二元指示(例如,有风险或无风险)、从1到10的整数范围(其中,1指示非常有风险而10指示非常安全(无风险)),等等。
当风险确定***104从特定计算设备102中接收到内容时,风险因素确定模块206使用该特定计算设备102的属性和活动来确定特定计算设备102的风险因素。风险因素确定模块206将该风险因素提供至恶意软件确定模块208,其使用该风险因素来确定特定内容在特定计算设备102上是否是恶意软件。
恶意软件确定模块208至少向风险因素应用各种不同的规则、标准、或算法,以确定该内容是否是恶意软件。在一个或多个实施例中,恶意软件确定模块208向风险因素应用阈值规则。在应用阈值规则时,恶意软件确定模块208检查该风险因素是否满足阈值(例如,是大于阈值、或者是等于或大于阈值)。如果风险因素满足阈值,则该内容是恶意内容。然而,如果风险因素不满足阈值(例如,风险因素小于阈值,或者风险因素等于或小于阈值),则该内容不是恶意内容。
恶意软件确定模块208可以额外地或者可替代地应用各种其他规则以确定内容是否是恶意软件。在一个或多个实施例中,恶意软件确定模块208能够访问已知非恶意软件内容的指示符的列表。该列表可以例如被保存在数据存储210中。如果从计算设备102接收到的内容的指示与已知非恶意软件内容的指示符相匹配(即,相同),则恶意软件确定模块208确定所指示的内容不是恶意软件。恶意软件确定模块208可以确定所指示的内容不是恶意软件,而不管由风险因素确定模块206针对该内容在该计算设备上所确定的风险因素。可替代地,恶意软件确定模块208可以向风险因素确定模块206发信号以不要确定针对该内容的风险因素,这是因为该内容已知为不是恶意软件。
恶意软件确定模块208将对恶意软件确定的指示提供至从其接收对内容的指示的计算设备102。所述指示可以是例如对风险确定***104是否确定了该内容是恶意软件的指示。额外地或可替代地,恶意软件确定模块208可以将各种其他信息提供至计算设备102,例如,供计算设备102改变该计算设备与该内容(以及可选地,额外的内容)交互的方式的指示。例如,恶意软件确定模块208可以将向在计算设备102上运行反恶意软件程序提供指示以更加激进地收集文件或其他内容以供风险确定***104分析(例如,针对被归类为有风险的计算设备,例如,具有至少阈值风险因素),提供令在计算设备102上运行的反恶意软件程序执行快速和/或全***扫描的指示,提供令计算设备102施加操作***和/或反恶意软件程序更新设置的指示,提供令在计算设备102上运行的反恶意软件程序改变至偏执模式(例如,提供令反恶意软件程序更加激进地验证内容和/或设置)的指示,等等。
因此,使用在本文中所描述的技术,如果风险确定***104从特定计算设备接收对没有已知为绝对是恶意软件或绝对不是恶意软件的内容的指示,则恶意软件确定模块208可以关于该内容是否应当被理解为在该特定计算设备上是恶意软件来进行确定。该确定可以是基于该特定计算设备的属性和活动的,因此如果该特定计算设备具有风险因素确定模块206向较有风险(基于计算设备102的感染)的计算设备关联的属性和/或活动,则该内容更有可能被确定为在该特定计算设备上是恶意软件。然而,如果该特定计算设备具有风险因素确定模块206向较没有风险(基于计算设备102的感染)的计算设备关联的属性和/或活动,则该内容更有可能被确定为在该特定计算设备上不是恶意软件。因此,关于内容是否是恶意软件的确定可以通过至少部分地基于计算设备的属性的决策而更加精确和自动地进行。
额外地,对在本文中所讨论的风险因素的使用降低风险确定***的管理员或用户所需要的手动输入,以增加自动化恶意软件确定过程。恶意软件确定是至少部分地基于内容在其上被访问(例如,运行、下载、安装等)的计算设备的属性来进行的,由此增加了检测到先前未知的恶意软件(例如,零日攻击)的机会。
此外,使用在本文中所讨论的技术,如果风险确定***104从该风险确定***104没有关于其的先验知识的特定计算设备(例如,该特定计算设备是新的、创造性的计算设备)中接收了对内容的指示,则风险确定***104可以仍然关于内容是否应当被认为在该特定计算设备上是恶意软件来进行确定。尽管没有关于该计算设备的先验知识,但风险确定***104可以关于内容是否应当被认为在该计算设备上是恶意软件来进行确定。
应当注意的是,在一个或多个实施例中,设备功能越具体(例如,如由计算设备的属性所指示的),则针对风险确定***的风险计算就越容易。例如,如果IoT设备仅仅针对温度进行检查,则通常仅仅受限的和具体的过程将在IoT设备上被运行,并且在这之外的任何事都应不当在该IoT设备上被执行。如果存在未签名的过程(例如,不是风险确定***已知的、或者没有由受信任机构数字签名的内容),或者任何其他未知的应用在运行,则风险确定***可以更加容易地并且利用较高等级的精确度而确定该内容有可能是恶意软件。
图3是流程图,其示出了根据一个或多个实施例的、用于基于设备属性和设备风险因素来实现计算设备保护的示例过程300。过程300是由诸如图1的计算设备102之类的计算设备实行的,并且可以以软件、固件、硬件、或其组合来实现。过程300被示出为一组动作,并且不限于用于执行各种动作的操作所示出的顺序。过程300是用于基于设备属性和设备风险因素来实现计算设备保护的示例过程;对基于设备属性和设备风险因素来实现计算设备保护的额外讨论参考不同的图而被包括在本文中。
在过程300中,收集对实现过程300的计算设备的属性的描述(动作302)。这些属性可以包括例如:计算设备硬件技术参数、计算设备的操作***技术参数、与计算设备的用户相关的匿名化的信息、描述计算设备上的杀毒或其他反恶意程序设置的信息、描述在计算设备上运行的程序的信息、其组合,等等,如在上文中详细讨论的。对计算设备的属性的描述可以采取各种形式,例如列表、表格、记录、或者其他数据结构。
可选地确定计算设备的活动(动作304)。计算设备的活动是指如在上文中所讨论的计算设备被使用的量或者计算设备的使用的频率。
将对所收集的属性的描述传送至风险确定***(动作306)。可以在各种时间将对所收集的属性的描述传送至风险确定***,例如响应于计算设备的属性的改变、在计算设备的属性的描述的初始收集之后、与用于确定特定内容是否是恶意软件的请求一起,等等。在动作304中确定计算设备的活动的情况下,在动作306中也将对计算设备的活动的描述传送至风险确定***。
也将针对内容的恶意软件确定的请求传送至风险确定***(动作308)。该请求是用于确定特定内容在实现过程300的计算设备上是否是恶意软件的请求。可以在各种时间将该请求传送至风险确定***,例如当内容被下载或者以其他方式被存储在计算设备上时,等等。
从风险确定***中接收对内容是否是恶意软件的指示(动作310)。内容是否是恶意软件是由风险确定***至少部分地基于实现过程300的计算设备的属性和/或实现过程300的计算设备的活动来确定的。
接着,基于所接收的指示而适当地访问该内容(动作312)。例如,如果在动作310中所接收的指示指示该内容不是恶意软件,则该内容可以被允许、打开、安装等。然而,如果在动作310中所接收的指示指示该内容是恶意软件,则该内容可以被删除、隔离检查、阻止安装等。
额外的信息可以额外地或可替代地在动作310中被接收,在该情况下,不同的动作可以在动作312中被执行。例如,对改变计算设备的行为的指示可以在动作310中被接收,并且该改变在动作312中被实行,例如通过如在上文中所讨论的那样更加激进地收集内容以供分析、执行快速和/或全***扫描等。
图4是流程图,其示出了根据一个或多个实施例的、用于基于设备属性和设备风险因素来实现计算设备保护的示例过程400。过程400是由风险确定***(例如,图1或图2的风险确定***104)实行的,并且可以以软件、固件、硬件、或其组合来实现。过程400被示出为一组动作,并且不限于用于执行各种动作的操作所示出的顺序。过程400是用于基于设备属性和设备风险因素来实现计算设备保护的示例过程;对基于设备属性和设备风险因素来实现计算设备保护的额外讨论参考不同的图而被包括在本文中。
在过程400中,获得对计算设备的属性的描述(动作402)。这些属性可以包括例如:计算设备硬件技术参数、计算设备的操作***技术参数、与计算设备的用户相关的匿名化的信息、描述计算设备上的杀毒或其他反恶意程序设置的信息、描述在计算设备上运行的程序的信息、其组合,等等,如在上文中详细讨论的。
可选地确定计算设备的活动(动作404)。可以以与在上文中所讨论的不同的方式来确定计算设备的活动,例如明确地基于对由计算设备所生成和提供的计算设备的活动的描述,或者内在地基于由计算设备所提供的其他信息(例如,对内容的指示从计算设备被接收的频率)。
也接收内容针对计算设备的恶意软件确定的指示(动作406)。对指示的接收是内在地,或者是由针对关于内容是否是恶意软件的确定的明确的请求所伴随的。在动作402中所获得的属性可以在动作406中与对内容的指示一起被接收,和/或可以从其他源(例如,风险确定***的数据存储)获得。
基于计算设备的属性和/或计算设备的活动来确定内容在计算设备上的风险因素(动作408)。例如,风险因素是使用多种机器学习算法或模型中的任何一种来确定的,所述机器学习算法或模型是使用在特定时间段内已经被感染的计算设备以及还没有感染的计算设备的属性和/或活动来训练的,如在上文中所讨论的。
关于内容针对计算设备是否是恶意软件的确定是基于所确定的风险因素来进行的(动作410)。可以使用各种规则、算法、或技术来确定该内容是否是恶意软件,如在上文中所讨论的。动作410中的确定可以仅仅基于所确定的风险因素来进行,或者可以结合其他信号或输入来进行。
将对内容是否是恶意软件的指示传送至计算设备(动作412)。所述指示被返回至在动作406中将对内容的指示发送至风险确定***的计算设备。
在动作412中,额外的信息可以额外地或可替代地被传送至计算设备。例如,在动作412中,对改变计算设备的行为的指示可以被传送至计算设备,例如供计算设备更加激进地收集内容以供分析,供计算设备上的反恶意软件程序执行快速和/或全***扫描等,如在上文中所讨论的。
在本文中的讨论中,风险确定***被描述为与具有针对其进行恶意软件确定的内容的计算设备是分开的。额外地或可替代地,风险确定***的至少一部分可以在计算设备本身而不是在风险确定***中被实现。例如,图2的恶意软件确定模块208可以至少部分由图1的计算设备102来实现,其中计算设备102上的恶意软件确定模块从图1的风险确定***104接收对风险因素的指示。作为另一示例,风险因素确定模块206可以至少部分地由图1的计算设备102来实现,例如,通过风险确定***104训练机器学习算法或模型并且将所述机器学习算法或模型传送至图1的计算设备102,以允许图1的计算设备102中的每个基于其自己的属性来确定其自己的风险因素。
尽管参考特定的模块在本文中讨论的特定的功能,但应当注意的是,在本文中所讨论的个体模块的功能可以被分成多个模块,和/或多个模块的至少一些功能可以被组合成单个模块。额外地,在本文中被讨论为执行动作的特定模块包括执行该动作的该特定模块本身,或者可替代地,调用或者以其他方式访问执行该动作(或者结合该特定模块执行该动作)的另一组件或模块的该特定模块。因此,执行动作的特定模块包括执行该动作的该特定模块本身,和/或由执行该动作的该特定模块调用或者以其他方式访问的另一模块。
图5在500处一般地示出了示例***,其包括代表可以用于实现在本文中所描述的各种技术的一个或多个***和/或设备的示例计算设备502。计算设备502可以是例如服务提供商的服务器、与客户端相关联的设备(例如,客户端设备)、片上***、和/或任何其他合适的计算设备或计算***。
如图所示的示例计算设备502包括彼此通信地耦合的处理***504、一个或多个计算机可读介质506、以及一个或多个I/O接口508。尽管未示出,计算设备502还可以包括将各种组件彼此耦合的***总线或其他数据和命令传输***。***总线可以包括不同的总线结构中的任何一个或组合,所述不同的总线结构例如存储器总线或存储器控制器、***总线、通用串行总线、和/或使用多种总线架构中的任何一种的处理器或本地总线。还可以构想多种其他示例,例如,控制和数据线路。
处理***504代表用于使用硬件来执行一个或多个操作的功能。从而,处理***504被示出为包括可以被配置为处理器、功能块等的硬件元件510。这可以包括以硬件来作为专用集成电路或者使用一个或多个半导体形成的其他逻辑设备的实现。硬件元件510不由形成其的材料或者其中所采用的处理机制来限制。例如,处理器可以由半导体和/或晶体管(例如,电子集成电路(IC))构成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质506被示出为包括存储器/存储设备512。存储器/存储设备512表示与一个或多个计算机可读介质相关联的存储器/存储设备容量。存储器/存储设备512可以包括易失性介质(例如,随机存取存储器(RAM))和/或非易失性介质(例如,只读存储器(ROM)、阻抗性RAM(ReRAM)、闪速存储器、光盘、磁盘等)。存储器/存储设备512可以包括固定的介质(例如,RAM、ROM、固定的硬盘驱动器等)以及可移动介质(例如,闪速存储器、可移动硬盘驱动器、光盘等)。计算机可读介质506可以以如在下文中所进一步描述的多种其他的方式来配置。
所述输入/输出接口508代表用于允许用户向计算设备502输入命令和信息,并且还允许利用各种输入/输出设备向用户和/或其他组件或设备呈现该信息的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风(例如,用于语音输入)、扫描仪、触摸功能(例如,被配置以对物理接触进行检测的电容或其他传感器)、相机(例如,可以采用可见或非可见波长(例如,红外频率)来检测运动不包含作为手势的触摸的)等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网络卡、触觉反应设备等。因此,计算设备502可以用如在下文中所进一步描述的多种方式被配置以支持用户交互。
计算设备502还包括风险确定***514。风险确定***514提供各种风险因素和恶意软件确定功能,如在上文中所讨论的。风险确定***514可以例如实现图1或图2的风险确定***。
可以在本文中在软件、硬件元件、或程序模块的一般性的上下文中描述各种技术。通常而言,这样的技术包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、元件、组件、数据结构等。如在本文中所使用的术语“模块”、“功能”、和“组件”通常表示软件、固件、硬件、或其组合。在本文中所描述的技术的特征是与平台无关的,意思是可以在具有多种处理器的多种计算平台上实现这些技术。
所描述的模块和技术的实现可以存储在一些形式的计算机可读介质上或者跨一些形式的计算机可读介质传输。计算机可读介质可以包括可以由计算设备502访问的多种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
“计算机可读存储介质”指的是与仅仅是信号传输、载波、或信号本身相对的支持信息的持久存储的介质和/或设备,和/或有形的存储。因此,计算机可读存储介质是指非信号承载介质。计算机可读存储介质包括以适合于存储信息(例如,计算机可读指令、数据结构、程序模块、逻辑元件/电路、或其他数据)的方法或技术实现的硬件,例如易失性和非易失性、可移动和不可移动介质和/或存储设备。计算机可读存储介质的示例可以包括但不限于,RAM、ROM、EEPROM、闪速存储器、或者其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储、硬盘、盒式磁带、磁带、磁盘存储或其他磁存储设备、或者其他存储设备、有形的介质、或者适合于存储期望的信息并且可以由计算机访问的制品。
“计算机可读信号介质”指的是被配置以将指令传输(例如,经由网络)至计算机设备502的硬件的信号承载介质。通信介质通常可以实施计算机可读指令、数据结构、程序模块、或经调制的数据信号中的其他数据,例如,载波、数据信号、或其他传输机制。信号介质还包括任何信息传递介质。术语“经调制的数据信号”意指将其特征中的一个或多个以将信息编码在信号中的方式来设置或改变的信号。作为示例而非限制,通信介质包括有线介质(例如,有线网络或直接连接)和无线介质(例如,声学、射频(RF)、红外、和其他无线介质)。
如前所述,硬件元件511和计算机可读介质506代表以硬件形式实现的指令、模块、可编程设备逻辑和/或固定的设备逻辑,其可以在一些实施例中被采用以实现在本文中所描述的技术中的至少一些方面。硬件元件可以包括集成电路或片上***的组件、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑设备(CPLD)、以及硅或其他硬件设备中的其他实现。在该上下文中,硬件元件可以运行为执行由指令、模块、和/或逻辑所定义的程序任务的处理设备,所述指令、模块和/或逻辑由被使用以存储指令以用于执行的硬件元件以及硬件设备(例如,之前所描述的计算机可读存储介质)来实施。
也可以采用上述的组合来实现在本文中所描述的各种技术和模块。从而,软件、硬件、或程序模块和其他程序模块可以被实现为在某种形式的计算机可读存储介质上实施和/或由一个或多个硬件元件510实施的一个或多个指令和/或逻辑。计算设备502可以被配置以实现对应于软件和/或硬件模块的特定的指令和/或功能。从而,能够由计算设备502作为软件执行的模块作为模块的实现可以至少部分地以硬件(例如,通过对处理***的计算机可读存储介质和/或硬件元件510的使用)来完成。指令和/或功能可以由制品(例如,一个或多个计算设备502和/或处理***504)执行/操作以实现在本文中所描述的技术、模块、和示例。
如在图5中进一步示出的,当在个人计算机(PC)、电视设备、和/或移动设备上运行应用时,示例***500支持针对无缝的用户体验的普遍的环境。对于当在使用应用程序、玩可视游戏、观看视频等的过程中从一个设备转移到下一个时的普通的用户体验而言,服务和应用在所有三种环境中大体相似地运行。
在示例***500中,多个设备通过中央计算设备被互连。中央计算设备可以对于多个设备来说是本地的或者可以远程于多个设备。在一个或多个实施例中,中央计算设备可以是通过网络、互联网、或其他数据通信链路连接至多个设备的一个或多个服务器计算机的云。
在一个或多个实施例中,该互连架构支持待跨多个设备而被传递以向多个设备的用户提供共同和无缝的体验的功能。多个设备中的每个都可以具有不同的物理要求和能力,并且中央计算设备使用平台以使能够将既针对该设备定制并且还对所有设备共同的体验传递至设备。在一个或多个实施例中,创建了一类目标设备,并且针对一般类型的设备来定制体验。可以由设备的物理特征、使用类型、或者其他共同的特性来定义设备的类。
在各种实现中,计算设备502可以假设多种不同的配置,例如,以供计算机516、移动518、以及电视520使用。这些配置中的每个都包括可以具有一般不同结构和能力的设备,并且因此计算设备502可以根据不同的设备类中的一个或多个而被配置。例如,计算设备502可以被实现为设备的计算机516类,该类包括个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本、服务器等。
计算设备502还可以被实现为设备的移动518类,该类包括移动设备,例如,移动电话、便携式音乐播放机、便携式游戏设备、平板计算机、多屏幕计算机等。计算设备502还可以被实现为设备的电视520类,其包括具有或连接至随意查看环境中的通常较大的屏幕的设备的。这些设备包括电视、机顶盒、游戏控制器等。
在本文中所描述的技术可以由计算设备502的这些各种配置支持,并且不限于在本文中所描述的技术的具体的示例。该功能还可以全部或部分地通过对分布式***的使用(例如,如在下文中所描述的通过经由平台524的“云”522)而被实现。
云522包括和/或代表资源526的平台524。平台524提取了云522的硬件(例如,服务器)和软件资源的基础功能。资源526可以包括当在远程于计算设备502的服务器上执行计算机处理时可以被使用的应用和/或数据。资源526还可以包括通过互联网和/或通过订阅者网络(例如,蜂窝或Wi-Fi网络)提供的服务。
平台524可以提取资源和功能以将计算设备502与其他计算设备进行连接。平台524还可以用来提取资源的放缩,以对针对经由平台524所实现的资源526的所遇到的需求而提供对应的放缩等级。从而,在经互连的设备实施例中,在本文中所描述的功能的实现可以遍布***500而分布。例如,功能可以被部分地在计算设备502上被实现,以及经由提取云522的功能的平台524而被实现。
在本文的讨论中,描述了各种不同的实施例。应当领会和理解的是,在本文中所描述的每个实施例可以自己使用,或者结合在本文中所描述的一个或多个实施例来使用。在本文中所讨论的另外的方面涉及以下实施例中的一个或多个。
一种方法,包括:获得对计算设备的属性的描述;从所述计算设备接收对要在所述计算设备处被访问的内容的指示;基于所述计算设备的所述属性来确定所述计算设备的风险因素;使用所述计算设备的所述风险因素以及对所述内容的所述指示来确定所述内容在所述计算设备上是否是恶意软件;以及向所述计算设备传送对所述内容在所述计算设备上是否被确定为是恶意软件的指示。
可替代地或另外于在上文中所描述的方法中的任何一个,以下中的任何一个或组合:所述方法还包括确定所述计算设备的活动,并且所述确定所述计算设备的所述风险因素包括基于所述计算设备的所述属性和所述计算设备的所述活动来确定所述计算设备的所述风险因素;所述属性包括所述计算设备的硬件技术参数;所述属性包括所述计算设备的操作***技术参数;所述属性包括与所述计算设备的用户有关的匿名化信息;所述属性包括描述在所述计算设备上运行的程序的信息;对所述内容的所述指示包括通过将哈希函数应用至所述内容的至少一部分所生成的哈希值;对所述内容的所述指示包括所述内容;所述使用所述风险因素来确定所述内容是否是恶意软件包括响应于所述风险因素满足阈值而确定所述内容是恶意软件;所述确定所述风险因素包括使用机器学习算法或模型,所述机器学习算法或模型是使用在特定时间段内已经被感染的计算设备的第一集合以及在所述特定时间段内没有被感染的计算设备的第二集合来训练的。
一种在计算设备上实现的方法,所述方法包括:收集对所述计算设备的属性的描述;将对所述计算设备的所述属性的描述传送至风险确定***;将针对关于内容在该计算设备处是否是恶意软件的确定的指示传送至风险确定***;从风险确定***接收对该内容是否是恶意软件的指示,该指示是基于该计算设备的风险因素的,该计算设备的风险因素是基于该计算设备的属性和/或该计算设备的活动的。
可替代地或另外于在上文中所描述的方法中的任何一个,以下中的任何一个或组合:所述方法还包括将对所述计算设备的所述属性的所述描述与针对关于所述内容在所述计算设备处是否是恶意软件的所述确定的所述请求一起传送至所述风险确定***;所述属性包括所述计算设备的硬件技术参数以及所述计算设备的操作***技术参数;所述属性包括描述所述计算设备上的安全性设置的信息;所述属性包括描述在所述计算设备上运行的程序的信息。
一种计算设备,包括:设备属性确定模块,其被配置为收集对所述计算设备的属性的描述;以及风险检查模块,其被配置为:将对所述计算设备的所述属性的所述描述传送至风险确定***;向所述风险确定***传送针对关于内容在所述计算设备处是否是恶意软件的确定的请求;以及从所述风险确定***接收对所述内容是否是恶意软件的指示,所述指示是基于所述计算设备的风险因素的,所述计算设备的所述风险因素是基于所述计算设备的所述属性的。
可替代地或另外于在上文中所描述的计算设备中的任何一个,以下中的任何一个或组合:其中,将所述请求传送至所述风险确定***是将对所述计算设备的所述属性的所述描述与针对关于所述内容在所述计算设备处是否是恶意软件的所述确定的所述请求一起传送至所述风险确定***;所述属性包括所述计算设备的硬件技术参数以及所述计算设备的操作***技术参数;所述属性包括描述所述计算设备上的安全性设置的信息;所述属性包括描述在所述计算设备上运行的程序的信息。
风险确定***,包括:一个或多个处理器;以及具有存储在其上的多个指令的一个或多个计算机可读存储介质,所述多个指令响应于由所述一个或多个处理器执行,使得所述一个或多个处理器:从计算设备接收对所述计算设备的属性的描述以及对要在所述计算设备处访问的内容的指示两者;基于所述计算设备的所述属性来确定所述计算设备的风险因素;使用所述计算设备的所述风险因素以及对所述内容的所述指示来确定所述内容在所述计算设备上是否是恶意软件;以及向所述计算设备传送对所述内容在所述计算设备上是否被确定为是恶意软件的指示。
可替代地或另外于在上文中所描述的计算设备中的任何一个,以下中的任何一个或组合:其中,确定所述内容是否是恶意软件是响应于所述风险因素满足阈值而确定所述内容是恶意软件,并且响应于所述风险因素不满足所述阈值而确定所述内容不是恶意软件;其中,确定所述内容在所述计算设备上的风险因素是将计算设备的属性作为输入提供至机器学习算法或模型,所述机器学习算法或模型是使用在特定时间段内已经被感染的计算设备的第一集合以及在所述特定时间段内没有被感染的计算设备的第二集合来训练的;所述属性包括所述计算设备的硬件技术参数、所述计算设备的操作***技术参数、描述所述计算设备上的杀毒或其他反恶意软件程序设置的信息;所述属性还包括描述在所述计算设备上运行的程序的信息。
尽管已经用特定于结构特征和/或方法动作的语言对主题进行了描述,但是要理解的是,在所附权利要求中所定义的主题不一定限于以上所描述的特征和动作或者以上所描述动作的顺序。相反,所描述的特征和动作是作为实现权利要求的示例形式而公开的。
Claims (15)
1.一种方法,包括:
获得对计算设备的属性的描述;
从所述计算设备接收对要在所述计算设备处被访问的内容的指示;
基于所述计算设备的所述属性来确定所述计算设备的风险因素;
使用所述计算设备的所述风险因素以及对所述内容的所述指示来确定所述内容在所述计算设备上是否是恶意软件;以及
向所述计算设备传送对所述内容在所述计算设备上是否被确定为是恶意软件的指示。
2.根据权利要求1所述的方法,所述方法还包括确定所述计算设备的活动,并且所述确定所述计算设备的所述风险因素包括基于所述计算设备的所述属性和所述计算设备的所述活动来确定所述计算设备的所述风险因素。
3.根据权利要求1或权利要求2所述的方法,所述属性包括所述计算设备的硬件技术参数。
4.根据权利要求1至3中的任何一项所述的方法,所述属性包括所述计算设备的操作***技术参数。
5.根据权利要求1至4中的任何一项所述的方法,所述属性包括与所述计算设备的用户有关的匿名化信息。
6.根据权利要求1至5中的任何一项所述的方法,所述属性包括描述在所述计算设备上运行的程序的信息。
7.根据权利要求1至6中的任何一项所述的方法,对所述内容的所述指示包括通过将哈希函数应用至所述内容的至少一部分所生成的哈希值。
8.根据权利要求1至7中的任何一项所述的方法,对所述内容的所述指示包括所述内容。
9.根据权利要求1至8中的任何一项所述的方法,所述使用所述风险因素来确定所述内容是否是恶意软件包括响应于所述风险因素满足阈值而确定所述内容是恶意软件。
10.根据权利要求1至9中的任何一项所述的方法,所述确定所述风险因素包括使用机器学习算法或模型,所述机器学习算法或模型是使用在特定时间段内已经被感染的计算设备的第一集合以及在所述特定时间段内没有被感染的计算设备的第二集合来训练的。
11.一种计算设备,包括:
设备属性确定模块,其被配置为收集对所述计算设备的属性的描述;以及
风险检查模块,其被配置为:
将对所述计算设备的所述属性的所述描述传送至风险确定***;
向所述风险确定***传送针对关于内容在所述计算设备处是否是恶意软件的确定的请求;以及
从所述风险确定***接收对所述内容是否是恶意软件的指示,所述指示是基于所述计算设备的风险因素的,所述计算设备的所述风险因素是基于所述计算设备的所述属性的。
12.根据权利要求11所述的计算设备,所述风险检查模块还被配置为将对所述计算设备的所述属性的所述描述与针对关于所述内容在所述计算设备处是否是恶意软件的所述确定的所述请求一起传送至所述风险确定***。
13.根据权利要求11或权利要求12所述的计算设备,所述属性包括所述计算设备的硬件技术参数以及所述计算设备的操作***技术参数。
14.根据权利要求11至13中的任何一项所述的计算设备,所述属性包括描述所述计算设备上的安全设置的信息。
15.根据权利要求11至14中的任何一项所述的计算设备,所述属性包括描述在所述计算设备上运行的程序的信息。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/245,751 US10733301B2 (en) | 2016-08-24 | 2016-08-24 | Computing device protection based on device attributes and device risk factor |
US15/245,751 | 2016-08-24 | ||
PCT/US2017/047241 WO2018039006A1 (en) | 2016-08-24 | 2017-08-17 | Computing device protection based on device attributes and device risk factor |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109690548A true CN109690548A (zh) | 2019-04-26 |
CN109690548B CN109690548B (zh) | 2023-07-07 |
Family
ID=59738466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780051799.9A Active CN109690548B (zh) | 2016-08-24 | 2017-08-17 | 基于设备属性和设备风险因素的计算设备保护 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10733301B2 (zh) |
EP (1) | EP3504659B1 (zh) |
CN (1) | CN109690548B (zh) |
WO (1) | WO2018039006A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948831A (zh) * | 2021-03-12 | 2021-06-11 | 哈尔滨安天科技集团股份有限公司 | 应用程序风险识别的方法和装置 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10438000B1 (en) * | 2017-09-22 | 2019-10-08 | Symantec Corporation | Using recognized backup images for recovery after a ransomware attack |
US10725870B1 (en) | 2018-01-02 | 2020-07-28 | NortonLifeLock Inc. | Content-based automatic backup of images |
US11113425B2 (en) * | 2018-01-17 | 2021-09-07 | Crowd Strike, Inc. | Security component for devices on an enumerated bus |
US10735444B2 (en) | 2018-06-06 | 2020-08-04 | Reliaquest Holdings, Llc | Threat mitigation system and method |
US11709946B2 (en) | 2018-06-06 | 2023-07-25 | Reliaquest Holdings, Llc | Threat mitigation system and method |
US11321467B2 (en) | 2018-08-21 | 2022-05-03 | Beijing Didi Infinity Technology And Development Co., Ltd. | System and method for security analysis |
US11989326B2 (en) * | 2021-03-30 | 2024-05-21 | Sophos Limited | Programmable feature extractor with anonymization |
CN114363082B (zh) * | 2022-01-12 | 2024-05-03 | 南昌首页科技股份有限公司 | 网络攻击检测方法、装置、设备及计算机可读存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1879124A1 (en) * | 2006-06-15 | 2008-01-16 | Deutsche Telekom AG | Improved method and system for detecting malicious behavioral patterns in a computer, using machine leaning |
US20110083180A1 (en) * | 2009-10-01 | 2011-04-07 | Kaspersky Lab, Zao | Method and system for detection of previously unknown malware |
CN102164148A (zh) * | 2010-05-18 | 2011-08-24 | 卡巴斯基实验室封闭式股份公司 | 用于便携式信息设备的组安全 |
US20120066346A1 (en) * | 2010-09-13 | 2012-03-15 | Microsoft Corporation | Reputation checking obtained files |
US20120144492A1 (en) * | 2010-12-03 | 2012-06-07 | Microsoft Corporation | Predictive Malware Threat Mitigation |
US20130111586A1 (en) * | 2011-10-27 | 2013-05-02 | Warren Jackson | Computing security mechanism |
US8661547B1 (en) * | 2012-12-25 | 2014-02-25 | Kaspersky Lab Zao | System and method for protecting cloud services from unauthorized access and malware attacks |
WO2014152469A1 (en) * | 2013-03-18 | 2014-09-25 | The Trustees Of Columbia University In The City Of New York | Unsupervised anomaly-based malware detection using hardware features |
US20140359775A1 (en) * | 2013-05-31 | 2014-12-04 | Microsoft Corporation | Protecting Anti-Malware Processes |
US8925092B1 (en) * | 2012-03-08 | 2014-12-30 | Amazon Technologies, Inc. | Risk assessment for software applications |
US9043894B1 (en) * | 2014-11-06 | 2015-05-26 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US20150199517A1 (en) * | 2014-01-16 | 2015-07-16 | Robert Allen Rose | Universal extensible firmware interface module identification and analysis |
US9166999B1 (en) * | 2014-07-25 | 2015-10-20 | Fmr Llc | Security risk aggregation, analysis, and adaptive control |
US9197663B1 (en) * | 2015-01-29 | 2015-11-24 | Bit9, Inc. | Methods and systems for identifying potential enterprise software threats based on visual and non-visual data |
US20160098565A1 (en) * | 2014-10-03 | 2016-04-07 | New York University | System, method and computer-accessible medium for security verification of third party intellectual property cores |
US20160182556A1 (en) * | 2014-12-23 | 2016-06-23 | Igor Tatourian | Security risk score determination for fraud detection and reputation improvement |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7594272B1 (en) | 2004-10-05 | 2009-09-22 | Symantec Corporation | Detecting malicious software through file group behavior |
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 |
US8108933B2 (en) | 2008-10-21 | 2012-01-31 | Lookout, Inc. | System and method for attack and malware prevention |
US8590045B2 (en) | 2009-10-07 | 2013-11-19 | F-Secure Oyj | Malware detection by application monitoring |
US20110247074A1 (en) | 2010-03-30 | 2011-10-06 | Manring Bradley A C | Metadata-based access, security, and compliance control of software generated files |
US8413235B1 (en) | 2010-09-10 | 2013-04-02 | Symantec Corporation | Malware detection using file heritage data |
US20120102568A1 (en) | 2010-10-26 | 2012-04-26 | Mcafee, Inc. | System and method for malware alerting based on analysis of historical network and process activity |
US9111094B2 (en) | 2011-01-21 | 2015-08-18 | F-Secure Corporation | Malware detection |
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 |
US9292688B2 (en) | 2012-09-26 | 2016-03-22 | Northrop Grumman Systems Corporation | System and method for automated machine-learning, zero-day malware detection |
IL226747B (en) | 2013-06-04 | 2019-01-31 | Verint Systems Ltd | A system and method for studying malware detection |
US9262635B2 (en) | 2014-02-05 | 2016-02-16 | Fireeye, Inc. | Detection efficacy of virtual machine-based analysis with application specific events |
US10523637B2 (en) * | 2015-07-22 | 2019-12-31 | Paypal, Inc. | Anonymous account security exchange |
US10395040B2 (en) * | 2016-07-18 | 2019-08-27 | vThreat, Inc. | System and method for identifying network security threats and assessing network security |
-
2016
- 2016-08-24 US US15/245,751 patent/US10733301B2/en active Active
-
2017
- 2017-08-17 WO PCT/US2017/047241 patent/WO2018039006A1/en unknown
- 2017-08-17 CN CN201780051799.9A patent/CN109690548B/zh active Active
- 2017-08-17 EP EP17758718.5A patent/EP3504659B1/en active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1879124A1 (en) * | 2006-06-15 | 2008-01-16 | Deutsche Telekom AG | Improved method and system for detecting malicious behavioral patterns in a computer, using machine leaning |
US20110083180A1 (en) * | 2009-10-01 | 2011-04-07 | Kaspersky Lab, Zao | Method and system for detection of previously unknown malware |
CN102164148A (zh) * | 2010-05-18 | 2011-08-24 | 卡巴斯基实验室封闭式股份公司 | 用于便携式信息设备的组安全 |
US20120066346A1 (en) * | 2010-09-13 | 2012-03-15 | Microsoft Corporation | Reputation checking obtained files |
US20120144492A1 (en) * | 2010-12-03 | 2012-06-07 | Microsoft Corporation | Predictive Malware Threat Mitigation |
US20130111586A1 (en) * | 2011-10-27 | 2013-05-02 | Warren Jackson | Computing security mechanism |
US8925092B1 (en) * | 2012-03-08 | 2014-12-30 | Amazon Technologies, Inc. | Risk assessment for software applications |
US8661547B1 (en) * | 2012-12-25 | 2014-02-25 | Kaspersky Lab Zao | System and method for protecting cloud services from unauthorized access and malware attacks |
WO2014152469A1 (en) * | 2013-03-18 | 2014-09-25 | The Trustees Of Columbia University In The City Of New York | Unsupervised anomaly-based malware detection using hardware features |
US20140359775A1 (en) * | 2013-05-31 | 2014-12-04 | Microsoft Corporation | Protecting Anti-Malware Processes |
US20150199517A1 (en) * | 2014-01-16 | 2015-07-16 | Robert Allen Rose | Universal extensible firmware interface module identification and analysis |
US9166999B1 (en) * | 2014-07-25 | 2015-10-20 | Fmr Llc | Security risk aggregation, analysis, and adaptive control |
US20160098565A1 (en) * | 2014-10-03 | 2016-04-07 | New York University | System, method and computer-accessible medium for security verification of third party intellectual property cores |
US9043894B1 (en) * | 2014-11-06 | 2015-05-26 | Palantir Technologies Inc. | Malicious software detection in a computing system |
US20160182556A1 (en) * | 2014-12-23 | 2016-06-23 | Igor Tatourian | Security risk score determination for fraud detection and reputation improvement |
US9197663B1 (en) * | 2015-01-29 | 2015-11-24 | Bit9, Inc. | Methods and systems for identifying potential enterprise software threats based on visual and non-visual data |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112948831A (zh) * | 2021-03-12 | 2021-06-11 | 哈尔滨安天科技集团股份有限公司 | 应用程序风险识别的方法和装置 |
CN112948831B (zh) * | 2021-03-12 | 2024-02-13 | 安天科技集团股份有限公司 | 应用程序风险识别的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
EP3504659A1 (en) | 2019-07-03 |
CN109690548B (zh) | 2023-07-07 |
US10733301B2 (en) | 2020-08-04 |
WO2018039006A1 (en) | 2018-03-01 |
EP3504659B1 (en) | 2021-03-10 |
US20180060591A1 (en) | 2018-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11336458B2 (en) | Evaluating authenticity of applications based on assessing user device context for increased security | |
CN109690548A (zh) | 基于设备属性和设备风险因素的计算设备保护 | |
EP3841503B1 (en) | Similarity based approach for clustering and accelerating multiple incidents investigation | |
TWI726393B (zh) | 用於產生多個連動式資料圖框的多圖框網路安全分析裝置與相關的電腦程式產品 | |
US10122742B1 (en) | Classifying software modules based on comparisons using a neighborhood distance metric | |
US20180129807A1 (en) | Shellcode Detection | |
US11580220B2 (en) | Methods and apparatus for unknown sample classification using agglomerative clustering | |
US20170244741A1 (en) | Malware Identification Using Qualitative Data | |
US11196765B2 (en) | Simulating user interactions for malware analysis | |
Malhotra et al. | A hybrid pattern based text mining approach for malware detection using DBScan | |
Shrivastava et al. | Android application behavioural analysis for data leakage | |
WO2022216753A1 (en) | Distributed machine learning hyperparameter optimization | |
US9313218B1 (en) | Systems and methods for providing information identifying the trustworthiness of applications on application distribution platforms | |
Vasani et al. | Comprehensive analysis of advanced techniques and vital tools for detecting malware intrusion | |
Babbar et al. | Detection of android malware in the Internet of Things through the K-nearest neighbor algorithm | |
US9171152B1 (en) | Systems and methods for preventing chronic false positives | |
Sharma et al. | Survey for detection and analysis of android malware (s) through artificial intelligence techniques | |
Al Shamsi | Mapping, Exploration, and Detection Strategies for Malware Universe | |
La Marra et al. | MalProfiler: automatic and effective classification of android malicious apps in behavioral classes | |
Khan et al. | SAndro: Artificial Intelligence Enabled Detection Framework of Adware Attacks on Android Machines | |
Irolla | Formalization of Neural Network Applications to Secure 3D Mobile Applications | |
Khalil et al. | Memory Malware Identification via Machine Learning | |
Xie et al. | My Smartphone Knows Your Health Data: Exploiting Android-Based Deception Attacks Against Smartbands | |
MEZZOUR et al. | A Data-Driven Characterization of Modern Android Spyware | |
Pierazzi et al. | King’s Research Portal |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |