CN113824678B - 处理信息安全事件的系统、方法和非暂时性计算机可读介质 - Google Patents
处理信息安全事件的系统、方法和非暂时性计算机可读介质 Download PDFInfo
- Publication number
- CN113824678B CN113824678B CN202110096823.9A CN202110096823A CN113824678B CN 113824678 B CN113824678 B CN 113824678B CN 202110096823 A CN202110096823 A CN 202110096823A CN 113824678 B CN113824678 B CN 113824678B
- Authority
- CN
- China
- Prior art keywords
- information security
- events
- event
- decision
- computer system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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/1416—Event detection, e.g. attack signature detection
-
- 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/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- 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/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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
-
- 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
-
- 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/1441—Countermeasures against malicious traffic
-
- 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/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- 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/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- 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/1441—Countermeasures against malicious traffic
- H04L63/1483—Countermeasures against malicious traffic service impersonation, e.g. phishing, pharming or web spoofing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及处理信息安全事件以检测网络攻击的系统和方法。用于处理计算机系统的信息安全事件的方法包括:接收与在所述计算机系统中发生的多个信息安全事件有关的信息,每个事件包括与所述计算机系统的信息安全的可能违反有关的事件;确定针对每个事件的判决,所述判决包括:i)信息安全事故或ii)误报;如果相应事件的误报概率大于第一阈值,则所述判决为误报;将针对事件的子集的判决从所述误报更改为所述信息安全事故,所述子集中的事件的数量低于第二阈值;对判决为信息安全事故的信息安全事件进行分析,以确定所述计算机系统是否受到网络攻击。
Description
技术领域
本发明涉及信息安全领域,并且更具体地,涉及处理信息安全事件以检测网络攻击的方法。
背景技术
当前,除了传统的恶意软件(例如病毒、因特网蠕虫、键盘记录器、加密器等),计算机攻击(也称为网络攻击)也已经变得普遍。例如,此类攻击可能包括针对信息系统的定向攻击(也称为目标攻击(targeted attack)或TA)和复杂攻击(高级持续性威胁(advancedpersistent threat)或APT)。信息系统包括计算设备和用于将它们链接在一起的通信的总体。信息系统也称为公司基础设施。网络罪犯可能有各种各样的目的,从简单地盗窃个人数据到工业间谍活动。网络罪犯通常具有关于公司网络的架构、内部文档流的原则、用于保护网络和计算机设备的手段的信息,或信息系统特有的且通常被隐藏的任何其它信息。有了这些信息,网络罪犯就可以绕过现有的防御手段,而这些防御手段通常在其设置方面没有灵活性而无法满足信息系统的所有需求。
用于防御恶意软件和计算机威胁的现有技术(例如签名分析、启发式分析、仿真等)具有许多缺陷。这些缺陷通常会阻止此类防御技术提供适当级别的针对定向攻击和其它计算机攻击的保护。例如,常规的恶意软件防御平台无法检测和调查先前未知的威胁、计算机攻击,诸如复杂攻击(使用技术来绕过防御平台)以及长时间(从几天到几年)攻击,这些攻击的指标在攻击开始很长时间后才变得已知。
因此,除了常规的防病毒解决方案以及入侵检测和预防系统之外,通常使用更高级的系统来保护公司网络免受上述威胁。这种更高级的系统包括但不限于,具有集成的威胁数据流的安全信息和事件管理(SIEM)系统、用于检测复杂威胁和定向攻击的反APT系统、以及用于基于妥协指标查找关于恶意软件的特征的信息的系统。除自动系统外,信息安全(InfoSec)专家的分析也可以用作防御机制。自动系统通常通过将InfoSec事件与关于已知威胁的数据相关联来检测InfoSec事故。在大多数情况下,检测到的InfoSec事故可能需要InfoSec专家进行分析,以最小化危害、收集关于事故的数据以及应采取的未来缓解措施。然而,现有系统中的大量InfoSec事故通常都是误报(false positive)。因此,InfoSec专家经常在分析错误事故上浪费大量时间,这增加了忽略真正InfoSec事故的可能性。而且,聘请大量合格的InfoSec专家的费用正在不断增加。
因此,需要解决常规网络攻击防御平台在将信息安全事件处理成事故和误报时的缺点。
发明内容
作为本发明的一个变型实施方式,提出了一种用于处理计算机系统的信息安全事件的方法,其中,该方法包括以下步骤:接收与在计算机系统中发生的多个信息安全事件有关的信息。多个信息安全事件中的每一者包括与计算机系统的信息安全的可能违反有关的事件。确定针对接收到的多个信息安全事件中的每一者的判决。判决包括以下项之一:i)信息安全事故或ii)误报。如果针对相应信息安全事件的误报概率大于第一阈值,则判决为误报。针对多个信息安全事件的子集的判决从误报变化到信息安全事故。子集中的信息安全事件的数量低于第二阈值。对具有信息安全事故的判决的信息安全事件进行分析,以确定计算机系统是否受到网络攻击。
在一方面,接收与多个信息安全事件有关的信息还包括:接收与计算机系统的对象有关的一个或多个事件安全通知。所述一个或多个事件安全通知包括表征计算机系统中发生的事件的标记和指示收集关于事件的相应信息所用的时间间隔的时间戳。
在一方面,经训练的机器学习模型基于以下项中的至少一者来确定判决:一个或多个事件安全通知的特征、所述一个或多个事件安全通知的一个或多个来源、所述一个或多个事件安全通知的所述一个或多个来源的特征。
在一方面,对信息安全事件进行分析还包括对具有最低误报概率的信息安全事件进行分析。
在一方面,判决包括以下项之一:模糊判决、暂定判决、最终判决。
在一方面,表征计算机系统中发生的事件的标记包括以下项中的至少一者:对象的至少一部分的校验和、嵌入在计算机系统上的对象的资源的来源、对象的执行的仿真结果、从对象调用系统函数的日志、对象在计算机系统上的出现时间、对象通过计算机网络正在传输的数据。
在一方面,确定判决还包括:计算针对相应对象的模糊哈希,以及确定所计算的哈希是否对应于已知恶意对象。
在一个方面,所述方法还包括基于对第一组信息安全事件进行分析的结果来确定第二阈值。
在一个方面,所述方法还包括基于对第一组信息安全事件进行分析的结果来修改经训练的机器学习模型的训练样本。
附图说明
并入本说明书中并构成本说明书的一部分的附图示出了本发明的一个或多个示例性方面,以及连同详细的描述一起用来阐述这些示例性方面的原理和实现方式。
图1a示出了示例性计算机攻击检测系统的总体框图。
图1b示出了用于处理信息安全事件的示例性系统的框图。
图2示出了示例性计算机保护系统。
图3示出了示例性定向攻击保护系统。
图4示出了在发送信息安全事件以进行分析之前处理信息安全事件的示例性方法。
图5示出了校正用于确定误报和/或信息安全事故的机器学习模型的参数的示例性方法。
图6示出了在其上可以实现本文公开的系统和方法的各变型方面的通用计算机系统的示例。
具体实施方式
本文中在用于处理信息安全事件以检测网络攻击的系统、方法和计算机程序产品的上下文中描述示例性方面。本领域的普通技术人员将认识到,以下描述仅仅是示例性的,而不旨在以任何方式进行限制。其它方面将很容易将其自身暗示给了解本发明的优点的本领域的技术人员。现在将详细地参考如附图中所示的示例性方面的实现方式。贯穿附图和以下描述将尽可能地使用相同的附图标记来指代相同或类似的项。
现在将介绍将在描述本发明的各个变型方面时使用的多个定义和概念。
术语“信息安全”(InfoSec)是指涵盖一系列问题的科学技术领域,这些问题涉及在存在计算机威胁的情况下确保对信息基础设施中的对象进行保护。如本文所使用的,术语“信息安全”还可以指保护信息免受未经授权的查看、转换和破坏,以及指保护信息资源免受旨在影响其性能的动作的影响。
术语“InfoSec事件”是指系统或网络中任何已识别的现象。
术语“InfoSec事故”是指对信息系统的InfoSec的违反或对信息系统的InfoSec的违反的威胁。
术语“InfoSec威胁”是指构成发生InfoSec事故的危险的任何潜在的事件、动作(影响)、过程或现象。
术语“信息系统的漏洞”是指信息系统中的缺陷,外部网络罪犯可以使用该缺陷来故意实现InfoSec威胁。
术语“漏洞利用”是指计算机程序、计算机代码片段或命令序列利用软件中的用于对信息系统进行攻击的漏洞。
术语“对InfoSec事件的响应”是指一组结构化的动作,其旨在建立事故的详细信息,最小化来自事故的危害并防止InfoSec事故的重复发生。
术语“计算机攻击”是指由网络罪犯执行且针对组织或自然人的信息系统的一系列秘密且冗长的步骤,从而渗透网络并对该组织或自然人造成各种危害。
术语“定向攻击”(也称为“目标攻击”,TA)是指对组织或特定自然人的特定信息系统进行的计算机攻击,从而渗透网络并对该组织或自然人造成各种伤害。
术语“复杂攻击”(也称为“高级持续性威胁”或APT或APT攻击)是指利用复杂的恶意软件、社会工程方法和关于受害者信息系统的数据的复杂、冗长、精心计划且多管齐下的计算机攻击。
术语“攻击的生命周期”(也称为“杀伤链”)是指实施攻击的步骤序列。
术语“SIEM”(安全信息和事件管理)是指能够实时分析源自网络设备和应用程序的IS事件的系统。SIEM系统的组件之一可以配置为将事件与关于威胁的数据流进行匹配。
术语“关于威胁的数据流”(也称为“馈入”)是指包含妥协指标并允许通过使用SIEM系统和其它网络设备以及信息保护手段来发现妥协实例的信息。
术语“妥协指标”(也称为“IoC”),很少被称为“感染指标”,是指在计算机上或在网络中可观察到的入侵到信息系统中的人为现象或残留症状。妥协的典型指标可以是,例如,触发的病毒签名、从其下载了恶意软件的IP地址、恶意和不可信文件的校验和、恶意和不可信资源的URL地址、以及在已知的计算机攻击中观察到的僵尸网络的命令中心的域名。存在许多用于妥协指标的标准,例如OpenIoC、STIX等。
术语“模糊哈希”或“灵活卷积”是指文件卷积,其形成为使得文件中的轻微改变将不会导致卷积的改变。即,在借助恶意文件的卷积值检测到恶意文件时,也将检测到许多类似(可能未知)的恶意文件。这种卷积的主要特征是它对文件中的微小变化的不变性。
术语“模糊判决”是指保护系统(防病毒应用程序)在检测到文件的可疑动作后做出的响应,该可疑动作是恶意文件的特征。例如,在借助灵活卷积检测到文件时,可以触发模糊判决。模糊判决证明所找到的文件在一定的概率程度上是恶意的。
图1a示出了计算机攻击检测系统的总体框图。该系统在2018年3月16日提交的名称为“System and method of cloud detection,investigation and elimination oftargeted attacks”、序列号为15/923,581的美国专利申请中有详细描述,并且该美国专利申请通过引用(“581申请”)并入本文,并且该系统示出了信息安全事件的来源(以下简称“事件)。应当注意,所示出的系统仅仅是一个示例性实施方式。因此,系统可能缺少某些所示元件,并且这些元件的功能将由系统的其它元件来实现。
信息系统100(也称为“企业基础设施”)可以包括通过计算机网络105链接在一起的一组计算机101(也称为“计算机设备”)。如本文所使用的,术语“计算机”101通常是指任何计算设备和传感器,尤其是个人计算机、笔记本电脑、智能手机以及诸如路由器、交换机、集中器等通信设备。信息系统100可以使用现有技术中已知的网络105的任何拓扑来组织,例如但不限于:全连接拓扑、总线拓扑、星形拓扑、环形拓扑、蜂窝或混合类型的拓扑。在某些计算机101上可能安装了计算机保护模块102。信息系统100可以包括定向攻击保护模块103,定向攻击保护模块103可以放置在例如单独的服务器上。该系统可以包括信誉服务器104,该信誉服务器104可以位于信息系统100或服务提供商的云服务中(即,连接到检测模块110)。应当注意,计算机101可以是物理设备或虚拟机。代理服务器(图中未示出)可以用于通过网络105将计算机101连接到互联网和检测模块110。
计算机保护模块102和(可选地)定向攻击保护模块103可以配置为收集关于计算机101上和网络105中的对象的信息。这些模块可以进一步配置为收集关于可疑事件的信息,这些可疑事件与出现在计算机101上和网络105中的所述对象有关。计算机保护模块102和定向攻击保护模块103还可以配置为通过网络105向检测模块110(例如,服务提供商的云服务)发送安全通知,特别地,该安全通知包括关于保护模块本身的信息(其标识符等)以及所收集的关于对象的信息。在一特定方面,安全通知还可以包括时间戳(收集关于对象的所述信息的时刻或时间间隔)。在一特定方面,对象可以是例如文件、进程、URL地址、IP地址、数字文件签名的证书或文件执行日志。
特别地,保护模块102、103可以用于收集关于至少一个对象的以下信息:
·进程的行为(例如执行路径);
·操作系统(ОS)中的事件—ОS的事件日志中的记录;
·关于网络之间交互的信息;
·妥协指标;
·保护模块的判决(包括模糊判决)或测试签名;
·对象的元数据,包括对象的校验和。
在另一方面,特别地,关于对象的信息还可以包含以下项之一:
·对象或其一部分的校验和(例如,文件或其一部分的校验和,特别是MD5、CRC、SHA-1、SHA-2、Kessak、GOST R 34.11-2012等);
·嵌入在计算机上的对象的资源的来源(例如,从其下载对象的资源的IP地址);
·对象的执行的仿真结果;
·从对象调用系统函数的日志(如果对象是进程);
·对象在计算设备上的出现时间;
·对象通过网络正在传输的数据。
定向攻击保护模块103可以通过网络105链接到计算机保护模块102,并且可以对信息系统100的网络活动进行分析。定向攻击保护模块103还可以配置为通过特别是使用“沙盒”环境(用于安全执行进程的计算机环境)和其它检测技术(以下结合图2和图3进行描述)检测计算机101上的对象,来对信息系统中的定向攻击的检测进行分析。
定向攻击保护模块103可以配置为收集在网络流量中正在发送的信息。因此,定向攻击保护模块103可以收集从计算机101(包括其上未安装保护模块102的那些计算机101)通过网络105正在传输的关于对象的信息。
关于网络105中的对象的信息可以包括定向攻击保护模块103的判决、关于网络流量中的可疑行为的信息、关于域名系统(DNS)中的可疑行为的信息、或来自电子邮件或互联网的对象的仿真结果。
在特定方面,保护模块102、103可以收集关于所有前述对象的信息。在另一方面,保护模块102、103可以包含安全(合法)对象(对于这些对象已知其肯定不是恶意的或可疑的)的列表以及恶意和可疑对象的列表。
在又一方面,保护模块102、103可以包含需要收集关于其信息的补充对象的列表。这样的对象列表可以由管理员106生成。在又一特定方面,管理员106可以生成恶意和可疑对象的列表以及安全对象的列表,从而向这些列表中添加对象或从这些列表中排除对象。
管理员106可以指示禁止动作的列表和允许动作的列表。例如,在信息系统100中,某些计算机101可能禁止使用psexec实用程序,因为网络罪犯可能将该实用程序用于远程管理。保护模块102、103可以收集关于与禁止动作相关联的对象的信息。因此,如果已在特定计算机101上或网络105中确定了实用程序psexec的使用,则关于该使用的信息将由保护模块102、103之一发送至检测模块110。作为响应,检测模块110可以配置为添加相应的标记。禁止动作的列表和允许动作的列表可以存储在信息系统100或检测模块110中。如果保护模块103在未安装保护模块102的计算机101上检测到psexec实用程序的使用,则可以由保护模块103或检测模块110使用禁止动作的列表来对在该计算机上使用psexec的允许性进行检查以及添加相应标记。在又一特定方面,如果在禁止动作的列表或允许动作的列表中不存在信息,则分析中心115可以从管理员106确定所检测到的动作是否是可允许的,以及如果不允许该动作,则添加相应的标记。
检测模块110可以配置为将接收到的安全通知保存在对象数据库112中,然后在接收到的安全通知中对来自威胁数据库111的对象进行搜索。在从安全通知中找到威胁数据库111中的对象之后,检测模块110可以将找到的与在威胁数据库111中的对象相对应的对象的标记添加到对象数据库112。例如,可以通过以下方式定义对应关系:威胁数据库111和对象数据库112中对象的校验和之间的一致性。
对象的标记可以是在计算机101上已经发生的事件的与找到的对象有关的特征,或者是对象本身执行的动作或在对象上执行的动作的特征。因此,当且仅当在计算机101上已经发生了特定事件或已经执行了与该对象有关的特定动作的情况下,才可以将对象的标记添加到该对象。在一特定方面,对象的标记表征例如保护模块102、103的判决以及关于对象的可疑行为的信息(基于关于对象的信息)。因此,特别地,对象的标记可以包括以下事件(下文中,假定仅基于获得的关于给定对象的信息检测的与该给定对象有关的这些事件已经在计算机101上发生的情况下,才将标记添加到该对象):
·计算机上的DNS服务器欺骗;
·断开操作系统的自动更新;
·断开网络防火墙;
·断开保护模块;
·断开Windows操作系统(OS)的组件UAC(用户帐户控制)。
在又一特定方面,由检测模块110添加到对象的对象标记还可以包括以下事件:
·关于对象的校验和之间缺乏一致性的信息(例如,如果可能是远程访问应用程序的可执行文件已被重命名);
·违反计算机上的验证配置文件(在收集关于对象的信息的给定时间段内,在计算机101上对用户的特定列表进行了验证,该用户现在不在已经在计算机101上被认证的列表中;
·违反进程的网络活动配置文件(在收集关于对象的信息的给定的时间段内(例如,一天、两天或更多天),进程通过网络与来自互联网上的IP地址列表的特定IP地址进行交互,之后该进程通过网络连接到在该列表中不存在的IP地址);
·调度程序、自动播放设置和/或驱动程序/OS服务任务,这些在给定信息系统100内是唯一的,但在所允许的任务列表中不存在;
·与在网络威胁情报或威胁情报的外部来源中搜索对象的结果有关的标记;
·在其上已检测到如下文件的计算机101,这些文件被分类为键盘记录器、远程管理工具或监视器,并且在少数计算机101上找到。
在一特定示例性方面,如果对象未包含在恶意对象列表中,则检测模块110可以为其计算模糊哈希。此后,检测模块110可以验证此模糊哈希是否对应于任何恶意对象,如果是,则初始对象也将被标记为恶意的。此外,可以由检测模块110针对给定文件创建判决,并且可以将该判决发送到保护模块102。
使用检测模块110,可以基于接收到的安全通知和可能包含在所述安全通知中的对象的添加的标记,在可疑活动数据库113中搜索可疑活动的指标(即计算机攻击的特征指标)。在找到可疑活动的指标之后,包含在可疑活动数据库113中的标记可以由检测模块110添加,特别是添加到安全通知中。标记指示已发现的可疑活动的指标的存在。随后,可以通过在所获得的对象和安全通知、以及来自对象数据库112的所述对象和安全通知的标记中识别(也关联)来自计算机攻击数据库114的计算机攻击的签名,来检测计算机攻击的指标。
在一特定方面,可疑活动的指标可以取决于计算机攻击、尤其是定向攻击的战术、技术和程序(TTP)。
下面给出TTP的示例。用户已收到附有办公文档的电子邮件。该文档包含宏,并且用户同意启动它。该宏在PowerShell中执行,该PowerShell从站点下载了以Base64编码的内容,并在不在磁盘上创建任何文件的情况下启动了该宏。启动的代码在PowerShell进程的上下文中执行,并通过在寄存器的分支中创建记录来设置其在计算机系统中的自动启动,从而确保无论何时用户使用其帐户登录到OS都启动该代码。此代码是重命名的应用程序代码。通过此代码,网络罪犯完成了远程进入妥协系统。
在该示例中,存在以下可疑活动指标:
·从Office应用程序启动PowerShell;
·混淆PowerShell参数的启发式模糊判决(压缩、以BASE64编码等);
·来自PowerShell解释器的HTTP请求;
·先前在恶意软件(包含在恶意对象列表中)的传播中检测到了从其下载附件的站点;
·访问扫描器对下载的附件发布模糊判断(例如,类似于计算灵活卷积的结果);
·使用信誉服务器获得的信誉低于给定值;
·在从站点下载恶意内容后,保护模块102在扫描PowerShell进程的存储器时发布判决或模糊判决;
·PowerShell修改了用于自动播放的注册键(register key);
·在自动播放中注册的文件的哈希与名称不匹配(例如,文件的哈希与应用程序的哈希匹配,但文件名不同)。
在另一方面,可疑活动的指标可以取决于关于在执行渗透测试(英文缩写:pentest)期间获得的定向攻击的信息。例如,渗透测试组可能使用服务器消息块(ServerMessage Block,SMB)协议中的漏洞来获得对管理员的计算机的特权访问,其中,借助于合法实用程序,它创建了进程lsass.exe的存储器信息转储(memory dump)。从该转储中提取验证数据,然后将其用于访问网络中的其它计算机,也从其它计算机中获得存储器信息转储并提取验证数据。重复该过程几次,直到获得对Windows域的管理员的验证数据的访问权限。
如本文所使用的,术语“计算机攻击的指标”是指满足建立信息安全事故(以下称为事故)并由分析中心115对事故进行彻底调查和确认或对定向攻击进行反驳(在误报的情况下)所必须的条件。
在一特定方面,在识别计算机攻击的签名时,不仅可以明确地确认计算机攻击的指标的识别,而且可以确认计算机攻击的识别而无需通过分析中心115进行确认,因此将建立信息安全事故。然后,分析中心115可以对确认的InfoSec事故进行调查和响应。在另一方面,在识别计算机攻击的签名时,可能不可以明确地确认定向攻击。在这种情况下,分析中心115可以确定可疑活动的指标是事故还是误报。在确定是误报的情况下,可以采取步骤来更改计算机攻击的签名,以便将来减少这种误报。
如上所述,可以将标记添加到对象和安全通知两者中,标记是计算机101(从其收集安全通知中包含的信息的计算机101)上发生的事件或计算机101上执行的动作的特征。因此,当且仅当已经在计算机101上发生了某个事件或执行了某个动作时,才可以将标记添加到安全通知中(例如,在可疑指标的定义下)。
用于安全通知的标记可以包括可疑活动的指标,例如用户首次在计算机上执行验证。以下是发生此类可疑事件的脚本示例。在一个月中,保护模块102收集了已在计算机101上成功验证的用户帐户记录的列表。接下来,使用在所生成的帐户记录的列表中没有的帐户记录在计算机101上对一用户进行验证。
下面是用于远程启动对象的可疑事件的发生的脚本的示例。可以使用Windows管理规范(Windows Management Instrumentation,WMI)基础设施或通过OS Windows服务远程启动对象。用于安全通知的可能包括可疑活动的指标的其它标记可以包括但不限于:
·记录已从事件日志中删除;
·文件是通过网络从并非作为浏览器的应用程序下载的;
·白名单中不存在的文件已从可疑目录启动;
·已删除映射拷贝(shadow copy)(例如,通过实用程序vssadmin.exe删除,这是许多恶意加密应用程序阻碍系统还原的特征);
·已检测到重命名的远程管理实用程序(AmmyyAdmin、TeamViewer等);
·文件已复制到管理员的网络文件夹(C$、ADMIN$);
·已使用bcdedit.exe实用程序关闭OS组件的系统启动修复;
·系统进程lsass.exe已启动文件或修改了磁盘上的文件;
·已运行混淆的PowerShell脚本;
·已调用Windows API函数;
·已执行可疑的PowerShell命令—Windows API函数调用;
·库Rundll32已启动来自可疑路径的文件。
在一方面,用于对象的一些标记和用于安全通知的标记(以及因此可疑活动的指标)可以一致。例如,对象名称与其校验和之间缺乏对应关系既可以是可疑活动的指标,也可以作为标记添加到对象中。
计算机攻击的签名(在特定示例中,定向攻击)可以包括以下记录的集合:对象的列表、安全通知以及所述对象和安全通知的标记,这些标记是特定计算机攻击、特别是定向攻击的特征。因此,在从定向攻击的签名中找到记录的某种组合时,就有可能确认攻击(或其指标)的发现。在一个特定方面,计算机攻击的签名可以同时包含关于对象的至少一个记录、关于安全通知的至少一个记录、对象的至少一个标记和安全通知的至少一个标记。在另一方面,计算机攻击的签名可能仅包含上述记录中的一个或多个—例如,关于一个对象的记录、或关于该对象和该对象的标记的记录。在又一特定方面,计算机攻击的签名包含安全通知的至少一个标记。
为了发现可疑活动的各种指标(违反进程或计算机的网络活动的配置文件、违反网络输入的配置文件等),可以使用无监督机器学习系统。无监督机器学习系统根据进入的安全通知和所附的标记进行自我训练。在训练之后,机器学习系统能够为在可疑活动数据库113中没有标记的安全通知分配标记。此外,可以使用监督机器学习系统来解决进程或计算机的行为的分类问题。在监督机器学习系统的情况下,这些因素是可疑活动的指标,并且使用检测到的已知计算机攻击的数据进行训练。
对象数据库112可以配置为存储包含关于对象的信息的安全通知,并且还存储添加到对象的标记和添加到安全通知的标记。
威胁数据库111可以配置为包含关于已知威胁的数据。特别地,威胁数据库111可以包含标识符和关于对象的信息,这些标识符和信息是威胁的指标。威胁数据库111中的每个对象可以用相应的标记来标记。例如,恶意对象可以对应于标记“恶意对象”。如果在特定的定向攻击中使用了某个对象,则会为其分配一个相应的标记。
以已知的定向攻击“Turla”为例。存在与此攻击有关的已知URL地址。如果可执行文件已经访问了所述URL地址之一,则该可执行文件将具有添加到其的标记,该标记指示与定向攻击的关系,例如,标记“访问与APT Turla有关的URL地址”。
在另一示例中,定向攻击“Naikon APT”与一组已知的IP地址有关,并且如果一对象已经访问了所述地址,则将标记“访问与Naikon APT有关的IP地址”添加到对象。
可疑活动数据库113可以包含可疑活动指标的列表。可疑活动的每个指标都可以用特殊标记进行标记,特殊标记指示与可疑活动的该指标相关的定向攻击(上面已经给出了可疑活动指标的示例)。
在一特定方面,如果用一组特定的标记来标记对象,则可以将指示该特征的附加标记添加到该对象。因此,一组标记也可以用一个标记来标记。
计算机攻击数据库114可以配置为包含计算机攻击或定向攻击的签名的列表。
图1b示出了用于处理信息安全事件的系统的框图。
数据生成模块130可以配置为通过在每个样本中包括已知信息安全事件(以下称为事件)和与每个事件相对应的判决来生成训练样本和测试样本。信息安全事件可以是与系统100的信息安全的可能违反有关的各种事件。事件可以包含从保护模块102接收的至少一个安全通知。在一特定方面,可以从以下项之一接收安全通知:计算机保护模块102、定向攻击保护模块103、入侵检测系统和SIEM系统。上面在图1a中已经描述了安全通知的其它特定示例性方面,并且这些方面适用于图1b中呈现的系统。
每个事件的判决可以指示“信息安全事故”(以下称为“事故”)或“误报”。即,分析中心115可以使用关于事件的标记数据以及与那些事件相关联的判决来生成训练样本。数据生成模块130可以将训练样本保持在安全事件数据库131中。训练模块140可以连接至数据生成模块130和安全事件数据库131。训练模块140可以配置为使用来自安全事件数据库131的训练样本的数据来训练机器学习模型以确定事件的误报概率。
分析模块150可以连接到训练模块140和安全事件数据库131。分析模块150可以接收其判决未知的事件,并且可以配置为通过使用经训练的机器学习模型来确定误报概率,以确定所接收事件的判决。可以在给定的时间间隔或给定的数据包中获得事件。分析模块150可以配置为在相应事件的误报概率大于给定的第一阈值的情况下,分配“误报”判决,否则分析模块150可以分配“事故”判决。应当注意,一方面,由分析模块150确定的判决可以是暂定的。可以在分析中心115处分配最终判决(确认或拒绝由分析模块150分配的判决)。模型的阈值是具有范围从0到1的值的数字。
在一特定方面,训练模块140可以如下分配第一阈值的值:第一阈值等于使用测试样本的机器学习模型的质量度量的值达到最大值的数字,其中第一阈值是指示当误报概率大于该阈值时的“误报”判决的数字,否则指示“事故”判决。模型的质量度量可以包括但不限于以下项之一:分类的完整性(召回)和接收器工作特征(ROC)—曲线下面积(AUC)指标。然后,分析模块150可以将针对一定数量的事件(在下文中:第一组事件)的“误报”判决更改为“事故”判决。在一特定方面,可以在其判决指示“误报”的事件中随机选择第一组事件,以使第一组事件的数量不大于第二阈值,第二阈值是机器学习模型的参数。此后,分析模块150可以将其判决指示“事故”的事件继续发送到分析中心115进行分析。
在一方面,训练模块140可以分配第二阈值,该第二阈值取决于对第一组事件进行分析的结果。该分析结果可以包含为正在分析的事件分配的判决。
在另一方面,第二阈值的值还可以如下地确定:获得第一组事件的分析结果,然后确定第二组事件。第二组事件可以包括第一组事件中的根据分析结果被确认为“事故”判决的那些事件。因此,如果第二组事件的数量与第一组事件的数量之比大于给定的第三阈值,则可以更改第二阈值。例如,第一组事件的数量为100,而根据分析结果第二组事件的数量证明为15。如果第三阈值等于0.1,则比率15/100大于第三阈值,因此第二阈值将被更改(例如,增加10%)。
在另一方面,可以根据第二组事件的误报概率来更改第二阈值。例如,如果第二组事件具有非常高的误报概率,则可以降低第二阈值以便在第二组中包括具有低的误报概率值的附加事件。
在另一方面,如果第二阈值大于给定的第四阈值,则被确定为误报但不落入第一组事件内的事件的判决可以被更改为“事故”。该方面使得可以在再训练机器学习模型的情况下,减少第二种错误(即,为大量事件分配了“误报”判决,而实际上,对于这些事件的判决应该是“事故”)。因此,有利地,其判决指示误报的其余事件将不继续被发送以进行分析。此外,对于这些事件,判决将不会被更改为“事故”。
在一特定方面,可以指定时间间隔(接收事件的时间)等于自发送用于分析的先前事件的时刻起经过的时间(例如,一天)。在另一方面,可以指定任意时间间隔。在另一方面,可以指定时间间隔以便减少分析中心115的工作量,而不降低模型的质量。即,时间间隔可以增加使模型的质量将保持不变的一值。因此,在另一方面,如果第二阈值大于预定义的第四阈值,则在给定时间间隔期间被确定为误报并且不落入第一组事件内的事件的判决可以被更改为“事故”。在另一方面,可以实时获得事件。
在一特定方面,数据生成模块130可以在训练样本和测试样本中另外包括新事件以及根据分析中心115的分析结果针对这些新事件确定的判决。即,分析结果将被添加到训练样本和测试样本中,以训练在将来用于新事件的分析的机器学习模型。
在一特定方面,可以根据这些事件的误报概率来确定被确定为误报的事件的给定数量。
在一特定方面,训练模块140可以使用以下机器学习模型之一:逻辑回归、神经网络、决策树和随机森林。
在一特定方面,可以使用机器学习模型的以下特征,这些特征包括但不限于:
a)事件安全通知的来源;
b)事件安全通知的来源的特征;
c)事件安全通知的特征。
在另一方面,机器学习模型的特征可以是事件的参数,这些参数根据那些事件的来源被统一。机器学习模型的特征是发送到模型的任何输入值。
如上所述,事件的安全通知的来源可以包括但不限于检测模块110、保护模块102、定向攻击保护模块103以及任何其它安全系统,例如SIEM系统、IDS/IPS系统等。在一给定的示例中,事件的安全通知的来源的特征可以是保护模块102的特征,例如保护模块的版本、防病毒数据库的版本等等。可以为不同的事件分配不同的唯一标识符。事件的对象的特征可以取决于事件和事件中包含的对象。例如,事件是可疑活动的以下特征:对于在自动播放中登记的文件,哈希与名称不匹配(例如,文件哈希与TeamViewer应用程序的哈希相对应,而文件名不同)。在此示例中,事件对象是文件。因此,事件对象的特征是文件的特征,例如文件哈希和其它文件元数据。
现在讨论所公开系统的功能的一个非限制性示例。管理员106可以建立过滤比例。过滤比例是根据误报概率而将被确定为误报的事件的比例。过滤比例的值的选择可以根据在给定的时间间隔内在信息系统100中发生的平均事件数量或分析中心115的工作量。过滤比例越小,误报的数量越少,但是分析中心115的工作量越大。
例如,可以将过滤比例设置为30%。因此,将具有较低误报概率值的70%的事件确定为“事故”。分析模块150使用机器学习模型基于训练样本来计算误报概率。可以使用找到的针对在给定时间间隔内获得的事件的误报概率的值来选择第一阈值。第一阈值可以被选择为等于过滤比例与第二阈值的比率。
如果第二阈值等于15%,则第一阈值通过公式30%/(100%-15%)计算并等于35.3%。因此,在该示例中,35.3%的具有最大误报概率值的事件将被确定为误报。其余64.7%的事件将被给予“事故”判决,并将被发送以进行分析。在确定为误报的事件中,对于15%的事件,判决将被更改为“事故”,并且这些事件也将被发送以进行分析。例如,可以根据均匀分布定律随机选择15%的事件。
因此,70%的事件将被发送以进行分析,并且30%的事件将被确定为误报。
图2示出了示例性计算机保护系统。计算机保护模块102可以包含被设计用于确保计算机101的安全的模块:访问扫描器202、按需扫描器204、电子邮件防病毒程序206、网络防病毒程序208、主动保护模块210、HIPS(主机入侵防护系统)模块212、DLP(数据丢失防护)模块214、漏洞扫描器216、仿真器218、网络防火墙220和其它模块222。在一特定方面,这些模块可以是保护模块102的一部分。在另一方面,这些模块可以被实现为分离的软件组件。
访问扫描器202可以配置为检测正在用户的计算机系统上打开、运行或保存的所有文件的恶意活动。按需扫描器204与访问扫描器202的不同之处在于,它按用户的要求扫描由用户指定的文件和目录。
电子邮件防病毒程序206可以配置为检查进入和发出的电子邮件中是否存在恶意对象。网络防病毒程序208可以配置为防止执行在用户访问网站时可能包含在网站上的恶意代码,并且还阻止网站的打开。HIPS模块212可以配置为检测程序的不期望的和恶意的活动并且在执行时阻止该活动。DLP模块214可以配置为检测并防止机密数据从计算机或网络泄漏。漏洞扫描器216可以配置为检测计算机101上的漏洞(例如,确定保护模块102的某些组件已经被关闭、过时的病毒数据库、网络端口被关闭等)。网络防火墙220可以配置为根据指定的规则来控制和过滤网络流量。仿真器218的功能可以包括在仿真器218中执行代码期间模拟访客系统。主动保护模块210可以使用行为签名来检测可执行文件的行为,并根据它们的信任级别对其进行分类。
所指示的模块在检测到恶意软件(可疑行为、垃圾邮件和其它计算机威胁指标)后,可以创建相应的安全通知(安全通知此后可以转换为保护模块102的判决)。生成的安全通知将发现的威胁以及执行消除威胁的动作(例如,删除或更改文件、禁止执行等)的需求通知给保护模块。在一特定方面,发现恶意软件的模块本身可以执行用于消除威胁的动作。在另一示例中,保护模块102的判决可以是模糊的或暂定的(因为该判决可能给出误报)。在这种情况下,保护模块将不执行用于消除威胁的动作,而是将通知传递给检测模块110。应当注意,保护模块102的判决可以是关于对象(文件、进程)的信息的一部分,然后将其以安全通知的形式发送到检测模块110。
图3示出了示例性的定向攻击保护系统。定向攻击保护模块103可以包含例如以下保护模块:“沙盒”模块302、入侵检测系统(IDS)304、信誉服务器306、YARA规则检查模块308、DLP模块310、TI(威胁情报)分析器312、评分模块314和其它检测模块318。
“沙盒”模块302可以具有与计算机保护模块102的仿真器218的功能类似的功能,除了沙盒模块302可以使用附加计算功能并且可以工作更长的时间之外,因为定向攻击保护模块103没有时间限制,例如计算机保护模块102中固有的时间限制。
沙盒环境302可以是用于安全执行进程的计算机环境,并且它可以配置为在执行从文件启动的进程期间确定可疑活动。
沙盒环境302例如可以基于文件系统和注册表的部分虚拟化、基于对文件系统和注册表的访问规则、或基于混合方法,以虚拟机的形式来实现。
入侵检测系统304可以配置为识别对计算机101或网络105的未经授权的访问或对其未经授权的控制的实例。
信誉服务器306可以是信誉服务器104的镜像副本或缓存副本,并且还可以包含关于对象在计算机101上的受欢迎程度的信息(存在对象的计算机101的数量、对象被启动的次数等)。
YARA规则检查模块308可以配置为检查YARA签名—签名的开放格式。
DLP模块310可以配置为检测并防止机密数据泄漏到计算机或网络外部。
TI(威胁情报)分析器312可以是配置为将来自关于计算机攻击的报告的对象和关于该对象的信息与可疑行为指标进行匹配的模块。例如,TI分析器312可以确定参与已知计算机攻击的命令中心的IP地址的列表。TI分析器312可以将获得的信息发送到评分模块314,评分模块314可以配置为根据对象和可疑行为的特征属于计算机攻击的概率来对关于对象和可疑行为的特征的信息进行排名。
图4示出了在发送信息安全事件以进行分析之前处理信息安全事件的方法。该方法可以由存在于服务器上的分析模块150来实现。
在步骤401处,分析模块150可以获得与在计算机系统中发生的多个信息安全事件有关的信息。该多个信息安全事件中的每一者包括与计算机系统的信息安全的可能违反有关的事件。
在步骤402,分析模块150可以使用经训练的机器学习模型来确定误报概率,以确定针对每个事件的判决。判决指示相应的信息安全事件是对计算机系统的信息安全有害还是无害。在一方面,判决包括以下项之一:“信息安全事故”或“误报。如果针对相应事件的误报概率大于给定的第一阈值,则分析模块150可以将判决确定为“误报”。否则,分析模块150可以将判决确定为“信息安全事故”(以下称为“事故”判决)。
在步骤403,分析模块150可以将针对第一组事件的“误报”判决更改为“事故”判决。在一特定方面,可以在其判决指示为“误报”的事件中随机选择第一组事件,以使第一组事件的数量不大于第二阈值,第二阈值是机器学习模型的参数。
最后,在步骤404,分析模块150可以将具有“事故”判决的事件发送到分析中心115进行分析。因此,分析模块150对事件的处理包括对事件的分类且还包括针对一定数量的事件更改判决。
在一特定方面,可以分配第一阈值以提高机器学习模型的质量度量。在另一方面,可以在其判决指示“误报”的事件中随机选择第一组事件,以使第一组事件的数量不大于第二阈值。
在另一方面,可以基于先前对第一组事件进行分析的结果来分配第二阈值。在另一方面,另外:
a)可以从对第一组事件的分析中获得结果;
b)可以确定第二组事件,其包括第一组事件中的基于分析结果被确认为“事故”判决的那些事件;
c)如果第二组事件的数量与第一组事件的数量之比大于给定的第三阈值,则可以更改第二阈值。
在一方面,第二阈值可以根据第二组事件的误报概率而更改。在另一方面,如果第二阈值大于给定的第四阈值,则对于被确定为误报并且不落在第一组事件内的事件,可以将判决更改为“事故”。
在另一方面,分析模块150可以将具有最低误报概率的事件继续发送到分析中心115以进行分析。此类事件的数量应当不大于给定的第五阈值。第五阈值可以由分析中心115分配。该第五阈值可以例如取决于分析中心115的工作量。因此,如果分析中心115正在承受高的工作量并且不能分析由分析模块150发送的所有事件,则仅将具有最低误报概率的事件发送给分析中心115。即,在这种情况下,分析模块150可以仅发送最高优先级的事件,其是具有最高概率的“事故”。在另一方面,可以根据执行分析所用的时间来更改第五阈值(例如,与时间成反比)。因此,如果增加了分析事件的时间,则降低第五阈值以便减少被继续发送以进行分析的事件的数量。但是,如果分析时间减少,则第五个阈值增大。因此,事故响应时间缩短。
因此,通过本发明的各方面将实现期望的技术结果,即,通过使用用于确定误报概率的经训练的机器学习模型来减少被发送以进行分析的事件的数量,以及减少误报的数量。此外,将解决所述的技术问题。
先前针对根据图1a和图1b的系统公开的特定示例性方面也适用于图4所描述的方法。
图5示出了校正用于确定误报和/或信息安全事故的机器学习模型的参数的方法。图5中所示的方法可以在服务器上由分析模块150实现。
在步骤501处,分析模块150可以将具有“误报”判决的一定数量的(第一组)事件的判决更改为“事故”判决。使用用于确定误报和/或事故的机器学习模型来确定事件的判决。接下来,在步骤502处,第一组事件被分析模块150继续发送到分析中心115以进行分析。最后,在步骤503处,分析模块150可以使用从分析中心115获得的分析结果来校正用于确定误报和/或事故的机器学习参数。应当注意,步骤501-步骤503可以由分析模块150并行执行。例如,在步骤501,随着接收到新事件,可以更改针对事件的判决。并行地,在步骤502,其判决被更改的那些事件将被分析模块150发送以进行分析。此外,当接收到事件的分析结果时,分析模块150可以执行步骤503。
在一特定方面,机器学习模型可通过针对每个事件确定误报概率并将误报概率与给定的第一阈值进行比较来确定“误报”判决和/或“事故”判决。第一阈值可以是机器学习模型的参数,其中如果事件的误报概率大于第一阈值,则事件接收到“误报”判决,否则,它接收到“事故”判决。
在另一方面,可以从其判决指示为“误报”的事件中随机选择第一组事件,使得第一组事件的数量不大于第二阈值。第二阈值也可以是机器学习模型的参数。
在另一方面,可以通过在每个样本中包括已知事件和与该事件相对应的判决来生成训练样本和测试样本,每个事件的判决指示“事故”或“误报”。训练模块140可以使用训练样本来训练机器学习模型。在另一方面,可以将第一阈值的值分配为等于使用测试样本的机器学习模型的质量度量的值达到最大值的数量。训练模块140可以使用本领域已知的优化问题解决方法(例如梯度下降法和其它法)来搜索第一阈值的这种值。第一阈值可以是在误报概率大于第一阈值的情况下指示“误报”判决的数字,否则指示“事故”判决。质量度量可以包括但不限于分类的完整性和/或ROC-AUC指标。
在另一方面,可以由训练模块140使用以下步骤来确定第二阈值的值:
a)可以确定第二组事件,该第二组事件可以包括第一组事件中的根据分析结果被确认为“事故”判决的那些事件;
b)如果第二组事件的数量与第一组事件的数量之比大于给定的第三阈值,则可以更改第二阈值。
在一个方面,可以选择第一阈值等于过滤比例与第二阈值之间的比率,其中过滤比例由管理员106或分析中心115指定。如上所述,过滤比例可以是根据误报概率将被确定为误报的事件的比例。在另一方面,每个事件可以包含从安装在用户的计算机设备上的保护模块102接收的至少一个安全通知。先前在图1a和图1b中以及在图4中描述的特定方面也适用于图5所描述的方法。
图6为示出在其上可以实现用于处理信息安全事件以检测网络攻击的系统和方法的各方面的计算机系统20的框图。计算机系统20可以表示图3和/或图4的攻击防护系统并且可以为多个计算设备的形式、或单一计算设备的形式,例如:台式电脑、笔记本电脑、手提电脑、移动计算设备、智能手机、平板电脑、服务器、大型机、嵌入式设备和其它形式的计算设备。
如图所示,计算机系统20包括中央处理单元(Central Processing Unit,CPU)21、系统存储器22和连接各种系统部件的系统总线23,各种系统部件包括与中央处理单元21相关联的存储器。系统总线23可以包括总线存储器或总线存储器控制器、外围总线、以及能够与任何其它的总线架构交互的本地总线。总线的示例可以包括PCI、ISA、串行总线(PCI-Express)、超传输TM(HyperTransportTM)、无限带宽TM(InfiniBandTM)、串行ATA、I2C、和其它合适的互连。中央处理单元21(也称为处理器)可以包括单组或多组具有单核或多核的处理器。处理器21可以执行实现本发明的技术的一种或多种计算机可执行代码。系统存储器22可以为用于存储本文中所使用的数据和/或由处理器21可执行的计算机程序的任何存储器。系统存储器22可以包括易失性存储器(诸如随机存取存储器(Random Access Memory,RAM)25)和非易失性存储器(诸如只读存储器(Read-Only Memory,ROM)24、闪存等)或其任意组合。基本输入/输出系统(Basic Input/Output System,BIOS)26可以存储用于在计算机系统20的元件之间传输信息的基本程序,例如在使用ROM 24加载操作系统时的那些基本程序。
计算机系统20可以包括一个或多个存储设备,诸如一个或多个可移除存储设备27、一个或多个不可移除存储设备28、或其组合。一个或多个可移除存储设备27和一个或多个不可移除存储设备28借助存储器接口32连接到系统总线23。在一个方面中,存储设备和相应的计算机可读存储介质为用于存储计算机系统20的计算机指令、数据结构、程序模块、和其它数据的电源独立的模块。系统存储器22、可移除存储设备27和不可移除存储设备28可以使用各种各样的计算机可读存储介质。计算机可读存储介质的示例包括:机器存储器,诸如缓存、SRAM、DRAM、零电容RAM、双晶体管RAM、eDRAM、EDO RAM、DDR RAM、EEPROM、NRAM、RRAM、SONOS、PRAM;闪存或其它存储技术,诸如在固态驱动器(Solid State Drive,SSD)或闪盘驱动器中;磁带盒、磁带、和磁盘存储器,诸如在硬盘驱动器或软盘驱动器中;光学存储器,诸如在光盘(CD-ROM)或数字通用光盘(Digital Versatile Disk,DVD)中;以及可用于存储期望数据且可被计算机系统20访问的任何其它介质。
计算机系统20的系统存储器22、可移除存储设备27和不可移除存储设备28可以用于存储操作系统35、附加应用程序37、其它程序模块38和程序数据39。计算机系统20可以包括用于传送来自输入设备40的数据的外围接口46,该输入设备40诸如键盘、鼠标、触针、游戏控制器、语音输入设备、触点输入设备、或其它外围设备,诸如借助一个或多个I/O端口的打印机或扫描仪,该一个或多个I/O端口诸如串行端口、并行端口、通用串行总线(Universal Serial Bus,USB)、或其它外围接口。显示设备47(诸如一个或多个监控器、投影仪或集成显示器)也可以通过输出接口48(诸如视频适配器)连接到系统总线23。除了显示设备47之外,计算机系统20还可以装配有其它外围输出设备(未示出),诸如扬声器和其它视听设备。
计算机系统20可以使用与一个或多个远程计算机49的网络连接而工作在网络环境中。所述一个或多个远程计算机49可以为本地计算机工作站或服务器,其包括前面在描述计算机系统20的性质时所述的元件中的大多数元件或全部元件。其它设备也可以存在于计算机网络中,诸如但不限于路由器、网站、对等设备或其它的网络节点。计算机系统20可以包括用于借助一个或多个网络而与远程计算机49通信的一个或多个网络接口51或网络适配器,该一个或多个网络诸如局域计算机网络(Local-Area computer Network,LAN)50、广域计算机网络(Wide-Area computer Network,WAN)、内联网、和因特网。网络接口51的示例可以包括以太网接口、帧中继接口、SONET接口、和无线接口。
本发明的方面可以为系统、方法和/或计算机程序产品。计算机程序产品可以包括一个或多个计算机可读存储介质,其上具有用于使处理器执行本发明的各方面的计算机可读程序指令。
计算机可读存储介质可以为有形设备,该有形设备可以保持且存储指令或数据结构的形式的程序代码,该程序代码可以被计算设备(诸如计算机系统20)的处理器访问。计算机可读存储介质可以为电子存储设备、磁性存储设备、光学存储设备、电磁存储设备、半导体存储设备、或其任何合适组合。通过示例方式,这类计算机可读存储介质可以包括随机存取存储器(RAM)、只读存储器(ROM)、EEPROM、便携式光盘只读存储器(CD-ROM)、数字通用光盘(DVD)、闪存、硬盘、便携式电脑磁盘、记忆棒、软盘、或甚至机械编码设备,诸如在其上记录有指令的凹槽中的打孔卡或凸起结构。如在本文中所使用,计算机可读存储介质不应被视为短暂信号本身,诸如无线电波或其它自由传播的电磁波、通过波导或传输介质传播的电磁波、或通过电线传输的电信号。
可以将本文中所描述的计算机可读程序指令从计算机可读存储介质下载到各个计算设备、或借助网络(例如,因特网、局域网、广域网和/或无线网络)下载到外部计算机或外部存储设备。该网络可以包括铜传输电缆、光学传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。在每个计算设备中的网络接口从网络接收计算机可读程序指令并转发该计算机可读程序指令,用以存储在各个计算设备内的计算机可读存储介质中。
用于执行本发明的操作的计算机可读程序指令可以为汇编指令、指令集架构(Instruction-Set-Architecture,ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种编程语言(包括面向对象的编程语言和传统程序化编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以(作为独立的软件包)完全地在用户的计算机上、部分地在用户的计算机上、部分地在用户的计算机上且部分地在远程计算机上、或完全地在远程计算机或服务器上执行。在后一种场景中,远程计算机可以通过任何类型的网络(包括LAN或WAN)连接到用户的计算机,或可以进行与外部计算机的连接(例如通过因特网)。在一些实施方式中,电子电路(包括例如可编程逻辑电路、现场可编程门阵列(FPGA)、或可编程门阵列(Programmable Logic Array,PLA))可以通过利用计算机可读程序指令的状态信息而执行计算机可读程序指令,以使该电子电路个性化,从而执行本发明的各方面。
在各个方面中,本发明中所描述的系统和方法可以按照模块来处理。如本文中所使用的术语“模块”指的是例如现实世界的设备、部件、或使用硬件(例如通过专用集成电路(Application Specific Integrated Circuit,ASIC)或FPGA)实现的部件的布置,或者指的是硬件和软件的组合,例如通过微处理器系统和实现模块功能的指令集(该指令集在被执行时将微处理器系统转换成专用设备)来实现这样的组合。一个模块还可以被实施为两个模块的组合,其中单独地通过硬件促进某些功能,并且通过硬件和软件的组合促进其它功能。在某些实现方式中,模块的至少一部分(以及在一些情况下,模块的全部)可以在计算机系统的处理器上运行。因此,每个模块可以以各种适合的配置来实现,而不应受限于本文中所例示的任何特定的实现方式。
为了清楚起见,本文中没有公开各个方面的所有例行特征。应当领会的是,在本发明的任何实际的实现方式的开发中,必须做出许多特定实现方式的决定,以便实现开发者的特定目标,并且这些特定目标将对于不同的实现方式和不同的开发者变化。应当理解的是,这种开发努力会是复杂的且费时的,但对于了解本发明的优点的本领域的普通技术人员来说仍然是工程的例行任务。
此外,应当理解的是,本文中所使用的措辞或术语出于描述而非限制的目的,从而本说明书的术语或措辞应当由本领域技术人员根据本文中所提出的教导和指导结合(一个或多个)相关领域技术人员的知识来解释。此外,不旨在将本说明书或权利要求中的任何术语归于不常见的或特定的含义,除非明确如此阐述。
本文中所公开的各个方面包括本文中以说明性方式所引用的已知模块的现在和未来已知的等同物。此外,尽管已经示出并描述了各个方面和应用,但是对于了解本发明的优点的本领域技术人员将显而易见的是,在不脱离本文中所公开的发明构思的前提下,相比于上文所提及的内容而言的更多修改是可行的。
Claims (20)
1.一种用于处理信息安全事件以检测计算机系统上的网络攻击的方法,所述方法包括:
接收与在所述计算机系统中发生的多个信息安全事件有关的信息,其中,所述多个信息安全事件中的每一者包括与所述计算机系统的信息安全的可能违反有关的事件;
确定针对接收到的所述多个信息安全事件中的每一者的判决,其中,所述判决包括:i)信息安全事故或ii)误报,并且,如果相应信息安全事件的误报概率大于第一阈值,则所述判决为误报;
将针对所述多个信息安全事件的子集的判决从所述误报更改为所述信息安全事故,其中,所述多个信息安全事件的所述子集的所有事件被包含在所述多个信息安全事件的所有事件的集合中,并且其中,所述多个信息安全事件的所述子集中的事件的数量低于第二阈值;以及
对判决为信息安全事故的信息安全事件进行分析,以确定所述计算机系统是否受到网络攻击。
2.根据权利要求1所述的方法,其中,接收与所述多个信息安全事件有关的信息还包括接收与所述计算机系统的对象有关的一个或多个事件安全通知,并且,所述一个或多个事件安全通知包括表征在所述计算机系统中发生的事件的标记和指示收集关于所述事件的相应信息所用的时间间隔的时间戳,并且所述第一阈值与经训练的机器学习模型的质量度量有关。
3.根据权利要求2所述的方法,其中,使用所述经训练的机器学习模型基于以下项中的至少一者来确定所述判决:所述一个或多个事件安全通知的特征、所述一个或多个事件安全通知的一个或多个来源、所述一个或多个事件安全通知的所述一个或多个来源的特征。
4.根据权利要求1所述的方法,其中,对所述信息安全事件进行分析还包括:对具有最低误报概率的信息安全事件进行分析。
5.根据权利要求1所述的方法,其中,所述判决包括以下项之一:模糊判决、暂定判决、最终判决。
6.根据权利要求2所述的方法,其中,表征在所述计算机系统中发生的事件的所述标记包括以下项中的至少一者:所述对象的至少一部分的校验和、嵌入在所述计算机系统上的所述对象的资源的来源、所述对象的执行的仿真结果、从所述对象调用系统函数的日志、所述对象在所述计算机系统上的出现时间、所述对象通过计算机网络正在传输的数据。
7.根据权利要求1所述的方法,其中,确定所述判决还包括:计算针对相应对象的哈希,以及确定所计算的哈希是否对应于已知恶意对象。
8.根据权利要求3所述的方法,还包括基于对第一组信息安全事件进行分析的结果来确定所述第二阈值。
9.根据权利要求8所述的方法,还包括基于对所述第一组信息安全事件进行分析的结果来修改所述经训练的机器学习模型的训练样本。
10.一种用于处理信息安全事件以检测计算机系统上的网络攻击的系统,所述系统包括:
硬件处理器,所述硬件处理器配置为:
接收与在所述计算机系统中发生的多个信息安全事件有关的信息,其中,所述多个信息安全事件中的每一者包括与所述计算机系统的信息安全的可能违反有关的事件;
确定针对接收到的所述多个信息安全事件中的每一者的判决,其中,所述判决包括:i)信息安全事故或ii)误报,并且,如果相应信息安全事件的误报概率大于第一阈值,则所述判决为误报;
将针对所述多个信息安全事件的子集的判决从所述误报更改为所述信息安全事故,其中,所述多个信息安全事件的所述子集的所有事件被包含在所述多个信息安全事件的所有事件的集合中,并且其中,所述多个信息安全事件的所述子集中的事件的数量低于第二阈值;以及
对判决为信息安全事故的信息安全事件进行分析,以确定所述计算机系统是否受到网络攻击。
11.根据权利要求10所述的系统,其中,配置为接收与所述多个信息安全事件有关的信息的所述硬件处理器还配置为接收与所述计算机系统的对象有关的一个或多个事件安全通知,并且,所述一个或多个事件安全通知包括表征在所述计算机系统中发生的事件的标记和指示收集关于所述事件的相应信息所用的时间间隔的时间戳,并且所述第一阈值与经训练的机器学习模型的质量度量有关。
12.根据权利要求11所述的系统,其中,使用所述经训练的机器学习模型基于以下项中的至少一者来确定所述判决:所述一个或多个事件安全通知的特征、所述一个或多个事件安全通知的一个或多个来源、所述一个或多个事件安全通知的所述一个或多个来源的特征。
13.根据权利要求10所述的系统,其中,配置为对所述信息安全事件进行分析的所述硬件处理器还配置为:对具有最低误报概率的信息安全事件进行分析。
14.根据权利要求10所述的系统,其中,所述判决包括以下项之一:模糊判决、暂定判决、最终判决。
15.根据权利要求11所述的系统,其中,表征在所述计算机系统中发生的事件的所述标记包括以下项中的至少一者:所述对象的至少一部分的校验和、嵌入在所述计算机系统上的所述对象的资源的来源、所述对象的执行的仿真结果、从所述对象调用系统函数的日志、所述对象在所述计算机系统上的出现时间、所述对象通过计算机网络正在传输的数据。
16.根据权利要求10所述的系统,其中,配置为确定所述判决的所述硬件处理器还配置为:计算针对相应对象的模糊哈希,以及确定所计算的哈希是否对应于已知恶意对象。
17.根据权利要求12所述的系统,其中,所述硬件处理器还配置为:基于对第一组信息安全事件进行分析的结果来确定所述第二阈值。
18.根据权利要求17所述的系统,其中,所述硬件处理器还配置为:基于对所述第一组信息安全事件进行分析的结果来修改所述经训练的机器学习模型的训练样本。
19.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质上存储有用于处理信息安全事件以检测计算机系统上的网络攻击的计算机可执行指令,所述计算机可执行指令包括用于以下操作的指令:
接收与在所述计算机系统中发生的多个信息安全事件有关的信息,其中,所述多个信息安全事件中的每一者包括与所述计算机系统的信息安全的可能违反有关的事件;
确定针对接收到的所述多个信息安全事件中的每一者的判决,其中,所述判决包括:i)信息安全事故或ii)误报,并且,如果相应信息安全事件的误报概率大于第一阈值,则所述判决为误报;
将针对所述多个信息安全事件的子集的判决从所述误报更改为所述信息安全事故,其中,所述多个信息安全事件的所述子集的所有事件被包含在所述多个信息安全事件的所有事件的集合中,并且其中,所述多个信息安全事件的所述子集中的事件的数量低于第二阈值;以及
对判决为信息安全事故的信息安全事件进行分析,以确定所述计算机系统是否受到网络攻击。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,用于接收与所述多个信息安全事件有关的信息的所述指令还包括用于以下操作的指令:接收与所述计算机系统的对象有关的一个或多个事件安全通知,并且,所述一个或多个事件安全通知包括表征在所述计算机系统中发生的事件的标记和指示收集关于所述事件的相应信息所用的时间间隔的时间戳,并且所述第一阈值与经训练的机器学习模型的质量度量有关。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2020120436A RU2762528C1 (ru) | 2020-06-19 | 2020-06-19 | Способ обработки событий информационной безопасности перед передачей на анализ |
RU2020120436 | 2020-06-19 | ||
US17/097,342 US11611572B2 (en) | 2020-06-19 | 2020-11-13 | System and method of processing information security events to detect cyberattacks |
US17/097,342 | 2020-11-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113824678A CN113824678A (zh) | 2021-12-21 |
CN113824678B true CN113824678B (zh) | 2023-07-11 |
Family
ID=73857112
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110096823.9A Active CN113824678B (zh) | 2020-06-19 | 2021-01-25 | 处理信息安全事件的系统、方法和非暂时性计算机可读介质 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP3926501B1 (zh) |
CN (1) | CN113824678B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115208618B (zh) * | 2022-05-24 | 2024-05-14 | 华北电力大学 | 基于多层次攻防博弈的新型电力系统apt攻击主动防御方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102761539A (zh) * | 2011-05-23 | 2012-10-31 | 卡巴斯基实验室封闭式股份公司 | 用于在检测网络攻击期间减少误报的系统及方法 |
CN102932323A (zh) * | 2011-08-29 | 2013-02-13 | 卡巴斯基实验室封闭式股份公司 | 对计算机网络中安全相关事故的自动分析 |
CN104486141A (zh) * | 2014-11-26 | 2015-04-01 | 国家电网公司 | 一种误报自适应的网络安全态势预测方法 |
CN105306439A (zh) * | 2015-09-17 | 2016-02-03 | 哈尔滨工程大学 | 一种基于决策树自修复的特征规则检测方法 |
CN108040493A (zh) * | 2015-09-30 | 2018-05-15 | 赛门铁克公司 | 利用低置信度安全事件来检测安全事故 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102047782B1 (ko) * | 2017-01-04 | 2019-11-22 | 한국전자통신연구원 | 보안 이벤트의 연관 분석을 통한 사이버 침해 위협 탐지 방법 및 장치 |
CA3041875A1 (en) * | 2018-05-01 | 2019-11-01 | Royal Bank Of Canada | System and method for reducing false positive security events |
-
2020
- 2020-12-23 EP EP20217021.3A patent/EP3926501B1/en active Active
-
2021
- 2021-01-25 CN CN202110096823.9A patent/CN113824678B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102761539A (zh) * | 2011-05-23 | 2012-10-31 | 卡巴斯基实验室封闭式股份公司 | 用于在检测网络攻击期间减少误报的系统及方法 |
CN102932323A (zh) * | 2011-08-29 | 2013-02-13 | 卡巴斯基实验室封闭式股份公司 | 对计算机网络中安全相关事故的自动分析 |
CN104486141A (zh) * | 2014-11-26 | 2015-04-01 | 国家电网公司 | 一种误报自适应的网络安全态势预测方法 |
CN105306439A (zh) * | 2015-09-17 | 2016-02-03 | 哈尔滨工程大学 | 一种基于决策树自修复的特征规则检测方法 |
CN108040493A (zh) * | 2015-09-30 | 2018-05-15 | 赛门铁克公司 | 利用低置信度安全事件来检测安全事故 |
Also Published As
Publication number | Publication date |
---|---|
CN113824678A (zh) | 2021-12-21 |
EP3926501B1 (en) | 2023-08-02 |
EP3926501A1 (en) | 2021-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11489855B2 (en) | System and method of adding tags for use in detecting computer attacks | |
Bahrami et al. | Cyber kill chain-based taxonomy of advanced persistent threat actors: Analogy of tactics, techniques, and procedures | |
CN109684832B (zh) | 检测恶意文件的系统和方法 | |
US11677764B2 (en) | Automated malware family signature generation | |
RU2680736C1 (ru) | Сервер и способ для определения вредоносных файлов в сетевом трафике | |
US11611572B2 (en) | System and method of processing information security events to detect cyberattacks | |
CN110119619B (zh) | 创建防病毒记录的系统和方法 | |
Wong et al. | On the security of containers: Threat modeling, attack analysis, and mitigation strategies | |
CN108369541B (zh) | 用于安全威胁的威胁风险评分的系统和方法 | |
RU2661533C1 (ru) | Система и способ обнаружения признаков компьютерной атаки | |
Deng et al. | Lexical analysis for the webshell attacks | |
US11275836B2 (en) | System and method of determining a trust level of a file | |
Atapour et al. | Modeling Advanced Persistent Threats to enhance anomaly detection techniques | |
EP3758330B1 (en) | System and method of determining a trust level of a file | |
CN113824678B (zh) | 处理信息安全事件的系统、方法和非暂时性计算机可读介质 | |
Mohata et al. | Mobile malware detection techniques | |
Waheed et al. | Zero-Day Exploits in Cybersecurity: Case Studies and Countermeasure | |
RU2763115C1 (ru) | Способ корректировки параметров модели машинного обучения для определения ложных срабатываний и инцидентов информационной безопасности | |
Deep et al. | Security In Smartphone: A Comparison of Viruses and Security Breaches in Phones and Computers | |
Ganganagari | Defining Best Practices to Prevent Zero-Day and Polymorphic Attacks | |
Panagiotakopoulos | Assessing open and closed EDRs | |
Major | A Taxonomic Evaluation of Rootkit Deployment, Behavior and Detection | |
Blaauboer | The evolution of smartphone malware: analyzing and combating android malware | |
Ward | AN EVAULATION STUDY OF ENDPOINT DETECTION AND RESPONSE SYSTEMS ACROSS MULTI-VECTOR ATTACK SCENARIOS | |
Islam et al. | A Study of Permission-based Malware Detection Using Machine Learning |
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 |