识别恶意网络设备的制作方法

文档序号:19079943发布日期:2019-11-08 22:11阅读:272来源:国知局
网络防御中的一项关键任务是评估由特定网络设备(例如,网站)带来的威胁,例如由互联网协议(ip)地址和/或网络域名所识别的威胁。涉及恶意网站的通信可能损害网络。然而,由于ip地址和/或网络域名的快速变化的行为,自动评估网站的恶意或潜在恶意的严重性级别是有挑战性的。常规网络安全系统在以高保真度检测网站的恶意方面不是太主观就是不准确。因此,当前难以检测到通信中涉及的ip地址和/或网络域的恶意和可疑活动,或恶意或可疑活动的可能性。因此,常规网络安全系统关于检测和预防能力以及整体安全态势方面存在显著缺陷。技术实现要素:本文中描述的实施例单独地和共同地解决了上面描述的问题和其它问题。网络安全系统可以计算已经请求恶意活动评估的网络标识符(例如ip地址、网络域等)的恶意评分。为了计算此类评分,网络安全系统可以从各种第三方服务器请求恶意活动信息,第三方服务器例如威胁情报提供商、dns提供商、黑名单提供商、网络流量报告提供商和/或一个或多个防病毒报告提供商。网络安全系统可以利用所接收的恶意活动信息提取第一特征集,并计算第二特征集。这些特征可以输入到机器学习模型中,先前已经使用历史恶意活动信息的类似特征和已知的安全分类训练过该机器学习模型。利用机器学习模型,可以计算网络标识符的恶意评分。网络安全系统或另一系统可根据恶意评分执行各种补救措施(例如,影响网络流量)。其它实施例涉及与本文中所描述的方法相关联的系统和非暂时性计算机可读介质。可以参考以下具体实施方式和附图来更好地了解本发明实施例的性质和优点。附图说明图1是根据一些实施例的用于确定网络标识符的恶意评分的系统的框图。图2是根据一些实施例的用于确定网络标识符的恶意评分的示范性网络安全系统的框图。图3是能够实施网络安全系统的至少一些实施例的示例性计算机架构。图4a和图4b是根据一些实施例图示了根据初始网络标识符的集合确定相关网络标识符的示例性过程的流程图。图5是根据一些实施例的图3的参数确定引擎的示例性计算机架构,其能够实施网络安全系统的至少一些方面。图6是根据一些实施例的图3的决策引擎的示例性计算机架构,其能够实施网络安全系统的至少一些方面。图7是根据一些实施例图示了用于训练和更新机器学习模型的示例性过程的流程图。图8示出了根据一些实施例的用于确定一个或多个网络标识符的恶意评分的示范性方法的流程图。术语在讨论本发明的一些实施例之前,对一些术语的描述可有助于理解本发明的实施例。术语“客户端计算机”通常指请求信息或服务的计算机。客户端计算机可包括计算机(例如台式计算机)、移动装置(例如智能电话、膝上型计算机或平板计算机)或可穿戴装置(例如智能手表或活动跟踪器)。客户端计算机可包括无线通信能力(例如wi-fi、蓝牙或近场通信)。在一些实施例中,客户端计算机可以与服务器计算机通信。在一些实施例中,第一客户端计算机可能不能够与服务器计算机通信,除非第二客户端计算机为第一客户端计算机充当代理,发送和接收消息。术语“服务器计算机”可以包含功能强大的计算机或计算机集群。举例来说,服务器计算机可以是大型主机、小型计算机集群或像单元一样工作的一组服务器。服务器计算机可耦合到一个或多个数据库,且可包括用于服务来自一个或多个客户端计算机的请求的任何硬件、软件、其他逻辑或前述内容的组合。服务器计算机可以是向一个或多个客户端计算机提供服务(例如,声誉确定服务)的服务提供商计算机。服务器计算机可包括一个或多个计算设备,且可使用各种计算结构、布置和编译中的任一种来服务来自一个或多个客户端计算机的请求。术语“网络标识符”旨在指互联网协议(ip)地址或网络域名。“网络标识符”可以指两个或更多个ip地址、两个或更多个网络域名或两个或更多个包括至少一个ip地址和至少一个网络域名的标识符。ip地址可以是由句点隔开的唯一数字字符串,此数字字符串识别使用互联网协议通过网络通信的计算机。网络域名可以是定义互联网内管理自治范围、权限或控制的标识字符串。网络域名可以由域名系统(dns)的规则和程序形成并在dns中注册。网络域名可用于各种网络上环境和特定于应用程序的命名以及寻址目的。一般来说,网络域名表示互联网协议(ip)资源,例如用于访问互联网的个人计算机、托管网站的服务器计算机或网站本身或通过互联网传送的任何其他服务。术语“域名服务(dns)提供商”通常指注册以加入网络域名系统的计算机。在某些示例中,dns提供商运行专用网络软件,以公用ip地址为特征,并包含互联网主机的网络域名和ip地址的数据库。dns提供商可以是包含互联网网络域和ip地址的完整数据库的根服务器,或者dns提供商可以被配置成管理互联网网络域名的子集。dns提供商可以被配置成接收对dns信息的请求,并通过传输与一个或多个网络域名和/或ip地址相关联的dns信息(例如dns资源记录历史)来响应此类请求。dns信息可以包括由dns提供商维护的任何合适信息,例如与特定网络域名关联的ip地址和托管特定ip地址的网络域名。在一些实施例中,dns信息可以包括与一个或多个ip地址相关联的自主系统信息、一个或多个网络域的一个或多个威胁评分、由特定ip地址托管的恶意域的数量等。术语“自主系统”通常指处于一个或多个网络运营商控制之下代表单个管理实体或网络域名的连接的ip路由前缀的集合,其向互联网呈现共同路由策略。术语“威胁情报提供商”通常指被配置成采集、过滤/分析数据并提供威胁情报信息的威胁情报管理平台。在一些实施例中,威胁情报提供商可以通过电子馈送提供威胁情报信息。威胁情报信息可以按行业和/或按组织进行定制。威胁情报信息可以包括高风险主机、网络域名、恶意有效载荷和互联网协议(ip)地址、ip地址和/或网络域名的威胁分类和/或评分、恶意软件/网络钓鱼识别信息、关于与ip地址和/或网络域相关联的恶意文件的信息、犯罪意图的指示等。术语“黑名单提供商”通常指被配置成维护并提供一个或多个基于ip地址和/或基于网络域名的黑名单的计算机。黑名单可以用来识别恶意来源,例如电子邮件地址、用户、密码、统一资源定位器(url)、ip地址、网络域名、文件、散列,由于与恶意活动关联应限制和/或阻止来自恶意来源的网络流量。在一些实施例中,黑名单可以包括诸如收下各项的特征:点击数量、攻击分类评分、基于历史的评分等,其中每个特征可以与特定的恶意来源相关联。在一些实施例中,黑名单提供商可以包括开源黑名单和/或公共可用的黑名单,例如zeustracker、ip-sum、ransomwaretracker、frodotracker、sslblacklist、spamfilters、bambenek等。术语“恶意内容分析提供商”通常指被配置成提供与ip地址和/或网络域名相关联的取证信息的一个或多个计算机。取证信息可以包括从ip地址/网络域下载的恶意文件、与ip地址/网络域通信的恶意文件,和/或绑定到ip地址/网络域名的恶意url。在某些示例中,取证信息可以包括检测比和/或最后扫描日期。在一些实施例中,恶意内容分析提供商是病毒报告管理器,其被配置成聚合防病毒产品和/或扫描引擎,以检测病毒和/或验证假阳性。在一些实施例中,恶意内容分析提供商可以是公共可用的病毒检测服务(例如virustotaltm),其分析可疑文件和url,并促进病毒、蠕虫、木马和各种恶意软件的检测。术语“网络流量报告提供商”通常指被配置成分析一个网站相对于其他网站的性能的一个或多个计算机。在一些实施例中,网络流量报告提供商可以被配置成对网站的性能进行评分和/或排名,并公开提供此类评分/排名。在一些实施例中,网络流量报告提供商可以计算特定网站的网络流量的各个方面,例如每日唯一访客的估计平均值、一段时间内的页面浏览的估计数量等。在某些情况下,网络流量报告提供商可以监测网站的访问频率和访客身份。在某些情况下,网络流量报告提供商可以基于确定网站关于排序的其它网络具有唯一访客和页面游览的最高组合,为网站分配最高排名的位置。术语“恶意活动信息”通常指由dns提供商、威胁情报提供商、黑名单提供商、恶意内容分析提供商和/或网络流量报告提供商提供的任何合适信息。恶意活动信息可包括但不限于:资源记录历史、安全排名、安全类别评分、域生成算法(dga)评分、威胁评分、受欢迎度评分、页面排名、地理评分、地理多样性评分、攻击严重性评分、威胁类型严重性评分、与ip地址和/或网络域名相关联的恶意文件列表、与ip地址和/或网络域名相关联的恶意文件数量、与ip地址和/或网络域名相关联的恶意统一资源定位器(url)列表、黑名单数据、白名单数据、基于历史的评分、与ip地址相关联的不同匿名系统的数量和/或身份、与不同匿名系统相关联的元数据、与ip地址和/或网络域名相关的稳定性评分,或与网络域名相关联的网络流量排名。术语“恶意评分”旨在指量化实际和/或潜在恶意活动的值。例如,恶意评分可以是与识别安全风险或分类的分类标签相对应的数值。作为非限制性示例,分类标签可包括“关键”、“高”、“中”和“低”,其中“关键”分类标签指示最高风险严重度,“低”分类标签指示最低风险严重度。在一些实施例中,分类标签的分配可以取决于网络标识符与落入特定范围内的恶意评分相关联的证据。例如,恶意评分为10的ip地址可以分配“低”分类标签,而恶意评分为100的另一ip地址可以分配“高”分类标签。“机器学习模型”可以包括数学模型,其被配置成从输入变量集(例如,特征集)提供统计输出(例如,估计、概率、预测、分类)。在某些示例中,可以利用监督机器学习技术生成和/或更新机器学习模型。在监督机器学习中,通过训练过程制备模型,其中,需要进行预测,并且在这些预测不正确时进行校正或在这些预测正确时进行加强。在一些实施例中,训练机器学习模型可以利用常规的监督学习算法,例如j48、naivebayes、logistic、decisiontable、randomtree等。具体实施方式本文所述的系统和方法提供了综合分析以用于识别恶意ip地址和/或网络域名。网络安全系统可以利用恶意活动信息来生成机器学习模型,以计算ip地址和/或网络域名的恶意评分。本文所述系统和方法的一个优点是来自多个来源的恶意活动信息以及从此类信息计算的统计特征可以与机器学习技术结合,以便以比之前使用常规系统可实现的更高的保真度对ip地址和/或网络域名的恶意性进行评分。此外,本文提供的用于通过确定相关ip地址和/或网络域名来扩展特征集的技术可以改善恶意活动分析的准确性,从而带来更准确的恶意活动检测。通过利用本文所述的网络安全系统,可以考虑ip地址和/或网络域名的多维行为。因此,网络安全系统可以提供增强的检测和预防能力,其可以用来改善实体的整体安全态势。另外的优点在下面描述。i.网络安全系统和相关基础设施在一些实施例中,网络安全系统可以接收识别恶意ip地址和/或网络域名的请求。此识别可以涉及确定此类网络标识符(即ip地址和/或网络域名)的恶意评分。这些请求可以由客户端计算机102或任何合适的电子装置传输。在一些实施例中,作为更新恶意评分的过程的一部分,网络安全系统可以在不接收特定评估请求的情况下(诸如,间歇性或定期)评估ip地址和/或网络域的恶意性。响应于接收到请求,网络安全系统可以确定与已经请求恶意活动评估/恶意评分的网络标识符有某些关系的附加网络标识符。将关于图4a和图4b进一步讨论用于确定这些附加ip地址和/或网络域的过程。响应于确定附加网络标识符,网络安全系统可以从dns提供商、威胁情报提供商、黑名单提供商、恶意内容分析提供商、网络流量报告提供商或上述的任何合适组合请求相应的恶意活动信息。网络安全系统可以(例如,从第三方服务器)接收所请求的恶意活动信息的至少一些部分。网络安全系统可以从恶意活动信息中提取各种特征。使用所提取的特征,网络安全系统可以计算附加特征(例如,统计值,诸如标准差、平均值、中值等)。所提取和/或计算的特征可以用于机器学习模型,以确定网络标识符的恶意评分。网络安全系统可以将网络标识符与对应于恶意评分的分类标签相关联。分类标签可以指示安全风险程度(例如,“高”、“中”、“低”等)。网络安全系统可以向请求客户端计算机提供恶意评分,和/或网络安全系统可以在适合存储此类信息的数据存储器中存储恶意评分。根据所计算的恶意评分,网络安全系统可以执行或使另一系统执行各种补救措施,以影响网络流量。例如,具有指示低风险的恶意评分的网络标识符可以添加到白名单,以使与网络标识符相关联的流量被立即允许。类似地,如果网络标识符具有指示高风险的恶意评分,则可以将网络标识符添加到黑名单以使与网络标识符相关联的流量被立即拒绝。图1是根据一些实施例的用于确定网络标识符的恶意评分的系统100的框图。客户端计算机102、网络安全系统104、dns提供商108、威胁情报提供商110、黑名单提供商112、恶意内容分析提供商114和网络流量报告提供商116可分别为任何合适的计算装置(例如,主机、台式机或笔记本电脑、平板电脑、移动装置、可穿戴装置等)。各种提供商108-116在本文中统称为“第三方服务器”。图1中描绘的各种系统和/或计算机可以由网络107通信耦合。网络107可以包括很多不同类型的网络(诸如有线网络、互联网、无线网络、蜂窝网络以及其他专用和/或公用网络)中的任一种或者它们的组合。应当认识到,所述技术可以应用在其他客户端/服务器布置中,以及非客户端/服务器布置(例如,作为本地存储的应用程序等)中。在图1所描绘的系统中,第三方服务器中的每一个都可以包括一个或多个提供商计算机。因此,可以设想多个第三方服务器(例如,多个dns提供商)可以用来获得一个或多个ip地址和/或网络域名的恶意活动信息。在一些实施例中,网络安全系统104可以实施为分布式系统,其中,在一组服务器计算机上提供各种模块和功能。网络安全系统104可以被配置成作为服务运行。例如,作为服务运行的网络安全系统可以暴露一个或多个应用编程接口(api)以供远程系统和/或装置使用,以激发由网络安全系统104提供的功能。网络安全系统104可以处理tcp/ip格式、http格式或任何合适的消息格式的请求消息。ii.网络安全系统的功能网络安全系统可以包括各种引擎,其共同执行操作以计算网络标识符的恶意评分。引擎可以包括过滤引擎、参数确定引擎和决策引擎。根据恶意评分,指示风险程度的分类标签(例如,“关键”、“高”、“中”和“低”)可分配至网络标识符。图2是根据一些实施例的示范性网络安全系统(例如,网络安全系统104)的框图200,其确定网络标识符(例如,ip地址和/或网络域名)的恶意评分。网络安全系统104可以包括多个可以执行各种实施例的引擎。这些引擎可以是软件模块、硬件模块或其组合。如果引擎是软件模块,则引擎可以包含在计算机可读介质上,并由本文所述的任何计算机系统中的处理器处理。应当注意的是,本文所述的任何引擎、模块或数据存储器可以是负责管理进行相应计算所需类型的数据的服务。引擎可以作为网络安全系统104的一部分存在,或者引擎可以作为网络安全系统104外部的独立模块或服务存在。在图2所描绘的实施例中,网络安全系统104可以包括过滤引擎204、参数确定引擎206和决策引擎208。将在与图3、图5和图6相对应的描述中更详细地讨论这些引擎。在一些实施例中,客户端计算机(例如,图1的客户端计算机102)可以向网络安全系统104发送请求消息,以请求一个或多个网络标识符的恶意评分。在某些情况下,网络安全系统104可以自动评估恶意活动,而不接收请求消息。例如,作为更新恶意评分的过程的一部分,网络安全系统104可以响应于自最后一次计算评分起过去的阈值时间段等根据时间表来评估网络标识符的恶意性。过滤引擎204可以维护一个或多个白名单和/或一个或多个黑名单,所述一个或多个白名单识别以前被确定为良性的网络标识符,所述一个或多个黑名单识别以前被确定为敌对的网络标识符。过滤引擎204可以用来过滤掉不进一步处理的网络标识符,以便保持对引擎下游的资源进行处理。举例来说,过滤引擎204可以接收要对其确定恶意评分的一个或多个网络标识符的集合。过滤引擎204可以将所接收的网络标识符与白名单进行比较。如果在白名单中识别特定网络标识符,则过滤引擎204可以确保该特定网络标识符不被转发到参数确定引擎206以进行进一步处理。白名单中未包含的网络标识符可以被转发到参数确定引擎206。参数确定引擎206可以从各种恶意活动来源(例如,图1的第三方服务器)采集恶意活动信息,从所采集的恶意活动信息提取和/或计算各种参数(特征),并将所提取和/或计算的特征提供给决策引擎208。决策引擎208可以生成并维护一个或多个机器学习模型。决策引擎208可以利用由参数确定引擎206提供的特征以及一个或多个机器学习模型来计算网络标识符的恶意评分。在某些示例中,恶意评分可对应于分类标签(例如,分类标签210)。在确定恶意评分时或在另一合适的时间,决策引擎208可以执行或使另一系统执行一个或多个补救措施。此类补救措施可包括但不限于:限制/允许网络流量、提供条件和/或风险严重性的通知、提供一个或多个恶意评分、修改诸如黑名单和/或白名单的过滤器列表、或分配/修改ip地址/网络域名与声誉标签之间的关联。iii.网络安全系统架构图3是能够实施网络安全系统104的至少一些实施例的示例性计算机架构300。网络安全系统104可以包括处理器304和耦合至处理器304的计算机可读介质310,计算机可读介质310包括可由处理器304执行以执行本文中描述的功能的代码。应认识到,关于图3的引擎描述的任何功能可组合以由单个引擎执行,或可由网络安全系统104外部的引擎执行。图3示出了通信地耦合到数据存储器312的网络安全系统104。可以如图2所描绘的配置数据存储器312,或者可以将数据存储器312整体或部分地作为网络安全系统104的一部分来提供。数据存储器312可以是常规的、容错的、关系的、可扩展的、安全数据库,诸如oracletm或sybasetm。数据存储器312可以使用诸如阵列、散列图、(链接)列表、结构化文本文件(例如,xml)、表格和/或类似的各种数据结构来实现。此类数据结构可存储在存储器中和/或结构化的文件中。在某些示例中,数据存储器312可以被配置成存储与一个或多个ip地址和/或网络域名相关联的恶意评分和/或声誉标签。另外或替代地,数据存储器312可以被配置成存储由图1的一个或多个第三方服务器接收或获得的恶意活动信息。处理器304可以耦合到系统存储器306和外部通信接口308。计算机可读介质310也可操作地耦合到处理器304。计算机可读介质310可以包括许多软件和/或硬件引擎,其包括过滤引擎314(例如,图2的过滤引擎204)、参数确定引擎316(图2的参数确定引擎206)、决策引擎318(例如,图2的决策引擎208)以及请求处理引擎320。可利用更多或更少的软件/硬件引擎来执行本文所描述的功能。图3中描绘的引擎可以包括于软件应用程序中,该软件应用程序存储在计算机可读介质310中并且在网络安全系统104上运行。a.请求处理引擎请求处理引擎320可以接收和处理对恶意活动评估的请求。请求消息可以包括请求恶意评分的一个或多个网络标识符。在某些情况下,不是接收请求,请求处理引擎320可以使处理器304确定来自数据存储器(例如,数据存储器312)的一个或多个ip地址和/或一个或多个网络域。举例来说,请求处理引擎320可以确定网络标识符的恶意评分是基于自分配网络标识符的最后一个恶意评分起的时间确定的。因此,可以对具有超过阈值年限的恶意评分的网络标识符重新评估恶意活动。在一些实施例中,请求处理引擎320可以间歇性地或根据由请求处理引擎320维护的时间表重新计算恶意评分。该时间表可以被预先确定,或者该时间表可以是用户定义的。在某些情况下,该时间表可存储在数据存储器312或其他合适的存储位置,并且请求处理引擎320可访问该时间表。在一些实施例中,请求处理引擎320可以(例如,从图1的客户端计算机102)接收和处理时间表创建和/或修改请求。请求处理引擎320可以识别与已经发起恶意评估的一个或多个网络标识符相关的网络标识符集。为了促进相关网络标识符的识别,请求处理引擎320可以从一个或多个dns提供商(例如,图1的dns提供商108)请求和/或接收被动dns信息。“被动dns信息”旨在指已被构建以至少提供全局域名系统中可用的历史dns信息的部分视图的dns信息。在某些示例中,请求处理引擎320可以从集中式数据存储器(例如,数据存储器312或被配置成存储此信息的另一合适的数据存储器)获得被动dns信息。b.相关网络标识符的识别识别相关网络标识符的集合可以通过各种方式发生。下面关于图4a和图4b提供了识别相关网络标识符的集合的两个示例。具体而言,图4a和图4b是根据一些实施例图示了从初始网络标识符集确定相关网络标识符的示例性过程的流程图400a和400b。具体而言,流程图400a图示了确定相关ip地址和与ip地址(ipi)相关联的网络域的示例性过程。。ip地址ipi可以是一个或多个候选ip地址(ipc)的集合中的一个ip地址。图4a中描述的过程可以用在请求一个或多个ip地址的恶意评分的示例中。在402处,ip地址ipi(集合ipc的候选ip地址之一)可以作为集合ipc的一部分由图3的请求处理引擎320接收和/或获得。一个或多个ip地址的集合ipc可以在请求中接收,或者集合ipc可以通过时间表确定,或者通过识别恶意评分超过阈值年限的ip地址确定。在404处,给定ip地址(ipi),请求处理引擎320可以确定域集合rdi1。在某些示例中,可利用dns提供商的被动dns信息确定包括与ip地址ipi相关联的一个或多个网络域的域集合rdi1。在406处,请求处理引擎320可以利用被动dns信息确定相关ip地址的集合rii。集合rii可以包括由域集合rdi1的网络域名指向的一个或多个ip地址。作为非限制示例,195.154.209.132可以是ip地址ipi。ipi当前托管四个域。因此,集合rdi1={par81-020.ff.avast.com,ipsc-par.sl.ff.avast.com,sla-par.ff.avast.com和slw-par.ff.avast.com}。一个特定域ipsc-par.sl.ff.avast.com可以绑定到其它各个ip,其它各个ip包括rii集合{62.210.142.144,62.210.142.179,62.210.142.181,62.210.142.182,62.210.142.183,62.210.142.187,62.210.142.189,62.210.146.141,62.210.146.154,62.210.151.43,62.210.152.170,62.210.189.3}。在408处,请求处理引擎320可以利用被动dns信息确定相关域的第二集合rdi2。集合rdi2可以包括分别与集合rii的ip地址相关联的一个或多个网络域。集合rii可以包括由域集合rdi2的网络域名指向的一个或多个ip地址。图4b的流程图400b图示了确定相关ip地址和与网络域名(dd)相关联的网络域的示例性过程。网络域dd可以是一个或多个候选网络域名的集合(dc)中的一个。图4b中描述的过程可以用在请求一个或多个网络域名的恶意评分的示例中。在410处,网络域dd可以由如上所述的图3的请求处理引擎320接收和/或获得。网络域dd可以作为集合dc的一部分接收和/或获得。一个或多个网络域的集合dc可以在请求中接收,或者一个或多个网络域的集合可以通过时间表确定,或者通过识别恶意评分超过阈值年限的网络域确定。在412处,请求处理引擎320可以利用被动dns信息确定相关域集合cdd。域集合cdd可以包括在用户访问域dd之前/之后的时间段内已经由同一用户访问的一个或多个网络域。在414处,请求处理引擎320可以使处理器304利用被动dns信息确定相关域集合rdd。相关域集合rdd可以包括大约与域dd相同时间(例如,一段时间内)被频繁(例如,超过阈值频率)请求的并且不与其他网络域频繁(例如,低于阈值频率)关联的一个或多个网络域。在416处,请求处理引擎320可以利用被动dns信息确定域集合ndd。域集合ndd可以包括与域名dd共享同名服务器的一个或多个网络域。在418处,请求处理引擎320可以利用被动dns信息确定域集合edd。域集合edd可以包括与域名dd注册了相同的电子邮件地址的一个或多个网络域名。在420处,请求处理引擎320可以利用被动dns信息确定一个或多个ip地址的集合rid。集合rid可以包括以往由域名dd的个别域指向的一个或多个ip地址。在422处,请求处理引擎320可以利用被动dns信息确定域集合pdd。域集合pdd可以包括与集合rid中包括的一个或多个ip地址关联的一个或多个网络域的集合。在结束关于图4a和图4b描述的任一过程时,请求处理引擎320可以将所接收的网络标识符的集合(例如,ipi和/或dd)和所确定的网络标识符的集合(例如,rii、rdi1、rdi2、cdd、rdd、ndd、edd、rid、pdd)的任何合适组合转发到过滤引擎314进行进一步处理。c.过滤引擎过滤引擎314可以(例如,从请求处理引擎320)接收一个或多个网络标识符。所接收的网络标识符可以包括以上述方式由请求处理引擎320接收和/或确定的集合的任何合适数量和组合。过滤引擎314可以访问一个或多个过滤列表(例如,白名单、黑名单等)。过滤列表可以存储在数据存储器312中,并且由请求处理引擎320维护。另外或替代地,过滤引擎314可以从公共可用的网站获得白名单和/或黑名单。过滤引擎204可以确定是否在一个或多个白名单中识别所接收的网络标识符。如果在白名单或黑名单中识别网络标识符,则过滤引擎204可以被配置成确保该网络标识符不被转发到参数确定引擎206进行进一步处理。举例来说,过滤引擎204可以从网络标识符所属的集合中移除在白名单/黑名单中识别的网络标识符。因此,过滤引擎204可以用来过滤掉先前确定为良性或敌对的网络标识符,以便保持对引擎下游的资源(例如,参数确定引擎316、决策引擎318等)进行处理。d.参数确定引擎参数确定引擎通常可用于从恶意活动信息提取和/或计算特征。由参数确定引擎提供的引擎可以单独负责处理来自特定类型的第三方服务器的恶意活动信息。图5是根据一些实施例的图3的参数确定引擎316的示例性计算机架构,其能够实现图3的网络安全系统104的至少一些方面。参数确定引擎316的引擎可以是软件模块、硬件模块或它们的组合。如果引擎是软件模块,则引擎可以包含在计算机可读介质上,并由本文所述的任何计算机系统中的处理器处理。应当注意的是,本文所述的任何引擎、模块或数据存储器可以是负责管理进行相应计算所需类型的数据的服务。图5中描绘的引擎可以作为参数确定引擎316的一部分存在,或者引擎可以作为参数确定引擎316外部的单独模块或服务存在。在图5所描绘的实施例中,参数确定引擎316可以包括威胁情报引擎502、恶意活动内容引擎504、黑名单引擎506、dns引擎508、网络流量引擎510以及数据处理引擎512。威胁情报引擎502可以被配置成向一个或多个威胁情报提供商,诸如图1的威胁情报提供商110,传输对与一个或多个网络标识符关联的恶意活动信息的请求。威胁情报引擎502可以从威胁情报提供商110接收恶意活动信息。所接收的恶意活动信息可以存储在数据存储器312中或另一个合适的存储位置内。所存储的恶意活动信息可以与网络标识符关联,以便提供在存储恶意活动信息之后检索恶意活动信息的机制。根据一些实施例,从威胁情报提供商接收的恶意活动信息可以包括与网络标识符相关联的威胁评分和/或恶意文件。恶意活动内容引擎504可以向一个或多个恶意活动分析提供商(诸如图1的恶意活动分析提供商114)传输对恶意活动信息的请求。恶意活动内容引擎504可以从恶意活动分析提供商114接收恶意活动信息。恶意活动内容引擎504可以在数据存储器312或另一合适的存储位置中存储此类恶意活动信息。所存储的恶意活动信息可以与网络标识符关联,以便提供在存储恶意活动信息之后检索恶意活动信息的机制。根据一些实施例,威胁情报引擎502可以从恶意活动信息提取取证信息(例如,特征)。这些特征可以包括从ip地址下载的恶意文件、与ip地址通信的恶意文件和/或绑定到ip地址的恶意url。黑名单引擎506可以向一个或多个黑名单提供商(诸如图1的黑名单提供商112)传输对恶意活动信息的请求。黑名单引擎506可以从黑名单提供商112接收恶意活动信息。黑名单引擎506可以在数据存储器312或另一合适的存储位置中存储此类恶意活动信息。所存储的恶意活动信息可以与网络标识符关联,以便提供在存储恶意活动信息之后检索恶意活动信息的机制。根据一些实施例,黑名单引擎506可以维护统一黑名单数据库(ubdb),其包括从许多获得的黑名单采集的黑名单信息。举例来说,黑名单引擎506可以诸如从zeustracker、ransomwaretracker、frodotracker、sslblacklist、spamfilters和google安全游览访问各种开源黑名单。不同的开源黑名单可以被合并并存储在ubdb中,以供后续查阅。黑名单引擎506可以为统一黑名单数据库(ubdb)中列出的网络标识符提取当前点击和/或历史点击。dns引擎508可以将对恶意活动信息的请求传输到一个或多个dns提供商(例如图1的dns提供商108)。dns引擎508可以从dns提供商108接收恶意活动信息。dns引擎508可以在数据存储器312或其他合适的存储位置中存储此类恶意活动信息。所存储的恶意活动信息可以与网络标识符关联,以便提供在存储恶意活动信息之后检索恶意活动信息的机制。根据一些实施例,dns引擎508可以从dns提供商接收dns信息。所接收的dns信息可以包括ip和域的资源记录(rr)历史、与多个ip地址相关联的自主系统信息、网络域名的威胁评分、与域相关联的安全评分、共发域集合(例如,图4b的集合cdd)、相关域集合、与域相关联的恶意文件以及在ip上托管的恶意域的数目的任何合适组合。网络流量引擎510可以向一个或多个网络流量报告提供商(例如图1的网络流量报告提供商116)传输对恶意活动信息的请求。网络流量引擎510可以从网络流量报告提供商116接收此类恶意活动信息。网络流量引擎510可以在数据存储器312或其他合适的存储位置中存储恶意活动信息。所存储的恶意活动信息可以与网络标识符关联,以便提供在存储之后的时间检索恶意活动信息的机制。根据一些实施例,从网络流量报告提供商116接收的恶意活动信息可以包括由第三方分配给ip地址和/或网络域名的受欢迎排名或评分。特征处理引擎512可以采集和/或访问由上面讨论的各种第三方服务器接收的恶意活动信息。在某些示例中,特征处理引擎512可以从由第三方服务器提供的恶意活动信息提取特征(例如,下面讨论的基于外部评分的特征、取证特征、基于黑名单的特征、基于行为的特征和基于网络的特征)的合适组合。在从恶意活动信息提取特征之后,特征处理引擎512可以根据所提取的特征计算多个统计特征(例如,总和、平均值、中值等)。特征处理引擎512可以将所提取的特征和计算的统计特征作为特征集的一部分传输到图3的决策引擎318。在一些实施例中,特征处理引擎512可以计算下面讨论的任何特征的新鲜度评分。新鲜度评分可用于对从近期恶意活动信息中提取/计算的特征比对从较旧的恶意活动信息中提取/计算的特征用更大的权重加权。可根据与恶意活动信息相关联的接收时间对特征进行加权。在另外一些示例中,可根据由第三方服务器分配并提供恶意活动信息的时间戳对特征进行加权。可以基于计算(-log(x3))+6*5,确定所接收的恶意活动信息的特征的权重值,其中,x是恶意活动信息的接收时间或时间戳日期与以天为单位的当前日期之间的差异。此权重值允许更近的恶意活动信息比较旧的恶意活动信息具有更大的影响。a)示例性特征如上所讨论的,特征处理引擎512可以从所接收的恶意活动信息提取或计算基于外部的特征、取证特征、基于黑名单的特征、基于行为的特征以及基于网络的特征。这些特征可以用来计算附加特征(例如,从所提取的特征计算得出的统计值,诸如总和、平均值、中值等)。所提取的特征和计算的统计值可以稍后用作机器学习模型的输入。这些特征在下文进一步讨论。a)与ip地址相关的基于外部的特征在一些实施例中,以下列出的基于外部的特征可以用于确定单个ip地址的恶意评分。基于外部的特征可以由特征处理引擎512提取或计算。这些基于外部的特征可以包括从图1的威胁情报提供商110接收的威胁评分。威胁评分可以包括与关于图4a讨论的rii、rdi1和rdi2集合中的每个ip地址相关联的一个或多个威胁评分。基于外部的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。由特征处理引擎512提取/计算的基于外部的特征的具体示例包括但不限于:·由集合ipi的ip地址的威胁情报来源提供的威胁评分。·从公共可用的ip报告计算的ip地址ipi的威胁评分。·以下各项中的至少一个的总和、平均值、中值或标准差中的至少一个:ο对于属于集合rii的每个ip,由一个或多个威胁情报来源提供的一个或多个威胁评分。ο对于属于集合rii的每个ip,从公共可用的ip报告计算的一个或多个威胁评分。ο对属于集合rdi1的每个域,由一个或多个dns提供商(例如,图1的dns提供商108)提供的一个或多个威胁评分。ο对于属于集合rdi2的每个域,由一个或多个dns提供商(例如,dns提供商108)提供的一个或多个威胁评分。ο对于属于集合rdi1的每个域,从公共可用的域报告计算的一个或多个威胁评分。ο对于属于集合rdi2的每个域,从公共可用的域报告计算的一个或多个威胁评分。ο对于属于集合rdi1的每个域(例如,由图1的网络流量报告提供商116提供)的一个或多个受欢迎的排名/评分。ο对于属于集合rdi2的每个域(例如,由图1的网络流量报告提供商116提供)的一个或多个受欢迎的排名/评分。b)与网络域相关的基于外部的特征在一些实施例中,以下列出的基于外部的特征可以用于确定单个网络域名dd或上面关于图4b所描述的网络域名的集合cdd、rdd、ndd、eedd、pdd的恶意评分。基于外部的特征可以由特征处理引擎512提取或计算。用于确定网络域名称的恶意评分的基于外部的特征可以根据新鲜度评分加权,使得较新的特征比较旧的特征对恶意评分影响更大。由特征处理引擎512提取/计算的基于外部的特征的具体示例可以包括以下当中的至少一个:·由一个或多个dns服务提供商(例如,图1的dns提供商108)提供的网络域的一个或多个安全排名。·从一个或多个公共可用的域报告计算的网络域的一个或多个威胁评分。·从由一个或多个dns服务提供商(例如dns提供商108)提供的恶意活动信息计算的网络域名的一个或多个安全类别评分。·从由一个或多个dns服务提供商(例如dns提供商108)提供的恶意活动信息计算的网络域名的一个或多个内容类别评分。·由一个或多个dns服务提供商(例如dns提供商108)提供的网络域名的一个或多个域生成算法(dga)评分。在某些示例中,dga评分可以量化概率值,其指示网络域名是由算法而不是由人生成的可能性。·由一个或多个dns服务提供商提供的网络域的一个或多个页面排名。在某些示例中,页面排名可以根据google的页面排名算法反映网络域名的受欢迎程度。·在某些示例中,一个或多个受欢迎评分可以是相对于对所有网络域名的所有请求已经访问某网络域名的唯一客户端ip地址的数目。在某些示例中,此信息可以由dns服务提供商提供。·由一个或多个dns服务提供商提供的网络域的一个或多个地理评分。在某些示例中,地理评分可以表示服务网络域名的不同物理位置相对于彼此有多远。·一个或多个tld地理多样性评分。在某些情况下,tld地理多样性评分可以表示为客户端访问网络域名的百分比。·网络域名的一个或多个攻击严重性评分。在某些示例中,攻击严重性评分可以从由dns服务提供商提供的恶意活动信息计算。·网络域名的威胁类型的一个或多个严重性评分。在某些示例中,威胁类型的严重性评分可以从由dns服务提供商提供的恶意活动信息计算。c)与ip地址相关的示例性取证特征在一些实施例中,下面列出的取证特征可以用于确定一个或多个ip地址的恶意评分。在某些示例中,特征处理引擎512可以从恶意活动信息提取恶意url、恶意文件和/或恶意传送文件。ip地址ipi的相关恶意url的集合ui可以包括一个或多个url,这些url以往曾与ip地址ipi绑定。与ipi对应的相关恶意文件的集合mfi可以包括被识别为可能恶意文件且与ip地址ipi绑定的一个或多个文件的集合。ipi的相关恶意传送文件的集合cfi可以包括已经传送到ip地址ipi或从该ip地址传送的一个或多个可能恶意文件。用于确定ip地址的恶意评分的取证特征可根据新鲜度评分进行加权,使得较新的特征比较旧的特征影响更大。在一些实施例中,特征处理引擎512可以从所接收的恶意活动信息识别与ip地址ipi相关的可疑文件和/或url。在某些示例中,可以识别mfi和cfi集合中的许多可疑url和许多文件。此外,或者替代性地,恶意活动信息可以提供绑定到ip地址ipi的恶意软件列表。特征处理引擎512可以基于最后检测日期和由威胁情报源提供的评分给每个可能的恶意url和文件分配威胁评分。最后检测日期可用于测量证据的新鲜度评分。统计特征,例如总和、平均值、中值和标准差可以从每个集合ui、mfi、和cfi的威胁评分计算。根据至少一个实施例,特征处理引擎512可以为ip地址ipi提取至少一个取证特征。由特征处理引擎512提取/计算的取证特征的具体示例可以包括以下当中的至少一个:·相关恶意文件的集合mfi中的元素总数。·相关传送文件的集合cfi中的元素总数。·相关恶意url的集合ui中的元素总数。·由ip地址ipi托管的恶意域的百分比。·以下各项中的至少一个的总和、平均值、中值或标准差中的至少一个:ο文件集合mfi的一个或多个威胁评分。ο文件集合cfi的一个或多个威胁评分。οurl的集合ui的一个或多个威胁评分。d)与网络域相关的示例性取证特征在一些实施例中,下面列出的取证特征可以用于确定一个或多个网络域名的恶意评分。特征处理引擎512可以从恶意活动信息提取恶意url、恶意文件和/或恶意传送文件。网络域dd的相关恶意url的集合ud可以包括以往曾与网络域dd绑定的一个或多个url。与dd对应的相关恶意文件的集合mfd可以包括被识别为可能恶意文件且与网络域d绑定的一个或多个文件的集合。与dd对应的相关恶意传送文件的集合cfi可以包括已经传送到网络域dd或从其传送的一个或多个可能恶意文件。特征处理引擎512可以计算由属于集合rid的一个或多个ip地址托管的恶意域的百分比。根据新鲜度评分,可以对用于确定网络域的恶意评分的取证特征进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。可以从所接收的恶意活动信息识别mfi和cfi集合中的许多可疑的url以及许多文件。恶意活动信息可以提供绑定到网络域dd的恶意软件列表。特征处理引擎512可以基于最后检测日期和由威胁情报源提供的评分给每个可能恶意的url和/或文件分配威胁评分。最后检测日期可用于测量证据的新鲜度评分。统计特征,例如总和、平均值、中值、和标准差,可以从每个集合ud、mfd和cfd的威胁评分计算。由特征处理引擎512提取/计算的取证特征的具体示例可以包括以下当中的至少一个:·相关恶意文件的集合mfd中的元素总数。·相关传送文件的集合cfd中的元素总数。·相关恶意url的集合ud中的元素总数。·以下各项中至少一个的总和、平均值、中值和标准差中的至少一个:ο集合mfd中的一个或多个文件的一个或多个威胁评分。ο集合cfd中的一个或多个文件的一个或多个威胁评分。ο集合ud中的一个或多个url的一个或多个威胁评分。ο绑定到集合rid的ip地址的恶意网络域的百分比。e)与ip地址相关的示例性基于黑名单的特征在一些实施例中,下面列出的基于黑名单的特征可以用于确定上文关于图4a描述的ip地址ipi的恶意评分。黑名单特征可以由特征处理引擎512提取或计算。基于黑名单的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。在某些示例中,恶意活动信息可以由一个或多个黑名单提供商(例如,图1的黑名单提供商112)获得。另外或替代地,可以从存储在图3的数据存储器312中的统一黑名单数据库(ubdb)获得恶意活动信息。ubdb可以包含以前从一个或多个开源黑名单获得的恶意活动信息。特征处理引擎512可以计算ip地址ipi的点击次数。特征处理引擎512可以基于识别ip地址的特定黑名单来计算攻击严重性评分。在某些示例中,可以将比分配给已经用于发送垃圾邮件的ip地址的严重性评分更高的严重性评分分配给用于命令和控制(c2)活动的ip地址。为了计算攻击严重性评分,特征处理引擎512可以利用由一个或多个威胁情报源(例如,图1的威胁情报源110)提供的恶意活动信息。在某些示例中,可以利用与ip地址相关联的各种攻击类别,从从威胁情报源接收的恶意活动信息计算攻击严重性评分。根据ubdb,可以计算ip地址ipi的基于历史的评分。由特征处理引擎512提取/计算的基于黑名单特征的具体示例可以包括以下当中的一个或多个:·ip地址ipi的各种黑名单内的总点击次数。·ip地址ipi的攻击严重性评分。·ip地址ipi的基于历史的评分。·以下各项中的至少一个的总和、平均值、中值或标准差中的至少一个:ο属于集合rii的所有ip地址的点击计数。ο属于集合rii的所有ip地址的一个或多个攻击严重性评分。ο属于集合rii的所有ip的一个或多个基于历史的评分。f)与网络域相关的示例性基于黑名单的特征以下列出的黑名单特征可用于确定上面关于图4b描述的网络域dd的恶意评分。基于黑名单的特征可以由特征处理引擎512提取或计算。在一些实施例中,基于黑名单的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。在某些示例中,恶意活动信息可以由一个或多个黑名单提供商(例如,图1的黑名单提供商112)获得。另外或替代地,可以从存储在图3的数据存储器312中的统一黑名单数据库(ubdb)获得恶意活动信息。ubdb可以包含以前从一个或多个开源黑名单获得的恶意活动信息。特征处理引擎512可以计算网络域dd的点击次数。特征处理引擎512可以基于识别网络域的特定黑名单来计算攻击严重性评分。在某些示例中,可以将比分配给已经用来发送垃圾邮件的网络域的严重性评分更高的严重性评分分配给用于命令和控制(c2)活动的网络域。为了计算攻击严重性评分,特征处理引擎512可以利用由一个或多个威胁情报源(例如,图1的威胁情报源110)提供的恶意活动信息。在某些示例中,可以利用与网络域关联的各种攻击类别,从从威胁情报源接收的恶意活动信息计算攻击严重性评分。根据ubdb,可以计算网络域的基于历史的评分。由特征处理引擎512提取/计算的基于外部的特征的具体示例可以包括以下当中的一个或多个:·网络域dd的各种黑名单内的总点击次数。·网络域dd的攻击严重性评分。·网络域dd的基于历史的评分。g)与ip地址相关的示例性基于网络的特征以下列出的基于网络的特征可用于确定上面关于图4a描述的ip地址ipi的恶意评分。此类特征可以由特征处理引擎512提取或计算。基于网络的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。在某些示例中,恶意活动信息可以由一个或多个黑名单提供商(例如,图1的黑名单提供商112)获得。另外或替代地,可以从存储在图3的数据存储器312中的统一黑名单数据库(ubdb)获得恶意活动信息。ubdb可以包含以前从一个或多个开源黑名单获得的恶意活动信息。应当认识到,对手通常可能使用“防弹”托管服务来发布攻击,以便避免执法和其他法律影响。此外,已知某些自主系统(as)比其他as具有更高的恶意活动发生率。因此,在一些实施例中,与as相关联的威胁可以用于确定ip地址ipi的严重性级别。如果ip地址与具有恶意活动历史的as绑定,那么相比与具有恶意活动历史的as无关的其它ip地址,可认为该ip地址有更高的严重性。为了确定与as相关联的威胁,特征处理引擎512可以利用由各种威胁情报源和黑名单源提供的恶意活动信息计算集合ipi的一个或多个ip地址的威胁评分。ip地址ipi的威胁评分还可以取决于由一个或多个dns提供商提供的恶意活动信息。在一些实施例中,与ip直接和间接相关联的as的数量、注册记录的数量以及新注册as的频率可以提供有关ip地址的生命周期的信息。特征处理引擎512可以计算与ip地址(直接或间接)相关联的as的数量、注册记录的数量以及新注册as的频率。在某些情况下,ip地址的这些数字越高,ip可能被视为有风险的可能性越高。由特征处理引擎512提取/计算的基于网络的特征的具体示例可以包括以下当中的一个或多个:·集合aii的不同自主系统(as)的数量。·对应于属于集合aii的as的注册条目的数量。·与属于集合aii的as关联的新注册的平均频率。·与属于集合aii的as关联的可疑活动的数量。·以下各项中的至少一个的总和、平均值、中值或标准差中的至少一个:ο对于属于集合aii的每个ip地址由情报源提供的一个或多个威胁评分。ο对于属于集合aii的一个或多个ip地址,从公共可用的ip报告计算的一个或多个威胁评分。ο属于集合aii的一个或多个ip地址的一个或多个黑名单点击计数。ο属于集合aii的一个或多个ip地址的一个或多个攻击严重性评分。ο属于集合aii的一个或多个ip地址的一个或多个基于历史的评分。h)与网络域相关的示例性基于网络的特征以下列出的基于网络的特征可用于确定上面关于图4b描述的网络域dd的恶意评分。用于确定一个或多个网络域的恶意评分的基于网络的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。在某些示例中,恶意活动信息可以由一个或多个黑名单提供商(例如,图1的黑名单提供商112)获得。另外或替代地,可以从存储在图3的数据存储器312中的统一黑名单数据库(ubdb)获得恶意活动信息。ubdb可以包含以前从一个或多个开源黑名单获得的恶意活动信息。如上所述,对手可能通常使用“防弹”托管服务来发布攻击,以避免执法和其他法律影响,并且已知某些自主系统(as)具有比其他as更高的恶意活动发生率。因此,重要的是识别与托管网络域的网络相关联的风险。因此,在一些实施例中,与ndd、edd、pdd、rid和as集合关联的威胁可用于确定网络域的严重性级别。举例来说,可以认为与具有恶意活动历史的名称服务器、as或电子邮件地址相关联的网络域名比没有这种绑定的其它域名对基础设施的风险更多。在某些情况下,可以认为与更高数量的as相关联的网络域比绑定到较少as的网络域风险更多。为了确定与属于集合ndd、edd、pdd、rid和as的网络标识符相关联的威胁,特征处理引擎512可以利用由各种威胁情报源和/或黑名单源提供的恶意活动信息计算网络域dd的威胁评分。网络域dd的威胁评分还可以取决于由一个或多个dns提供商提供的恶意活动信息。由特征处理引擎512提取/计算的基于网络的特征的具体示例可以包括以下当中的一个或多个:·属于集合as的不同as的数量。·寻找属于集合as的一个或多个as的注册条目数量。·属于集合as的一个或多个as的新注册的平均频率。·绑定到属于集合as的as的可疑活动的数量。·由一个或多个dns提供商提供一个或多个as声誉评分。·指示与网络域dd相关的一个或多个ip地址的排名的一个或多个rip评分。在某些示例中,rip评分可以由一个或多个dns提供商提供。·与网络域dd相关的一个或多个ip地址的一个或多个稳定性评分。在某些示例中,稳定性评分可以由一个或多个dns提供商提供。·给定相关联的ip前缀和这些前缀的声誉评分,网络域dd的一个或多个前缀排名。·网络域dd是快速流量候选的概率。·以下各项中的至少一个的总和、平均值、中值或标准差中的至少一个:ο集合ndd的一个或多个网络域的一个或多个安全排名ο集合edd的一个或多个网络域的一个或多个安全排名ο集合pdd的一个或多个网络域的一个或多个安全排名ο集合ndd的一个或多个网络域的一个或多个dga评分ο集合edd的一个或多个网络域的一个或多个dga评分ο集合pdd的一个或多个网络域的一个或多个dga评分ο集合ndd的一个或多个网络域的一个或多个攻击严重性评分ο集合edd的一个或多个网络域的一个或多个攻击严重性评分ο集合pdd的一个或多个网络域的一个或多个攻击严重性评分ο集合ndd的一个或多个网络域的一个或多个威胁类型严重性评分ο集合edd的一个或多个网络域的一个或多个威胁类型严重性评分ο集合pdd的一个或多个网络域的一个或多个威胁类型严重性评分ο属于集合ndd的一个或多个网络域的一个或多个黑名单点击计数ο属于集合edd的一个或多个网络域的一个或多个黑名单点击计数ο属于集合pdd的一个或多个网络域的一个或多个黑名单点击计数ο对于属于rid的每个ip地址,由威胁情报源提供的一个或多个威胁评分。i)与网络域相关的示例性基于行为的特征以下列出的基于行为的特征可用于确定上面关于图4b描述的网络域dd的恶意评分。用于确定网络域的恶意评分的基于行为的特征可以根据新鲜度评分进行加权,使得较新的特征比较旧的特征对恶意评分影响更大。特征处理引擎512可以从一个或多个dns提供商接收恶意活动信息。所接收的恶意活动信息可以包括共发域cdd的列表以及相关域rdd的列表。如上文关于图4a所论述的,属于集合rdd的网络域包括与网络域dd大约同时请求的网络域。因此,cdd和rdd中的恶意域数量可以提供有关网络域的恶意行为的宝贵信息。例如,cdd和rdd集合中的大量dga域名可以指示恶意软件的存在。特征处理引擎512可以根据接收的恶意活动信息计算统计值。由特征处理引擎512提取/计算的基于行为的特征的具体示例可以包括以下当中的一个或多个:·属于集合cdd的网络域的一个或多个安全排名。·属于集合rdd的网络域的一个或多个安全排名。·属于集合cdd的网络域的一个或多个dga评分。·属于集合rdd的网络域的一个或多个dga评分。·属于集合cdd的网络域的一个或多个安全类别评分。·属于集合rdd的网络域的一个或多个安全类别评分。·属于集合cdd的网络域的一个或多个攻击严重性评分。·属于集合rdd的网络域的一个或多个攻击严重性评分。·属于集合cdd的网络域的一个或多个威胁类型严重性评分。·属于集合rdd的网络域的一个或多个威胁类型严重性评分。·属于集合cdd的一个或多个网络域的一个或多个黑名单点击计数。·属于集合rdd的一个或多个网络域的一个或多个黑名单点击计数。e.决策引擎决策引擎可用于访问机器学习算法以及由参数确定引擎316提供的特征,以确定网络标识符的恶意评分。图6是根据一些实施例的图3的决策引擎318的示例性计算机架构,其能够实施图3的网络安全系统的至少一些方面。决策引擎208可以包括可以执行各种实施例的多个引擎。这些引擎可以是软件模块、硬件模块或其组合。如果引擎是软件模块,则引擎可以包含在计算机可读介质上,并由本文所述的任何计算机系统中的处理器处理。应当注意的是,本文所述的任何引擎、模块或数据存储器可以是负责管理进行相应计算所需类型的数据的服务。图6中描绘的引擎可以作为决策引擎318的一部分存在,或者引擎可以作为决策引擎318外部的单独模块或服务存在。在图6中描绘的实施例中,决策引擎318可以包括模型训练引擎602、评分引擎604和补救措施引擎606。下面将更详细地讨论此类引擎。模型训练和更新模型训练引擎602可以训练和/或更新一个或多个机器学习模型。模型训练引擎602可以采用监督学习技术来训练和/或更新一个或多个机器学习模型。模型训练引擎602可以接收由图3的参数确定引擎316提供的特征集。在某些示例中,参数确定引擎316与决策引擎318之间的通信可以通过持续消息队列发生以用于故障切换恢复目的。为了训练机器学习模型,模型训练引擎602可以获得包括网络标识符(例如,一个或多个ip地址和/或一个或多个网络域名)列表的训练数据,其具有预分配的恶意评分。在某些示例中,训练数据可以包括从一个或多个恶意活动源(例如,关于图1中描述的第三方服务器)获得的历史恶意活动信息。使用训练数据,模型训练引擎602可以利用特征集和常规监督学习算法,例如j48、naivebayes、logistic、决策表、randomtree(随机树)等生成和训练一个或多个机器学习模型。模型训练引擎602可根据其输出准确性对每个经训练的机器学习模型进行评分。举例来说,模型训练引擎602可以输入与单个网络标识符对应的特征集的参数,并确定由模型提供的输出的准确度。模型的输出可以与对应于网络标识符的预分配的恶意评分进行比较。因此,模型训练引擎602可以根据模型输出的准确度给每个模型评定在训练数据中提供的预分配的恶意评分的评分。在某些示例中,可以选择最高评分的模型来提供网络标识符的恶意评分。可以使用更新的历史恶意活动信息对多个机器学习模型进行重新训练,并且模型训练引擎602可以基于模型的相应输出与更新的历史恶意活动信息之间的准确度来选择机器学习模型(例如,机器学习模型704或另一机器学习模型)。评分引擎604可被配置成(例如,从图3的参数确定引擎316)接收与一个或多个网络标识符相关联的特征集。特征集可以包括上文关于参数确定引擎316描述的特征的任何组合。评分引擎604可以利用选定的机器学习模型来输出对应于特征集的网络标识符的恶意评分。恶意评分可以是数值。在某些情况下,恶意评分可以对应于识别安全风险的分类标签。作为非限制性示例,声誉标签可包括“关键”、“高”、“中”、“低”,其中“关键”声誉标签指示最高风险严重程度,“低”声誉标签指示最低风险严重程度。输出可以作为历史恶意活动信息存储,用于更新/训练机器学习算法。图7是图示了根据一些实施例的用于训练和更新机器学习模型的示例性过程的流程图700。图7中所描绘的过程可由模型训练引擎602执行。在702处,模型训练引擎602可以根据评分从一组已训练机器学习模型中选择机器学习模型704。评分最初可以以上述方式确定。机器学习模型704可以存储在图3的数据存储器312或图6的评分引擎606可访问的另一位置中。在706处,评分引擎606可以访问机器学习模型。使用与用于训练机器学习模型704共同的特征类型,评分引擎606可以将这些特征输入机器学习模型704中以计算恶意评分。举例来说,评分引擎606可以将与ip地址相关联的特征输入到机器学习模型704中,并且接收ip地址的恶意评分。在708处,恶意评分可存储在恶意评分数据存储器710中。恶意评分数据存储器710可以作为图3的数据存储器312的一部分被包括。在712处,可以向模型训练引擎602提供恶意评分数据存储器710的恶意评分。模型训练引擎602可以利用恶意评分(单独地或结合历史恶意活动信息)重新训练机器学习模型704。在某些示例中,可以将恶意评分存储为历史恶意活动信息的一部分以用于将来的训练活动。图7中描绘的过程可以执行任何合适的次数。因此,随着时间的推移,机器学习模型704通过利用不断扩展的训练数据集来提高确定恶意评分的效率和准确性。新鲜度考虑事项随着时间的推移,网络标识符的快速演变性质可能会对网络安全系统,例如本文所述的网络安全系统,产生挑战。此外,最近发现为恶意性的网络标识符可能比很久以前确定为恶意性的网络标识符对基础设施带来的安全性威胁更大。因此,在一些实施例中,本文所述的机器学习模型可以对从最新的恶意活动信息中提取和/或确定的特征比对从较旧的恶意活动信息提取和/或确定的特征进行更大权重地加权。在一些示例中,可根据与恶意活动信息相关联的接收时间对特征进行加权。在另外一些示例中,可根据由第三方服务器分配并提供恶意活动信息的时间戳对特征进行加权。可以基于计算(-log(x3))+6*5,确定所接收的恶意活动信息的特征的权重值,其中,x是恶意活动信息的接收时间或时间戳日期与以天为单位的当前日期之间的差异。因此,允许较新的恶意活动信息比较旧的恶意活动信息具有更大的影响。执行补救措施决策引擎318的一个功能是根据所确定的恶意评分执行一个或多个补救措施。补救措施引擎608(是决策引擎318的模块)可以被配置成执行此类措施。补救措施可包括但不限于:限制/允许网络流量,通知网络标识符的用户和/或远程装置与风险严重性相对应的声誉标签,提供一个或多个恶意评分,修改过滤器列表(如黑名单或白名单),或分配/修改网络标识符与声誉标签或恶意评分之间的关联。设想单个补救措施可以包括上面列出的特定补救措施的任何合适数量和组合。在某些示例中,补救措施不需要由补救措施引擎608执行,而补救措施引擎608可激励单独装置来执行补救措施的至少一些部分。作为非限制性示例,补救措施引擎606可以接收由评分引擎604提供的恶意评分。补救措施引擎606可以响应于特定的恶意评分查询协议集,以确定要发起的一个或多个补救措施。举例来说,协议集可以包括规则、程序和/或映射,其指示响应于特定的恶意评分要执行的一个或多个补救措施的特定集合。举例来说,协议集可以指示已经与“关键”声誉标签(或者超过阈值的恶意评分)相关联的网络标识符应被添加至特定黑名单。作为另一示例,协议集可以指示已经与“低”声誉标签(或低于阈值的恶意评分)相关联的网络标识符应当添加到特定白名单。协议集可以指示当特定网络标识符已经与“高”声誉标签关联时,应通知特定实体。这种协议集中可用的可能变型很多,并且可以由具有网络流量管理领域技能的技术人员设想。iv.确定恶意评分的方法在下文参考图8描述了用于确定一个或多个网络标识符(ip地址和/或网络域)的恶意评分的方法。此方法可由上面参照例如图1、图2、图3、图5和图6描述的计算机系统实施。图8示出了根据一些实施例的用于确定一个或多个网络标识符的恶意评分的示例性方法800的流程图。该方法可以由网络安全系统(例如,图2的网络安全系统104)执行。在802处,可以(例如,由图3的请求处理引擎320)接收评估关于一个或多个网络标识符的集合的恶意活动的请求。在某些示例中,请求可以由图1的客户端计算机102发起。在其它实施例中,可从数据存储器(例如,数据存储器312)获得一个或多个网络标识符的集合,而不是在方法800中接收该集合。在804处,可以(例如,由参数确定引擎316或参数确定引擎316的模块)确定与网络标识符的集合中的单个网络标识符相关联的一个或多个相关网络域的集合或一个或多个相关ip地址的集合中的至少一个。如果网络标识符的集合包括至少一个ip地址,则可根据上文关于图4a描述的过程对该ip地址确定相关域和相关ip地址。如果网络标识符的集合包括至少一个网络域,则可以根据上述关于图4b描述的过程对该网络域确定相关域和相关ip地址。如果一个或多个网络域的集合包括ip地址和网络域,则可执行图4a和图4b的相应过程,以确定相关网络域和相关ip地址。在806处,可以(例如,由图5的一个或多个引擎)向多个第三方服务器(例如,图1的第三方服务器)发送提供恶意活动信息的请求。第三方服务器可以包括dns提供商108、威胁情报提供商110、黑名单提供商112、恶意活动分析提供商114和/或网络流量报告提供商116的任何合适组合。这些请求可以涉及一个或多个网络标识符的集合、一个或多个相关网络域的集合,以及一个或多个相关ip地址的集合,不过可以使用上述各项的任何合适的组合。在808处,可以(例如,由图5的对应引擎,即威胁情报引擎502、恶意活动内容引擎504、黑名单引擎506、dns引擎508和网络流量引擎510)接收从多个第三方服务器请求的恶意活动信息的至少一部分。在一些实施例中,可以由图5的每个引擎存储恶意活动信息,或图5的引擎可以使恶意活动信息被存储(例如,在数据存储器312中)。由每个第三方服务器接收的恶意活动信息可以存储在任何合适的存储容器,并且与对应的网络标识符相关联,以便稍后检索。在810处,可以从在808处接收的恶意活动信息(例如,由图5的特征处理引擎512)提取第一特征集。第一特征集可以包括上面关于特征处理引擎512描述的特征的任何合适的组合。在一些实施例中,第一特征集可以排除与上述的总和、平均值、中值和标准差相关的统计值。在812处,可以从在810处提取的第一特征集(例如,由特征处理引擎512)计算第二特征集。第二特征集可以包括上述任何合适的统计值(例如,总和、平均值、中值、标准差、计数、点击等,诸如从基于外部的特征计算的那些)。第二特征集可以包括从从多个第三方服务器中的每一个接收的第一特征集的共同特征计算的至少一个统计值。例如,可以通过使用一个或多个ip地址的相同特征(例如,与ip地址相关联的威胁评分)来计算总和,使得与一个或多个ip地址中的每一个相关联的特征值可以合并以提供总和。在814处,可以利用机器学习模型(例如,由评分引擎604)计算一个或多个网络标识符的集合的一个或多个恶意评分。恶意评分可以对应于声誉标签(如“关键”、“高”、“中”、“低”等)。机器学习模型可以利用第一特征集和第二特征集作为输入。在某些示例中,可以利用来自多个第三方服务器中的一个或多个第三方服务器的历史恶意活动信息训练机器学习模型。在816处,基于在814处计算的一个或多个恶意评分,可以(例如,由图6的补救措施引擎606)执行补救措施。在一些实施例中,部分或全部补救措施可以由与网络安全系统104分离的装置执行。补救措施可包括但不限于:限制/允许网络流量,通知用户和/或远程装置条件和/或风险严重性,提供一个或多个恶意评分,修改过滤器列表(如黑名单或白名单),或分配/修改ip地址/网络域名和声誉标签之间的关联。在816处执行的补救措施可以包括上面列出的补救措施的任何合适数量和组合。v.技术优势本文提供的系统和方法可以用在诸如防火墙、入侵检测系统(ids)等的各种安全控制中。由于常规的ip报告的保真度低,因此可能未检测到恶意活动。如果未检测到,将不能提醒安全事件和事件监测系统(siem)网络中可能存在的恶意ip地址。利用本文提供的系统和方法,多个不同的恶意活动信息源可以被用来分析与一个或多个网络标识符有关的恶意活动信息。通过利用本文提供的源和特征集,可以更准确地确定与恶意活动相关联的风险,因此可以向其他网络安全系统(例如siem和/或ids)提供更高保真度的警报。在一些实施例中,本文所述的决策引擎在网服务器后运行,并支持应用编程接口(api)。因此,确定与一个或多个网络标识符相关联的恶意评分和/或声誉标签的功能可以作为服务提供。因此,本文所述的系统可以使用api与常规siem和/或ids轻松地集成。本文提供的机器学习方面使自动化ip地址声誉系统和自动化网络域系统能够随时间推移产生更高保真度的恶意评分和警报。另外,用于确定恶意评分的特定特征提供更鲁棒的恶意活动分析。类似地,图4a和图4b的过程使自动化ip地址声誉系统和自动化网络域系统能够扩展请求恶意分析的范围,以包括相关的ip地址和网络域。通过分析除了原始网络标识符集合之外的相关ip地址和相关网络域,检测恶意活动的可能性会比常规系统提高。vi.计算机系统本文所提及的任何计算机系统都可以使用任何合适数量的子系统。在一些实施方案中,计算机系统包含单个计算机设备,其中子系统可以是计算机设备的组件。在其它实施例中,计算机系统可以包含多个计算机设备,每个计算机设备都是具有内部组件的子系统。计算机系统可包含台式计算机和膝上型计算机、平板计算机、移动电话和其它移动装置。子系统可以通过系统总线互连。可以使用额外的子系统,诸如打印机、键盘、一个或多个存储装置、耦合到显示器适配器的监视器以及其它。耦合到i/o控制器的外围设备和输入/输出(i/o)设备可以通过本领域中已知的各种手段(例如输入/输出(i/o)端口(例如usb、))连接到计算机系统。例如,i/o端口或外部接口(例如,以太网、wi-fi等)可用于将计算机系统连接到广域网(例如,因特网)、鼠标输入装置或扫描仪。经由系统总线的互连可以允许中央处理器与每个子系统通信,并控制来自系统存储器或存储装置(例如,诸如硬盘驱动器或光盘的固定盘)的指令的执行,以及子系统之间的信息交换。系统存储器和/或存储装置可以体现计算机可读介质。另一子系统是数据收集装置,例如相机、麦克风、加速度计等等。本文所提及的任何数据都可以从一个组件输出到另一组件,并可以输出给用户。计算机系统可包含例如由外部接口或由内部接口连接在一起的多个相同组件或子系统。在一些实施方案中,计算机系统、子系统或设备可以通过网络通信。在此类情况下,一个计算机可视为客户端,且另一计算机可视为服务器,其中每台计算机可以是同一计算机系统的一部分。客户端和服务器可以各自包含多个系统、子系统或部件。应理解,本发明的任何实施方案都可以使用硬件(例如专用集成电路或现场可编程门阵列)和/或使用计算机软件以控制逻辑的形式实施,其中通用可编程处理器是模块化的或集成的。如本文中所使用,处理器包含单核处理器、在同一集成芯片上的多核处理器,或在单个电路板上或网络化的多个处理单元。基于本公开和本文中所提供的教示,本领域的普通技术人员将知道并且了解使用硬件和硬件与软件的组合来实施本发明的实施例的其它方式和/或方法。本申请中所描述的任何软件组件或功能可被实施为要使用例如java、c、c++、c#、objective-c、swift的任何合适计算机语言或例如perl或python的脚本语言,使用例如常规的或面向对象的技术由处理器执行的软件代码。软件代码可以存储为计算机可读介质上的一系列指令或命令以用于存储和/或传输。适合的非瞬态计算机可读介质可以包含随机存取存储器(ram)、只读存储器(rom)、磁介质(例如硬盘驱动器或软盘)或光介质(例如,压缩光盘(cd)或dvd(数字通用盘))、闪存等等。计算机可读介质可以是此类存储或传输装置的任何组合。此类程序还可以使用适应于经由包含因特网的符合多种协议的有线、光学和/或无线网络进行传输的载波信号来编码和传输。因此,根据本发明的实施例的计算机可读介质可以使用以此类程序编码的数据信号来创建。以程序代码编码的计算机可读介质可与兼容装置一起封装或与其它装置分开地提供(例如,经由因特网下载)。任何此类计算机可读介质可以驻留于单个计算机产品(例如,硬盘驱动器、cd或整个计算机系统)上或内,且可存在于系统或网络内的不同计算机产品上或内。计算机系统可以包含用于将本文中所提及的任何结果提供给用户的监视器、打印机或其它合适的显示器。本文中所描述的任何方法可以完全或部分地用计算机系统来执行,所述计算机系统包含可被配置成执行所述步骤的一个或多个处理器。因此,实施例可以涉及被配置成执行本文中所描述的任何方法的步骤、可能具有执行相应步骤或相应步骤群组的不同组件的计算机系统。尽管以编号的步骤呈现,但是可以同时或以不同的顺序执行本文中的方法的步骤。另外,这些步骤的部分可以与其它方法的其它步骤的部分一起使用。此外,步骤的全部或部分可以是任选的。另外,任何方法的任何步骤都可以用执行这些步骤的模块、单元、电路或其它构件来执行。在不偏离本发明的实施例的精神和范围的情况下,具体实施例的特定细节可以以任何适当方式组合。然而,本发明的其它实施例可以涉及与每个个别方面或这些个别方面的特定组合相关的特定实施例。上文对本发明的示例实施例的描述已经出于图示和描述的目的呈现。其不希望是详尽的,或将本发明限于所描述的精确形式,且根据上文的教示许多修改和变化是可能的。除非明确指示有相反的意思,否则叙述“一个/种”或“所述”旨在表示“一个/种或多个/种”。除非明确指示有相反的意思,否则“或”的使用旨在表示是“包括性的或”,而不是“排他性的或”。提到“第一”组件并不一定要求提供第二组件。而且,除非明确指出,否则对“第一”或“第二”组件的引用并不会将被引用的组件限制到特定位置。本文中提到的所有专利、专利申请、公开和描述出于所有目的通过引用被全部并入本文中。不承认它们是现有技术。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1