CN115053223A - 非法横向移动的自动检测 - Google Patents
非法横向移动的自动检测 Download PDFInfo
- Publication number
- CN115053223A CN115053223A CN202180011933.9A CN202180011933A CN115053223A CN 115053223 A CN115053223 A CN 115053223A CN 202180011933 A CN202180011933 A CN 202180011933A CN 115053223 A CN115053223 A CN 115053223A
- Authority
- CN
- China
- Prior art keywords
- computer
- chain
- data
- network
- login
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
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/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
- 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
-
- 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
-
- 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/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (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)
- Virology (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computer And Data Communications (AREA)
- Debugging And Monitoring (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
通过检测工具检测联网计算机之间的横向移动并自动有效地对其评估,以区分无害活动和网络攻击。通过将有关登录的日志数据和网络流量相关,检测工具产生与个体移动对应的网络节点集。如果可以从节点集构建与攻击方倾向于使用的事件序列模式匹配的链,那么检测工具会将链报告为非法横向移动候选者。检测模式定义了非法依据,诸如数据传送大小的一致性、登录间隔的短暂、可疑协议的使用、链范围、以及管理员凭证的存在或使用。然后,检测响应可以隔离计算机,针对恶意软件或篡改检查它们,获取用于分析的取证映像,加强防渗漏过滤,并以其他方式缓解正在进行或未来的网络攻击。
Description
背景技术
在网络攻击方获取对计算机网络的访问权之后,攻击方可以采取各种动作。机密数据可能会通过将其复制到网络外的位置而被“渗漏”。攻击方可能会对数据进行加密,以提取换取解密密钥的赎金。攻击方可能会破坏数据,也可能会篡改数据。网络的计算资源(诸如处理能力、网络带宽和数字存储)可能会被劫持,例如以生成或转发未经要求的电子邮件、以挖掘比特币、或者存储攻击方从网络外部带入的非法(illicit)或违法(illegal)内容。
在被破坏的网络中的一些攻击方行为相对容易快速和自动检测,但是许多其他行为则不然。事实上,在一些情况下,网络内存在攻击方数周甚至数月都未被检测到。此外,有些攻击只有在工作过度的安全人员手动查看设备日志时才会被发现。
因此,自动且有效地检测计算机网络中存在攻击方活动的网络安全技术进步将是有帮助的。事实上,对攻击正在进行的明确评估并不是唯一可能的成就。即使是有助于评估攻击已经发生(或正在进行)的可能性的技术进步也可能是有帮助的。
发明内容
本文档中描述的一些实施例提供了用于检测计算机网络中可能存在的攻击方活动的改进技术。特别地,一些实施例检测联网计算机之间的横向移动(lateral movement)。横向移动,也称为“网络横向移动”或“横向扩散(lateral spread)”,可能是无害的经授权活动。但是横向移动也发生在网络攻击期间,因为攻击方从一个计算机移动到另一个计算机,试图捕获管理员凭证或扩散恶意软件。一些实施例有助于将无害横向移动与非法横向移动区分开来。
一些实施例使用或提供非法横向移动的自动检测。处理步骤包括(a)至少将登录数据和网络流量(traffic)数据相关,从而产生网络节点集,每个网络节点集标识从源计算机到目标计算机的登录事件并且还标识到目标计算机的数据传送,(b)从节点集中的至少两个节点集构建链,该链表示与攻击方所使用的模式一致的事件序列,以及(c)将该链报告为非法横向移动候选者。
在这些实施例中,链的事件序列包括:从第一计算机到第二计算机的第二计算机登录,然后是将数据从第一计算机传送到第二计算机的第二计算机数据传送,然后是从第二计算机到第三计算机中的第三计算机登录,并且然后是将数据从第二计算机传送到第三计算机的第三计算机数据传送。这些实施例的特征还在于,从第一计算机被传送到第二计算机的数据的第二计算机数据传送大小、和从第二计算机被传送到第三计算机的数据的第三计算机数据传送大小的差异不多于两个传送大小中最大值的百分之十。这可能发生,例如是因为两个数据传送被执行以将给定的漏洞利用有效负载(exploit payload)发送到目标计算机,诸如被执行以从易失性存储器提取密码的有效负载。
本文教导的一些实施例至少自动地将登录数据和网络流量数据相关,从而产生网络节点集。每个节点集标识:针对到节点集的相应计算机的登录的至少两个登录时间、节点集的至少一个计算机上的至少一个管理员账户、以及节点集的计算机之间的至少一个数据传送。这些实施例从节点集中的至少两个节点集构建链,该链表示事件序列。然后这些实施例将链报告为非法横向移动候选者。
在这些实施例中的一些实施例中,事件序列包括作为第一用户登录到第一计算机,随后是向第一计算机的数据传送,随后是使用管理员凭证从第一计算机登录到第二计算机。
在一些其他实施例中,每个节点集标识:针对到节点集的相应计算机的登录的至少两个登录时间,以及节点集的至少一个计算机上的至少一个管理员账户。数据传送不必被标识或被评估。该事件序列包括作为第一用户登录到第一计算机,随后是使用管理员凭证从第一计算机登录到第二计算机。这些实施例也将它们的链报告为非法横向移动候选者。
与本文教导有关的其他技术活动和特性对于本领域技术人员也将变得明显。给出的示例仅仅是说明性的。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在被用来限制所要求保护的主题的范围。相反,本发明内容被提供来以简化的形式介绍一些将在下面的详细描述中进一步描述的技术概念。创新是通过正确理解的权利要求来限定的,并且在本发明内容与权利要求相冲突的范围内,应以权利要求为准。
附图说明
将参考附图给出更具体的描述。这些附图仅图示了选定的方面,因此并未完全确定覆盖范围或范围。
图1是一般性地图示了计算机系统并且还一般性地图示了所配置的存储介质的框图;
图2是图示了受监测的计算机网络和横向移动检测系统的框图;
图3是图示了一些横向移动检测系统的一些方面的框图;
图4是图示了被配置为检测非法横向移动的增强的系统的框图;
图5是图示了日志源的一些示例的框图;
图6是图示了计算机网络的一些示例的框图;
图7是图示了可能对所计算的横向移动非法得分(illicitness score)有贡献的依据的一些示例的框图;
图8是图示了一些横向移动检测系统的一些附加方面的框图;
图9是图示了一些横向移动检测方法中的步骤的流程图;
图10是图示了网络中的横向移动和表示横向移动的节点集的计算链的图解;和
图11是进一步图示了一些横向移动检测方法中的步骤的流程图。
具体实施方式
概述
创新可能会超越其起源,但是了解创新的起源可以帮助人们更充分地了解创新。在本案例中,本文描述的一些教导是受Microsoft创新者所面临的技术挑战的启发,这些创新者正在努力提高Microsoft网络安全产品的可用性。特别地,一个技术挑战是如何自动高效地检测计算机网络中的攻击方的非法横向移动。
横向移动本身对计算机网络造成的损害很小或者没有损害;它消耗相对较少量的带宽和处理器周期,并且通常(本身)不会破坏或损坏数据。但是,破坏网络的网络敌手有时使用横向移动来到达其他工作站,在那里他们收割机密数据,收集有关用户和账户的信息,并窃取访问凭证以供以后使用。同样,有权访问网络但是超出该权限的人员的内部攻击可能包括横向移动。
图10图示了假设的被破坏的网络中的横向移动。如图所示,这个示例网络具有六个节点102;节点102之间的LAN或其他网络连接被理解为是存在的,但是为了便于清楚图示,在图中未被示出。示出了六成员网络的两个快照;在图10左侧的网络快照和图10右侧的网络快照之间经过了时间。被破坏的节点1002被示为填充,而未被破坏的节点1004被示为椭圆形轮廓。
在较早的快照中(在图10的左侧),只有一个节点被破坏。在一段时间后,如右侧快照所示,四个节点已被破坏。破坏发生为三个横向移动:从节点A到节点B,然后从节点B到节点D,然后从节点D到节点F。每个构成(constituent)移动的节点形成节点集306,它用作链308中的链路。所图示的链308具有三个链路并且包括四个被破坏的节点102。
用于检测网络攻击的一些方法依赖于检测异常。网络安全异常是与预期行为不匹配的动作或一组动作。什么是“预期”或“正常”取决于给定环境及其安全控制的配置方式。例如,使用简单规则(即每小时X个文件访问是正常的)的异常检测系统可以将接近月底的访问飙升视为异常,而使用基于在过去几个月中的日志记录行为的更灵活规则的系统不会将月底的飙升视为异常。机器学习模型、协同过滤适应以及其他工具和技术已经成功地检测到一些与正常用户行为的偏离;这种偏离可以指示网络安全遭到破坏。
然而,当涉及到非法横向移动的检测时,熟悉的异常检测方法并不令人满意。异常检测通常依赖于表示正常行为的大量数据的可用性,这些数据不必然存在于新构成或最近被重新配置或以其他方式被修改的网络上。此外,非法横向移动中所涉及的网络流量可能与正常的合法流量非常相似,例如,横向移动通常不涉及可疑IP地址、可疑端口、异常协议、或异常数据分组报头。
本文中的一些实施例与以下观察一致:敌手有时试图快速进出被破坏的网络而不留下任何可注意到的痕迹。为了克服保护网络的安全产品(例如NIDS和HIDS),网络敌手已经创建了自动化工具,以尽可能快地进行攻击,而无需人类用户的任何交互,并且无需在攻击中途与人类攻击方进行任何交互。结果,组织的网络中的许多攻击都是由自动化工具进行的。在计算横向移动是非法的可能性时,本文教导的一些实施例考虑了登录序列的计时;相对快节奏的登录模式会增加所计算的非法得分。
本文中的一些实施例与以下观察一致:敌手有时使用恶意软件从易失性存储器中提取密码、证书、令牌、用户名或其他凭证,并且该恶意软件在横向移动跨网络扩散攻击时依次被发送给每个新目标计算机。例如,Mimikatz工具可以被发送给连续的目标,以用于在从RAM中提取凭证时使用。尽管Mimikatz可能在网络攻击的上下文之外具有合法用途,但是当在攻击期间使用它来获得未经合法授权的凭证时,Mimikatz被用作恶意软件,并且因此在这里被描述为“恶意软件”。Mimikatz只是一个示例;其他恶意软件也可能或代替地通过非法横向移动被扩散,并被用来实现更多横向移动或其他攻击。本文教导的一些实施例在计算横向移动是非法的可能性时考虑数据传送的大小;一致大小的传送模式指示每次传送相同的有效负载,例如Mimikatz,并且会增加所计算的非法得分。
本文提供的教导以总体上具有更好的功能性特别是具有更好的用于检测非法横向移动的功能性来补充或扩展横向移动检测。除了短的移动时间和一致的数据传送大小之外,本文还描述了这些实施例和其他横向移动检测增强实施例的其他方面。
操作环境
参考图1,针对实施例的操作环境100包括至少一个计算机系统102。计算机系统102可以是多处理器计算机系统,也可以不是。操作环境可以包括给定的计算机系统中的一个或多个机器,其可以在云内形成集群、客户端-服务器联网的和/或对等联网。个体机器是计算机系统,并且一组协作的机器也是计算机系统。给定的计算机系统102可以被配置用于例如具有应用的最终用户、用于管理员、作为服务器、作为分布式处理节点、和/或以其他方式来配置。
人类用户104可以通过使用显示器、键盘和其他外围设备106,经由键入的文本、触摸、语音、移动、计算机视觉、手势和/或其他形式的I/O而与计算机系统102交互。屏幕126可以是可移除外围设备106或者可以是系统102的集成部分。用户接口可以支持实施例与一个或多个人类用户之间的交互。用户接口可以包括命令行接口、图形用户接口(GUI)、自然用户接口(NUI)、语音命令接口和/或其他用户接口(UI)呈现,它们可以作为不同的选项而被呈现或者可以被集成。
系统管理员、网络管理员、云管理员、安全分析师和其他安全人员、操作人员、开发人员、测试人员、工程师、审计人员和最终用户每个都是特定类型的用户104。代表一个或多个人行动的自动化代理、脚本、回放软件、设备等也可以是用户104,例如以促进测试系统102。取决于存储设备和/或联网设备与处理器110的可分离性,存储设备和/或网络设备在一些实施例中可以被视为外围设备并且在其他一些实施例中可以被视为系统102的一部分。例如,未在图1中示出的其他计算机系统可以以技术方式与计算机系统102交互,或者通过使用经由网络接口设备到网络108的一个或多个连接而与另一系统实施例交互。
每个计算机系统102包括至少一个处理器110。类似于其他合适的系统,计算机系统102也包括一个或多个计算机可读存储介质112。存储介质112可以是不同的物理类型。存储介质112可以是易失性存储器、非易失性存储器、原地固定介质、可移除介质、磁介质、光学介质、固态介质、和/或其他类型的物理持久性存储介质(不同于单纯的传播信号或单纯的能量)。特别地,当被插入或以其他方式被安装时,诸如便携式(即,外部)硬盘驱动器、CD、DVD、存储棒或其他可移除非易失性存储介质的经配置的存储介质114可以在功能性上成为计算机系统的技术部分,从而使得其内容可访问,以与处理器110交互并由处理器110使用。可移除的经配置的存储介质114是计算机可读存储介质112的示例。计算机可读存储介质112的一些其他示例包括内置RAM、ROM、硬盘以及用户104不容易移除的其他存储器存储设备。为了符合当前的美国专利要求,在美国未决或已授权的任何权利要求下,计算机可读介质、计算机可读存储介质或计算机可读存储器都不是信号本身或单纯的能量。
存储介质114被配置有由处理器110可执行的二进制指令116;在本文中广义地使用“可执行”来包括例如机器代码、可解释代码、字节代码、和/或在虚拟机上运行的代码。存储介质114还被配置有数据118,数据118通过指令116的执行而被创建、被修改、被引用和/或以其他方式被用于技术效果。指令116和数据118对其所驻留在其中的存储器或其他存储介质114进行配置;当该存储器或其他计算机可读存储介质是给定计算机系统的功能部分时,指令116和数据118也对该计算机系统进行配置。在一些实施例中,数据118的一部分表示真实世界中的事物,诸如产品特性、库存、物理测量、设置、图像、读数、目标、体积等等。这样的数据还通过备份、恢复、提交、中止、重新格式化和/或其他技术操作来进行转换。
尽管实施例可以被描述为被实现为由计算设备(例如,通用计算机、服务器或集群)中的一个或多个处理器执行的软件指令,但是这样的描述并不意味着穷尽所有可能的实施例。本领域技术人员将理解,通常也可以直接在硬件逻辑中全部或部分地实现相同或相似的功能性,以提供相同或相似的技术效果。备选地或者除了软件实现之外,本文描述的技术功能性可以至少部分地由一个或多个硬件逻辑组件来执行。例如并且在不排除其他实现的情况下,实施例可以包括硬件逻辑组件110、128,诸如现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统组件(SOC)、复杂可编程逻辑器件(CPLD)和类似组件。例如,实施例的组件可以基于其输入、输出和/或其技术效果而被分组为交互功能模块。
除了处理器110(例如CPU、ALU、FPU和/或GPU)、存储器/存储介质112和显示器126之外,操作环境例如还可以包括其他硬件128,诸如电池、总线、电源、有线和无线网络接口卡。名词“屏幕”和“显示器”在本文中可互换使用。显示器126可以包括一个或多个触摸屏、响应于来自笔或平板电脑的输入的屏幕、或者仅用于输出操作的屏幕。在一些实施例中,诸如人类用户I/O设备(屏幕、键盘、鼠标、平板电脑、麦克风、扬声器、运动传感器等)的外围设备106将存在于与一个或多个处理器110和存储器的可操作通信中。
在一些实施例中,系统包括通过有线和/或无线网络108连接的多个计算机。联网接口设备128可以使用诸如分组交换网络接口卡、无线收发器或电话网络接口的网络组件来提供对网络108的访问,这些组件例如可以存在于给定的计算机系统中。联网接口设备和其他网络组件(诸如交换机或路由器或防火墙)的虚拟化也可以存在,例如在软件定义的网络或沙盒或其他安全云计算环境中。在一些实施例中,一个或多个计算机由于断开或仅间歇性地连接到另一联网设备或远程云而部分地或完全地是“物理隔离的”(air gapped)。特别地,横向移动检测功能性可以被安装在物理隔离的网络上,并且然后定期或有时使用可移除介质来进行更新。给定的实施例还可以通过直接存储器访问、可移除非易失性存储介质、或其他信息存储-检索和/或传输方法来传送技术数据和/或技术指令。
本领域技术人员将了解,本文在“操作环境”下呈现的前述方面和其他方面可以形成给定实施例的一部分。本文档的标题并非旨在将特征严格分类为实施例和非实施例特征集。
一个或多个项在附图中以轮廓线形式示出,或者在括号内被列出,以强调它们不必是所图示的操作环境或所有实施例的一部分,而是可以与如本文所讨论的操作环境或一些实施例中的项进行互操作。在任何附图或任何实施例中,并不必然需要非轮廓线或括号形式的项。特别地,图1是为了方便而被提供;在图1中包括的项并不意味着该项或所描述的该项的用途是在当前的创新之前是已知的。
关于系统的更多信息
图2图示了具有受监测的网络108、130的环境。受监测的网络包括通过网络108连接发送或接收通信204的受监测的计算机102、202。监测产生描述事件208的日志206,诸如登录尝试、数据传送和其他网络活动。
增强的横向移动检测系统210接收事件并如本文所教导的那样使用横向移动检测功能性212分析它们,横向移动检测功能性212诸如是被配置为如本文所教导的那样进行操作的专用软件。横向移动检测功能性212可以被设计成通常检测横向移动214,并且可以进一步被定制以特别地检测非法横向移动216。
非法横向移动216由一个或多个攻击方218引起或激起。在所图示的环境中,攻击方218驻留在例如由防火墙所定义的网络边界220之外。但是本文中的教导也可以有利地被应用来检测内部攻击方的横向移动。
此外,在所图示的环境中,横向移动检测系统210驻留在受监测的网络130外部,但是在其他一些环境中,横向移动检测系统210驻留在受监测的网络130内部。类似地,所图示的环境示出横向移动检测系统210与单独定位的网络安全中心222通信,但是在其他一些环境中,横向移动检测系统210驻留在网络安全中心222内,或者在没有任何网络安全中心222本身的情况下运行。
图3和图8图示了至少一个横向移动检测系统210的各个方面300。这些方面在本文的各个点处进行了讨论,并且关于它们的附加细节在本公开文档后面的附图标记列表的讨论中被提供。
图4图示了增强的系统210,其被配置为产生警报、警告或其他报告402,从而标识非法横向移动216的可能实例。这些实例也被称为候选者404,例如“攻击候选者”或“非法横向移动候选者”。系统210可以通过接口406联网。
所图示的系统210包括非法横向移动检测软件408以执行检测横向移动214并帮助区分合法横向移动与非法横向移动216的计算。软件408可以利用各种模式316,诸如联网的计算机之间的短移动时间模式、联网的计算机之间数据传送一致大小模式、以具有根用户或类似强大凭证的计算机结束的移动模式,以及通过它们对本文所提供的用于计算非法得分的依据的依赖而被区分的其他模式。
在所图示的系统210中,模式316至少部分地基于对相关的日志数据410的分析。来自安全日志和网络流量日志的数据被相关以标识某些事件序列。相关性包括按时间顺序对日志条目进行排序,以便软件408可以确定相关事件的排序,并且涉及过滤日志条目以关注特定事件,诸如登录和数据传送。
图5图示了日志源500的一些示例。所图示的示例包括来自防火墙504的流量日志502、来自工作站508的安全日志506、来自服务器510的安全日志506、以及安全信息和事件管理(SIEM)工具512。SIEM可以进而整合由防火墙、工作站、服务器、路由器、FIDS、HIDS、或者其他设备和工具中的一个或多个所生成的日志206。这些日志源可能重叠,例如相同的事件可能出现在不同的日志中,并且给定的设备可能同时提供流量日志和安全日志。此外,日志206可以从这些示例之中未列出的来源获取。
图6图示了网络108的一些示例。所图示的示例包括云602、局域网(LAN)604、客户端-服务器网络606、软件定义的网络608、和具有由域控制器614强制执行的至少一个信任域612的网络610。这些网络类别可以重叠,例如LAN可以具有域控制器并且还作为客户端-服务器网络来操作。此外,本文中的教导可以被应用以检测网络中的横向移动,该横向移动碰巧与图6示例中的任何一个示例都不匹配。
图7示出了用于计算716非法得分702的依据700的一些示例。非法得分702指示检测到的横向移动(其可以包括两个网络节点之间的一个或多个构成横向移动)是非法的可能性。非法得分702可以是数值,例如在诸如零到一、零到十、或零到一百的范围内,得分702可以是诸如低、中或高的枚举值。非法得分所取决于的依据的图示示例包括移动时间(持续时间)1146,尤其是短移动时间704,数据传送大小320,尤其是一致的传送有效负载大小706,某些可疑协议708,常规地或以其他方式检测到的用户或节点行为异常710和对应的异常性得分326,关于链308属性712的数据,诸如链的长度310、或所发现的链的数目802、或链308是否共享节点102,以及关于管理员332凭证338的存在或使用的管理数据714。针对这些依据的定义和示例在本文的适当位置进行了讨论。
一些实施例使用或提供功能性增强的系统,诸如系统210或如本文教导的那样被增强的另一系统102。在一些实施例中,被配置用于自动检测非法横向移动的系统包括存储器112,并且还包括与存储器可操作地通信的处理器110。处理器110被配置为执行用于检测计算机的网络内的非法横向移动的步骤。
在这些实施例中的一些实施例中,这些步骤包括(a)至少将登录数据304和网络流量数据340相关,从而产生网络节点集306。每个网络节点集标识从源计算机102到目标计算机102的登录302事件208、并且还标识向目标计算机的数据传送318。
该实施例的步骤还包括(b)以链308的形式构建数字数据结构。链由至少节点集中的两个节点集构建。该链表示事件的序列330,包括:从第一计算机到第二计算机中的第二计算机登录,然后是将数据从第一计算机传送到第二计算机的第二计算机数据传送,然后是从第二计算机到第三计算机中的第三计算机登录,并且然后是将数据从第二计算机传送到第三计算机的第三计算机数据传送。在该链308中,从第一计算机被传送到第二计算机的数据的第二计算机数据传送大小320和从第二计算机被传送到第三计算机的数据的第三计算机数据传送大小320相差不多于两个传送大小中的最大值的百分之十。
该百分之十的容差是本文所指的“一致的”数据传送大小的一个示例。数据传送大小的一致性使得非法更有可能发生,因为网络攻击808期间的横向移动可以包括传送Mimikatz或类似的恶意软件810有效负载,其被发送到被破解的系统1002以允许在该被破解的系统上针对更多凭证338搜索。也就是说,在攻击期间,在横向移动期间被执行的数据传送可能全都具有大致相同的大小,因为它们都携带相同的漏洞利用有效负载。
在该实施例中,增强的系统的步骤还包括(c)将链报告为非法横向移动216候选者404。然后可以由入侵预防系统或其他工具122自动地、或者由人工管理员332手动地对报告402采取行动,以限制或以其他方式缓解来自攻击808的损害。
一些实施例使用短的计算机到计算机移动时间704来标识非法横向移动。在一些中,系统的特征还在于以下列方式中的至少一中方式的短计算机到计算机移动时间704的模式316:第二计算机登录与第三计算机登录之间的移动时间704少于到第二计算机的另一登录与到第三计算机的后续登录之间的时间322;第二计算机登录与第三计算机登录之间的移动时间704少于到网络的计算机中的至少一些登录302之间的平均时间812;第二计算机登录与第三计算机登录之间的移动时间704少于预定阈值324;或者第二计算机登录与第三计算机登录之间的移动时间704少于五分钟。
因此,如本文中所使用的,两个计算机之间的“短”移动时间704是满足这些模式316中的至少一个模式的移动时间1146:它快于到两个计算机的另一对登录,快于感兴趣网络中的登录之间的平均时间,快于预定阈值(其可能是固定的或由管理员或自动主动反馈循环动态调整的),或快于预定的固定阈值(在上面的示例中为5分钟,在本文的另一个示例中为两分钟)。
在一些实施例中,系统的特征在于管理员登录的模式316,其中在第二计算机登录期间,第一用户作为管理员332从第一计算机登录到第二计算机中,并且在第三计算机登录期间,第二用户作为管理员332从第二计算机登录到第三计算机中。这些登录不必然使用相同的用户名或凭证。在链308中使用或甚至仅存在管理员凭证可以是增加所计算的横向移动是非法的可能性702的依据700,因为在攻击808期间发生的横向移动的一个目的是搜集管理员凭证338。
在一些实施例中,系统的特征在于一致的协议选择的模式316,其中被用来将数据从第一计算机传送到第二计算机的到第二计算机协议314和被用来将数据从第二计算机传送到第三计算机的到第三计算机协议314是相同的协议314。在其中一些协议中,所使用的协议314也是可疑协议708,因为它是已知在非法横向移动216期间使用的协议,诸如SMB协议。
在一些实施例中,至少将登录数据和网络流量数据相关包括:将防火墙流量日志502的数据208与网络的计算机中的至少一个计算机的安全日志506的数据208相关。这可以更简洁地被描述为将防火墙流量日志502与安全日志506相关。虽然本文的一些示例记载了在环境中日志记录的事件208,但是日志不限于那些环境(微软公司的商标)。
本领域技术人员将承认,本文中的教导可以有益地被应用以增强不同类型网络的网络安全。特别地,在一些实施例中,其中部署横向移动检测的计算机的网络108、130包括以下至少一项:云网络602、局域网604、软件定义的网络608、客户端-服务器网络606,或者具有至少一个信任域612的网络610。
通过本文对计算硬件的扩展讨论,本文还描述了其他系统实施例,其直接或可导出为所描述的过程或所配置的介质的系统版本。
尽管在图中示出了具体的架构示例,但是实施例可以与那些示例不同。例如,不同附图中所示的项可以一起被包括在一个实施例中,附图中所示的项可以被省略,不同项中所示的功能性可以被组合成更少的项或单个项,项可以被重新命名,或者项可以以不同的方式相互连接。
在本公开中提供了示例以帮助说明技术的各方面,但是在本文档内给出的示例并未描述所有可能的实施例。例如,给定实施例可以包括附加的或不同的技术特征、机制、序列、数据结构或功能性,并且可以以其他方式偏离本文提供的示例。
过程(又名方法)
图9图示了可以由增强的系统(诸如系统210或如本文教导的另一功能性212增强的系统)执行或辅助的一系列方法900。图11进一步图示了适用于在具有本文教导的创新功能性的系统的操作期间使用的横向移动检测方法(其也可以在该词的法律意义上被称为“过程”)。图11包括图9中所示步骤的一些改善、补充或上下文动作。图11还并入了图9中所示的步骤。
除非另有说明,否则附图中所示的或以其他方式公开的技术过程将自动执行,例如通过增强的SIEM工具122、210。在涉及人类管理员或其他人类的动作的范围内,还可以部分自动并且部分手动地执行过程,例如,在一些实施例中,人类管理员可以指定移动时间阈值324。在本文中设想具有创新性的过程都不是完全手动的。
在给定实施例中,可以重复过程的零个或多个图示步骤,可能用不同的参数或数据来对其进行操作。实施例中的步骤也可以按照与图9和图11中所布局的从上到下的顺序不同的顺序来进行。步骤可以顺序地、以部分重叠的方式或完全并行地执行。特别地,遍历流程图900的动作项或流程图1100的动作项以指示在过程期间所执行的步骤的顺序可以因过程的各种执行而变化。流程图遍历顺序也可以因过程实施例而变化。如果所执行的过程是可操作的并且符合至少一项权利要求,则步骤也可以被省略、组合、重命名、重新分组、在一个或多个机器上执行或者以其他方式背离所图示的流程。
一些实施例使用或提供一种检测计算机网络内的非法横向移动的方法,包括以下自动步骤:至少将登录数据和网络流量数据相关902,从而产生904网络节点集306,每个节点集标识:用于登录到节点集的相应计算机的至少两个登录302时间322、节点集的至少一个计算机上的至少一个管理员账户336、以及节点集的计算机之间的至少一个数据传送318;从节点集中的至少两个节点集构建906链308,该链表示事件序列330,事件序列包括作为第一用户登录302到第一计算机,随后是向第一计算机的数据传送318,随后是使用管理员凭证从第一计算机登录302到第二计算机;并且将该链报告910为非法横向移动候选者。
在一些实施例中,将链报告910为非法横向移动候选者包括报告非法得分702,该非法得分702也由该方法计算716。在一些中,非法得分计算716至少部分地基于以下所列依据700中的至少两个依据:到链中的相邻计算机的登录之间的移动时间1146;被传送到链中的计算机的数据的传送大小320与从该计算机被传送的数据的传送大小320之间的差异;如何将数据传送到链中的计算机种的至少两个计算机的至少两个协议314选择;指示在链中有多于三个计算机的链长度指示312;共享至少一个计算机的多个链308的存在;或者至少部分地基于链中至少两个计算机之间的先前通信204的异常性得分326。一些实施例使用这些依据700中的至少三个依据来计算716非法得分;有些使用这些依据中的至少四个依据;有些使用更多个依据。
技术人员将承认,在检测到非法横向移动之后可以进行各种缓解。一些实施例包括对报告910的以下响应1118中的至少一个响应:隔离1128计算机中的一个计算机与网络的通信;防止1130数据从计算机中的至少一个计算机的渗漏1132;针对恶意软件810检查1134计算机中的至少一个计算机;针对数据完整性违规1136检查1134计算机中的至少一个计算机;获取1138计算机中的至少一个计算机的易失性存储器的取证映像806;获取1138计算机中至少一个计算机的非易失性存储器的取证映像806;或针对网络攻击808加固1140计算机中的至少一个计算机。
在一些实施例中,报告910包括报告1144到链中的相邻计算机的登录之间的移动时间1146。在一些实施例中,报告910包括报告1154被传送到链中的计算机的数据的传送大小与从该计算机被传送的数据的传送大小之间的差异1156。在一些实施例中,报告910包括报告标识1148被用来将数据传送到链中的计算机中的至少两个计算机的特定数据协议314。在一些实施例中,报告910包括关于链范围1160的报告1158,其可以包括链308中多于两个节点集的指示312、指示链中有多于三个的多少计算机的链长度310、或者指示已构建了多少个链的链计数802。在此示例中,所考虑的每个链都基于使用或提供管理员账户访问的登录序列。
一些实施例从经训练的机器学习模型328获取1168异常性得分326,该异常性得分326至少部分地基于链中的至少两个计算机之间的先前通信。例如,神经网络、深度神经网络、修改的协同过滤器、决策树、聚类和其他机器学习工具和技术可以被应用于事件208以标识可能的异常710,即使没有受益于本文所提供的所有教导。然后可以将得到的异常性得分326与其他依据700组合,例如以加权平均的方式,以计算非法得分702。
经配置的存储介质
一些实施例包括经配置的计算机可读存储介质112。存储介质112可以包括磁盘(磁、光或其他)、RAM、EEPROMS或其他ROM,和/或其他可配置存储器,尤其包括计算机可读存储介质(其不是单纯的传播信号)。经配置的存储介质具体可以是诸如CD、DVD或闪存的可移除存储介质114。可以是可移除或不可移除的以及可以是易失性或非易失性的通用存储器使用诸如横向移动检测软件408、登录数据304、流量数据340、链308、非法得分702和候选者报告402的项而被配置成实施例,以从可移除存储介质114和/或诸如网络连接的另一源读取的数据118和指令116的形式,来形成经配置的存储介质。如本文所公开的,经配置的存储介质112能够使计算机系统102执行用于横向移动检测的技术处理步骤(尤其是用于非法横向移动检测的步骤)。因此,附图帮助图示经配置的存储介质实施例和过程(也称为方法)实施例,以及系统和过程实施例。特别地,图9或图11中所图示的或本文中以其他方式教导的任何过程步骤可以被用来帮助将存储介质配置为形成经配置的存储介质实施例。
一些实施例使用或提供配置有数据118和指令116的计算机可读存储介质112、114,这些数据118和指令116在由至少一个处理器110执行时使计算系统执行用于检测计算机网络内的非法横向移动的方法。该方法包括:至少将登录数据和网络流量数据相关902,从而产生网络节点集,每个节点集标识1108针对登录到节点集的相应计算机的至少两个登录时间,并且还标识1106节点集的至少一个计算机上的至少一个管理员账户;从节点集中的至少两个节点集构建906链,该链表示事件序列,该事件序列包括作为第一用户登录302到第一计算机,随后是使用提升的令牌或其他管理员凭证从第一计算机登录302到第二计算机;并且将链报告910为非法横向移动候选者。
在一些实施例中,构建906链包括确定1120两个登录时间之间的移动时间少于两分钟。在其他一些实施例中,截止值是五分钟而不是两分钟。
在一些场景中,当攻击方得到诸如域管理员814密码338的强大凭证时,攻击方218将停止尝试扩展一组被破坏的机器以针对凭证搜索。包含强大凭证的被破解的机器102可能仍然登录到其他计算机,但是不再需要在凭证搜索中使用的那种数据传送(例如,加载Mimikatz的数据传送)。因此,在一些实施例中,构建链包括确定1162一致的计算机到计算机数据传送大小320的模式316在包含以下至少一项的计算机102处结束:域管理员814凭证338,或者根用户816凭证338。
在一些场景中,当攻击方到达不包含任何提升的令牌或其他管理员凭证以供Mimikatz或其他恶意软件盗用的机器X时,攻击方218将停止尝试扩展一组被破坏的机器以针对凭证搜索。因此,在一些实施例中,构建链包括确定1162链的结束处的计算机X不包含具有比链中的先前计算机用来登录到计算机X的凭证更高的特权804的任何凭证338。
在一些实施例中,构建链包括确定1148两个计算机之间的登录利用服务器消息块协议。
附加的示例和观察
本领域技术人员将认识到,并非本公开的每个部分或其中的任何特定细节都必须满足诸如启用、书面描述或最佳模式之类的法律标准。与任何其他专利公开的任何明显冲突,即使来自本发明的所有者,在解释本专利公开中呈现的权利要求时也没有任何作用。根据与本公开的所有部分有关的这种理解,提供了一些附加的示例和观察结果。
一些实施例提供了一种自动化的移动检测器。许多敌手使用自动化的工具来收割凭证338并在组织中的不同工作站102之间移动214,因此检测该移动可以提高网络安全性。在一些实施例中,自动移动检测器210通过将防火墙流量日志与安全日志相关来检测那些自动攻击,以找到由自动化的工具使用的横向移动路径(微软公司的标志)。
作为安全日志事件示例,具有登录类型3(网络连接)的安全事件4624包含从另一机器102连接到机器102的用户名、登录方法(例如NTLM或Kerberos)、和指示所打开的网络会话是否作为管理员会话打开的标志。防火墙流量日志包含源IP地址、目的地IP地址、目的地端口和会话中被传送的数据的量,在10%容差范围内。
通过将两种日志事件相关902以将数据传送与登录相匹配,实施例可以得到相关的事件结果,例如,数据410示出源IP使用特定用户进行到目的地IP的网络登录,该用户是在目的地上的管理员,具有针对会话的数据体量320。例如,可以通过将计算机自己的安全事件4624与防火墙流量日志中的目的地IP匹配,将来自安全事件4624的登录方法与来自防火墙流量日志的目的地端口(例如,NTLM与端口445/80TCP,Kerberos与端口88UDP或TCP)匹配,并且匹配事件时间。相关的事件指示从源计算机到目的地计算机的可能移动214。该移动可能是敌手218通过使用像Mimikatz之类的工具使用管理会话从目的地机器收割凭证的结果。
相关的事件可以被表示为例如具有两个节点的有向图。这样的图可以利用节点和链路视觉地表示,或者用文本来表示,例如:(计算机A,用户X)->(计算机B,用户X是管理员),其中成对的括号指示一个节点,并且“->”指示有向链路。例如,视觉表示在检测器210图形用户接口中可能更受青睐,而文本表示在检测器日志或脚本或处理中更受青睐。附加的相关性可能产生附加的节点和链路,并允许由节点和链接所表示的移动按时间顺序排序。通过将一个图的源IP与另一图的目的地IP相匹配,可以连接图以形成更大的图。相关性还可以考虑图中表示的移动的传送体量,例如其中来自一个子图的目的地IP的时间戳早于另一子图中的源IP的时间戳。
这种相关性可以导致具有至少两个节点的有向图,其中第一子图将连接到第二子图并且第二子图表示在由第一子图所表示的移动生成之后的移动。一个这样的图可以用文本描述为:(计算机A,用户X)->(计算机B,用户X是管理员,用户Z)->(计算机C,用户Z是管理员);(计算机A,用户X)->(计算机D,用户X是管理员)。请注意,在这个示例中,从节点A在两个方向上发生移动214:一条路径是A->B->C,而另一条路径是A->D。当然,这些仅仅是示例。在生产设置中,移动检测构建可能会构造具有许多不同路径并且每条路径中有不同数目的节点的图。
在一些实施例中,每个链308(其可以被认为是最终相关的事件)包含具有至少三个节点102的至少一条路径。这样的事件可以表示检测到使用用于横向移动的自动化的工具810遵循从一个IP地址到另一个进行的路径中的一些或所有路径。
一些实施例针对用户登录搜索并检查登录的用户是否将具有管理员会话,这意味着它可以从它登录到其中的远程计算机中拉取密码。一些实施例获悉所创建的路径并注意哪些用户通常从哪些计算机进行移动,并且使用异常检测尝试来减少误报横向移动报告的数目。一些实施例将功能性212实现为安全基础设施的一部分,特别是在云602中。
一些实施例使用或提供一种检测计算机网络内未经授权的横向移动的方法,包括自动地:至少将登录数据和网络流量数据相关902,从而产生网络节点对,每个网络节点对标识从源计算机到目标计算机的登录事件;从节点对中的至少两个节点对构建906链,该链表示事件序列,该事件序列包括:第一用户作为管理员从第一计算机登录到第二计算机中,然后第二用户作为管理员从第二计算机登录到第三计算机中;并且将链报告910为未经授权的横向移动候选者。
在一些实施例中,构建906链包括:确认从第一计算机被传送到第二计算机的数据的第一量在从第二计算机被传送到第三计算机的数据的第二量的指定容差内。在一些实施例中,构建906链包括:查明在第一用户登录到第二计算机的指定时间内第二用户登录到第三计算机。
下面提供了对以上讨论的附加支持。为方便起见,这些附加的支持材料出现在不同的标题下。尽管如此,所有这些都旨在被理解为本公开对预期实施例的讨论的整合和组成部分。
技术特性
本文描述的实施例的技术特性对于本领域普通技术人员来说将是明显的,并且对于广泛的细心读者来说也将以若干方式将是明显的。一些实施例解决了技术活动,诸如通过在受监测计算系统中的事件的关联和过滤来检测横向移动,比较1120计算机间移动时间,比较1122数据传送大小320,以及标识1124计算机协议314,这些活动每一个都是深深植根于计算技术中的活动。所讨论的一些技术机制包括例如链308数据结构、数字资源访问凭证338、恶意软件810、取证映像806、以及链结束节点特性1164。所讨论的一些技术效果包括例如横向移动的检测1102,合法横向移动214与非法横向移动216的区别,以及加固的1140计算系统130。因此,纯粹的思想过程显然被排除在外。根据所提供的描述,基于教导的技术特性的其他优点对于技术人员来说也将是明显的。
本文描述的一些实施例可以被一些人在更广泛的上下文中看待。例如,诸如攻击、相关性本身、检测本身、监测、移动和安全之类的概念可以被认为与特定实施例相关。然而,从广泛上下文的可用性来看,并不能得出本文正在为抽象思想寻求专有权;事实并非如此。相反,本公开关注于提供适当的具体实施例,其技术效果完全或部分地解决了特定技术问题,诸如如何自动且有效地评估某些登录和数据传送是网络攻击的一部分的可能性。涉及攻击、相关性、检测、监测、移动或安全的其他经配置的存储介质、系统和过程不在本范围内。因此,在正确理解本公开内容的情况下,也避免了模糊性、纯粹抽象性、缺乏技术特性以及随之而来的证明问题。
附加的组合和变型
代码、数据结构、逻辑、组件、通信和/或其功能等效物的这些组合中的任何组合也可以与上述系统中的任何系统及其变型进行组合。过程可以以可操作的任何子集或组合或序列来包括本文描述的任何步骤。每个变型可以单独出现,或者与任何一个或多个其他变型组合地出现。每个变型可以与任何过程一起出现,并且每个过程可以与任何一个或多个其他过程组合。每个过程或过程的组合(包括变型)可以与上述经配置的存储介质组合和变型中的任何一个组合。
更一般地,技术人员将认识到,并非本公开的每个部分或其中的任何特定细节都必然满足诸如启用、书面描述或最佳模式的法律标准。此外,实施例不限于本文描述的特定的启发示例、通信协议、操作系统环境、特征示例、软件过程、开发工具、恶意软件、标识符、数据结构、数据组织、符号、控制流、伪代码、命名约定、或本文描述的其他实现选择。与任何其他专利公开的任何明显冲突,即使来自本发明的所有者,在解释本专利公开中呈现的权利要求时也没有任何作用。
首字母缩略词、缩写、名称和符号
在下面定义了一些首字母缩略词、缩写、名称和符号。其他定义在本文中的其他地方,或者不需要这里的定义来被技术人员理解。
ALU:算术和逻辑单元
API:应用程序接口
BIOS:基本输入/输出系统
CD:压缩盘
CPU:中央处理单元
DVD:数字多功能盘或数字视频盘
FPGA:现场可编程门阵列
FPU:浮点处理单元
GPU:图形处理单元
GUI:图形用户接口
HIDS:主机入侵检测系统
HTTP:超文本传送协议;除非另有说明,HTTP在本文中包括HTTPS
HTTPS:安全的超文本传送协议
IaaS或IAAS:基础设施即服务
ID:标识或身份
IoT:物联网
IP:互联网协议
LAN:局域网
NIDS:网络入侵检测系统
NTLM:新技术LAN管理器
OS:操作系统
PaaS或PAAS:平台即服务
RAM:随机存取存储器
ROM:只读存储器
SIEM:安全信息和事件管理;也指提供安全信息和事件管理的工具
TCP:传输控制协议
TPU:张量处理单元
UDP:用户数据报协议
UEFI:统一可扩展固件接口
URI:统一资源标识符
URL:统一资源定位符
WAN:广域网
一些附加术语
在本文中参考了诸如在附图中图示的那些之类的示例性实施例,并且在本文中使用特定语言对其进行描述。但是,对于(多个)相关领域的技术人员和拥有本公开内容的技术人员来说,在本文中所示的特征的变更和进一步修改以及本文中的特定实施例中所示的抽象原理的附加技术应用应被认为是在权利要求的范围内。
在本公开中阐明了术语的含义,因此在阅读权利要求时应仔细注意这些阐述。给出了具体示例,但是(多个)相关领域的技术人员将理解,其他示例也可以落入所使用的术语的含义内,并且落入一个或多个权利要求的范围内。术语在此处的含义不一定与它们在一般用法(特别是在非技术用法)、特定行业的用法、或特定词典或词典集中的含义相同。附图标记可以与各种措词一起使用,以帮助示出术语的广度。从文本的给定部分中省略附图标记并不必然意味着该文本没有讨论附图的内容。发明人主张并行使其对特定和选定的词典编纂的权利。带引号的术语是显式定义的,但是术语也可以不使用引号而被隐式地定义。术语可以在具体实施方式中和/或在申请文件的其他位置处被显式或隐式地定义。
如在本文中所使用的,“计算机系统”(又名“计算系统”)可以包括例如一个或多个服务器、主板、处理节点、膝上型计算机、平板电脑、个人计算机(便携式或非便携式)、个人数字助理、智能手机、智能手表、智能手环、蜂窝或移动电话、至少具有处理器和存储器的其他移动设备、视频游戏系统、增强现实系统、全息投影系统、电视、可穿戴计算系统、和/或提供至少部分地通过指令来控制的一个或多个处理器的(多个)其他设备。指令可以采取固件或存储器和/或专用电路装置中的其他软件的形式。
“管理员”是通过使用他们自己的账户的凭证对其他用户的多个账户(直接或间接)具有合法访问权的任何用户。管理员的一些示例包括网络管理员、系统管理员、域管理员、特权用户、服务提供方人员和基础设施管理员。
“多线程”计算机系统是支持多个执行线程的计算机系统。术语“线程”应被理解为包括能够调度或受到调度并且可能同步的代码。在本公开之外,线程也可以通过诸如“任务”、“过程”或“协程”之类的其他名称而是已知的。然而,在本文中在线程和过程之间进行区分,因为线程定义了过程内部的执行路径。此外,过程的线程共享给定的地址空间,而不同的过程具有不同的相应地址空间。过程的线程可以并行运行、顺序运行、或者以并行执行和顺序执行(例如,时间分片)的组合来运行。
“处理器”是线程处理单元,诸如同时多线程实现中的核。处理器包括硬件。给定芯片可以容纳一个或多个处理器。处理器可以是通用的,也可以针对特定用途来定制,诸如矢量处理、图形处理、信号处理、浮点算术处理、加密、I/O处理、机器学习等。
“内核”包括操作系统、管理程序、虚拟机、BIOS或UEFI代码以及类似的硬件接口软件。
“代码”意指处理器指令、数据(包括常量、变量和数据结构)、或者指令和数据两者。“代码”和“软件”在本文中可互换使用。可执行代码、解释代码和固件是代码的一些示例。
“程序”在本文中被广义地使用,以包括应用、内核、驱动程序、中断处理程序、固件、状态机、库和由程序员(也被称为开发人员)编写和/或自动生成的其他代码。
“例程”是一段可调用的代码,其通常将控制返回给就在程序执行中调用该例程的点之后的指令。取决于所使用的术语,有时会在“函数”和“程序”(procedure)之间进行区分:函数通常返回一个值,而程序(procedure)不返回。如在本文中所使用的,“例程”包括函数和程序(procedure)。例程可以具有返回值的代码(例如,sin(x)),或者它可能只是返回而不提供值(例如,void函数)。
“服务”意指在云计算环境或其他网络或计算系统环境中提供的可消耗性程序产品,其为多个程序提供资源或为多个程序提供资源访问,或两者兼而有之。
“云”意指用于计算、存储和联网的池化资源,其弹性地可用于所测量的按需服务。云可以是私有的、公共的、社区的或混合的,并且云服务可以以基础设施即服务(IaaS)、平台即服务(PaaS)、软件即服务(SaaS)或其他服务的形式来提供。除非另有说明,否则从文件读取或向文件写入的任何讨论都包括读取/写入本地文件或通过网络(其可以是云网络或其他网络)的读取/写入、或者两者都进行(本地和联网的读取/写入)。
“IoT”或“物联网”意指可寻址嵌入式计算节点的任何联网集合。这样的节点是本文中所定义的计算机系统的示例,但是它们还具有以下特性中的至少两个特性:(a)没有本地人类可读显示器;(b)没有本地键盘;(c)输入的主要来源是跟踪非语言数据来源的传感器;(d)没有本地旋转磁盘存储—RAM芯片或ROM芯片提供唯一本地存储器;(e)没有CD或DVD驱动器;(f)嵌入在家用电器或家用固定装置中;(g)嵌入在植入式或可穿戴式医疗设备中;(h)嵌入在交通工具中;(i)嵌入在过程自动化控制系统中;(j)侧重于以下中的一项的设计:环境监测、市政基础设施监测、工业设备监测、能源使用监测、人类或动物健康监测、物理安全、或物理运输系统监测。IoT存储装置可以是未经授权访问的目标,无论是经由云、经由另一网络、还是经由直接本地访问尝试。
对计算资源的“访问”包括使用许可或其他能力来读取、修改、写入、执行或以其他方式利用该资源。尝试的访问可能与实际访问明确区分开来,但是没有“尝试的”限定词的“访问”包括尝试的访问和实际执行或提供的访问。
如本文中所使用的,除非另有说明,否则“包括”允许附加元件(即,包括(include)意指包括(comprise))。
“优化”意指改进,不必然是完美。例如,可以对已被优化的程序或算法进行进一步的改进。
“过程”(process)在本文中有时被用作计算科学领域的术语,并且在该技术意义上涵盖计算资源用户,其例如还可以包括或被称为协程、线程、任务、中断处理程序、应用过程、内核过程、程序(procedure)或对象方法。实际上,“过程”是由系统实用程序标识的计算实体,诸如任务管理器、ps或其他操作系统环境中的类似实用程序(分别为微软公司和Linus Torvalds的商标)。“过程”(process)在本文中也被用作专利法领域的术语,例如,在描述过程权利要求时,与系统权利要求或制品(经配置的存储介质)权利要求相对。类似地,“方法”在本文中有时被用作计算科学领域的技术术语(一种“例程”),也被用作专利法领域的术语(“过程”)。专利法意义上的“过程”和“方法”在本文中可互换使用。技术人员将理解在特定实例中预期具有的含义,并且还将理解(在专利法意义上)给定要求保护的过程或方法有时可以使用(在计算科学意义上的)一个或多个过程或方法来实现。
与没有自动化相反,“自动地”意指通过使用自动化(例如,针对本文讨论的特定操作和技术效果,由软件配置的通用计算硬件)。特别地,“自动地”执行的步骤尽管可以由人启动或由人交互式地引导,但是它们并不是通过手在纸上或在人的大脑中来执行。使用机器执行自动步骤以获取在没有这样提供的技术交互的情况下将无法实现的一个或多个技术效果。假定自动执行的步骤包括主动执行的至少一个操作。
技术人员理解,技术效果是技术实施例的推定目的。例如,在一个实施例中涉及计算,并且一些计算也可以在没有技术组件的情况下(例如,通过纸和铅笔,甚至作为脑力步骤)执行,这一事实并不能消除技术效果的存在或改变实施例的具体技术性质。诸如通过读取和过滤日志206来提取事件208、相关902事件208、构建906链数据结构、计算716非法得分702、获取1138存储器112的取证映像以及本文讨论的许多其他操作的横向移动检测操作被理解为固有地是数字化的。人类大脑不能直接与CPU或其他处理器或RAM或其他数字存储设备进行接口,来读取和写入必要的数据以执行本文所教导的横向移动检测操作。鉴于本公开,本领域技术人员将很好地理解这一切。
“以计算的方式(computationally)”同样意指计算设备(至少是处理器加上存储器)正被使用,并且排除了仅通过人类思想或仅通过人类行为获取的结果。例如,用纸和铅笔进行算术并不是如本文所理解的那样以计算的方式进行的算术。计算结果更快、更广泛、更深入、更准确、更一致、更全面和/或以其他方式提供超出人类表现范围的技术效果。“计算步骤(computational step)”是以计算的方式执行的步骤。“自动地”和“以计算的方式”都不一定意指“立即”。“以计算的方式”和“自动地”在本文中可互换使用。
“主动地”意指没有来自用户的直接请求。事实上,在步骤的结果已被呈现给用户之前,用户甚至可能没有意识到实施例的主动步骤是可能的。除非另有说明,否则本文所描述的任何计算和/或自动步骤也可以主动进行。
贯穿本文档,使用可选的复数“(多个)”意指存在一个或多个所指示的特征。例如,“(多个)处理器”意指“一个或多个处理器”或等效的“至少一个处理器”。
出于美国法律和实践的目的,在权利要求书或其他地方使用本文中的词语“步骤”并非旨在援引装置加功能(means plus function)、步骤加功能(step plus function)或美国法典35第112节第六款/第112(f)条的权利要求解释。特此明确反驳对此种效果的任何推定。
出于美国法律和实践的目的,除非权利要求使用短语“用于…的部件”,否则权利要求并不旨在援引部件加功能的解释。旨在被解释为部件加功能语言的权利要求语言(如果存在)将通过使用短语“用于…的部件”来明确记载该意图。当采用部件加功能的解释时,无论是通过使用“用于…的部件”和/或通过法院对权利要求语言的法律解释,说明书中针对给定名词或给定动词所记载的部件应被理解为与权利要求语言链接并在本文中通过以下任何方式链接在一起:在附图的框图中的相同框内出现、以相同或相似的名称来标示、以相同的附图标记来标示、以任何附图中描绘的功能关系、在本公开文本中指出的功能关系。例如,如果权利要求限制记载了“zac小部件”并且该权利要求限制受到部件加功能解释的约束,那么至少在说明书中任何图框、段落或示例中提及“zac小部件”的任何地方所标识的所有结构、或由指派给zac小部件的任何附图标记连接在一起的所有结构、或被公开为与zac小部件的结构或操作具有功能关系的所有结构,将被视为本申请中针对zac小部件所标识的结构的一部分,并将帮助定义zac小部件结构的等效集合。
本领域技术人员将认识到本创新公开讨论了各种数据值和数据结构,并且认识到这些项驻留在存储器(RAM、磁盘等)中,从而配置存储器。本领域技术人员还将认识到,本创新公开讨论了在给定实现中以可执行代码体现的各种算法步骤,并且此类代码也驻留在存储器中,并且它有效地配置执行它的任何通用处理器,从而将其从通用处理器转换为功能专用硬件的专用处理器。
因此,技术人员不会错误地将(a)权利要求中记载的存储器和(b)权利要求中记载的数据结构或数据值或代码视为非重叠项。数据结构、数据值和代码被理解为驻留在存储器中,即使权利要求没有明确地为所提及的每个数据结构或数据值或代码段叙述驻留。因此,不需要对这种驻留进行明确的叙述。然而,它们也不被禁止,并且可以存在一两个精选叙述以进行强调,而不会将所有其他数据值和数据结构以及代码排除在驻留之外。同样,权利要求中记载的代码功能性被理解为配置处理器,而不管该配置数量是否在权利要求中被明确记载。
贯穿该文档,除非另有明确说明,否则对过程中的步骤的任何引用都假定该步骤可以由感兴趣的一方直接执行和/或由一方通过干预机制和/或干预实体间接执行,并且仍然在步骤的范围内。也就是说,除非明确说明直接执行,否则不需要由感兴趣方直接执行该步骤。例如,涉及感兴趣方的行动的步骤(诸如关于目的地或其他主题的构建、比较、相关、检测、确定、强化、标识、检查、隔离、获取、防止、报告、设置(以及构建、被构建、比较、被比较等)可能涉及一些其他方的干预动作(诸如上述或转发、复制、上传、下载、编码、解码、压缩、解压缩、加密、解密、认证、调用等),包括本文档中提及的任何动作,但是仍应被理解为由感兴趣方直接执行。
每当提及数据或指令时,应理解这些项对计算机可读存储器和/或计算机可读存储介质进行配置,从而将其转换为特定制品,而不是例如简单地存在于纸上、人的思想中或者仅仅是作为在电线上传播的信号。出于美国专利保护的目的,根据美国专利商标局(USPTO)在In re Nuijten案中的解释,存储器或其他计算机可读存储介质不是传播信号、载波或属于可专利主题范围之外的单纯能量。在美国,没有任何权利要求涵盖信号本身或单纯的能量,并且以其他方式主张的鉴于本公开的任何权利要求解释在表面上是不合理的。除非在美国境外准许的权利要求中另有明确说明,否则权利要求不涵盖信号本身或单纯的能量。
此外,尽管本文其他地方有明显相反的说明,但是在以下方面之间应理解为明显的区别:(a)一方面是计算机可读存储介质和计算机可读存储器和(b)另一方面是传输介质,也被称为信号介质。传输介质是传播信号或载波的计算机可读介质。相比之下,计算机可读存储介质和计算机可读存储器不是传播信号或载波的计算机可读介质。除非权利要求中另有明确说明,否则“计算机可读介质”意指计算机可读存储介质,其不是传播信号本身,也不是单纯的能量。
本文中的“实施例”是示例。术语“实施例”与“本发明”不可互换。实施例可以自由地共享或借用各方面来创建其他实施例(只要结果可操作),即使在本文中本身没有明确地描述各方面的结果组合。要求明确且单独地描述每个和每一个被许可组合对于本领域技术人员而言不是必要的,并且这与承认专利说明书是将本领域技术人员作为读者所编写的政策相违背。关于由甚至很少量可组合特征引起的可能组合数目的形式化组合计算和非正式通常直觉也将表明,本文描述的各方面存在大量各方面的组合。因此,要求对每个和每一个组合都进行明确记载将与要求简明扼要的专利说明书和使读者了解所涉及技术领域的政策相违背。
附图标记列表
提供以下列表是为了方便和支持附图并且作为说明书文本的一部分,其通过参考多个项来描述创新。此处未列出的项仍然可以是给定实施例的一部分。为了使文本更易读,在文本中一些(而非全部)引用项附近应用了给定附图标记。相同的附图标记可以与参考给定项的不同示例或不同实例一起使用。附图标记列表是:
100操作环境,也被称为计算环境
102计算机系统,也被称为“计算(computational)系统”或“计算(computingsystem)系统”,并且在网络中时可以被称为“节点”
104用户,例如受监测得系统130的用户
106外围设备
108一般网络,包括例如LAN、WAN、软件定义的网络、云和其他有线或无线网络
110处理器
112计算机可读存储介质,例如RAM、硬盘
114可移除的经配置的计算机可读存储介质
116由处理器可执行的指令;可以位于可移除存储介质上或其他存储器(易失性或非易失性或两者兼有)中
118数据
120(多个)内核,例如(多个)操作系统、BIOS、UEFI、设备驱动程序
122工具,例如防病毒软件、防火墙、分组嗅探器软件、入侵检测系统、入侵防御系统、其他网络安全工具、调试器、剖析器、编译器、解释器、反编译器、汇编器、反汇编器、源代码编辑器、自动完成软件、模拟器、模糊器、储存库访问工具、版本控制工具、优化器、协作工具、其他软件开发工具和工具套件(包括例如集成开发环境)、硬件开发工具和工具套件、诊断等
124应用,例如文字处理器、web浏览器、电子表格、游戏、电子邮件工具、命令
126显示屏,也被称为“显示器”
128未以其他方式与附图标记106、108、110、112、114相关联的计算硬件
130受监测的计算机网络,例如系统102,其资源或活动或两者都被日志记录、被跟踪、被分析或以其他方式被监测以提供或优化网络安全
202受监测的计算机,例如在受监测的计算机网络130中的计算机102(节点102)
204计算机之间的通信;例如,也可以被称为“流量”或“分组”
206日志,即在计算系统中某些事件的自动创建的记录;可以是系统日志格式或另一格式
208事件;也可以被称为日志中的“条目”或条目集或数据208
210横向移动检测系统
212横向移动检测功能性,例如,软件408或由软件408使用或由软件408生成的数据结构,链308
214总体的横向移动
216非法横向移动,例如,由外部或内部攻击方执行的横向移动,其行动超出了受监测的网络的所有者授予他们的权限范围(如果有的话)
218攻击方,例如在网络内行动超出网络所有者授予他们的权限范围(如果有的话)的人或自动化;可以是外部的或内部的;也可以被称为“敌手(adversary)”
220网络边界(boundary),例如由路由器或网关或IP地址分配来定义;也可以被称为网络“边界(perimeter)”
222网络安全中心;也可以被称为“安全运营中心”或SOC;可以在组织结构图中被正式指定,也可以隐含在人员被分配的职责中,或两者兼而有之
300一些横向移动检测系统、方法和功能性的一些方面
302登录(login);可能指的是登录行为(又名“登录(log on)”),或在日志中对该动作的记忆
304关于一个或多个登录的数据,例如,它们何时发生、使用了哪个用户名、登录到哪个计算机中
306移动214中所涉及的节点集102
308表示从一个计算机到另一个计算机的至少一个登录的链数据结构;还可以表示关联项,诸如计算机之间传送了多少数据,以及使用了哪个(哪些)协议
310链的长度;可以以节点102(即计算机102)度量,或在计算机对之间的构成移动214中测量
312链长度指示符;可以是带有明示或暗示单位的数,例如“五个计算机的链”、“四个移动的链”,也可以指示一个范围,例如“至少三个计算机”,或者也可以是枚举值,例如带有基础数值定义的“短”、“中”或“长”
314计算机协议,例如TCP、IP、UDP、HTTP、SMB、Kerberos
316在检测非法横向移动时使用的模式;例如,可以是登录到连续计算机之间的短时间模式、一致的数据传送大小模式或本文讨论的任何其他模式
318数据传送可以指的是向计算机传送数据的动作,或者可以指的是在日志中对该行为的记忆;“传送”并不意味着移除原件,而是与“传输”或“发送副本”互换使用
320数据传送大小;也可以被称为数据“体量(volume)”;例如,可以以字节、扇区或块为单位来度量
322不带限定词指的是一般性地时间;假定是指持续时间,其可以用微秒、处理器周期、系统滴答(tick)或其他单位来度量;也可以指的是时间点,例如由时间戳表示的点;当符合条件时也可以指的是从源计算机处的登录到从该源计算机到目的地计算机的登录“移动时间”,除非另有说明
324移动时间阈值,例如,对移动时间必须多短才能有资格成为“短”的限制
326网络安全异常得分;也可以被称为“异常性得分”
328针对网络安全异常检测所训练的模型;用于训练的输入数据可以包括形式为(用户、资源、每日计数)的元组,例如,每日计数是用户在给定日期访问资源的次数;模型可以包括任何机器学习模型
330事件208的序列
332管理员
334非管理员
336账户,例如,在出示凭证后被访问的一组计算资源
338凭证,例如,用户名、密码、数字证书、令牌
340流量数据,例如,如由分组嗅探器或在流量日志中发现的
402标识至少一个攻击候选者的报告,诸如可疑的一组横向移动
404攻击候选者,诸如可疑的一组横向移动
406与系统210的接口;可以包括例如壳(shell)、图形或其他用户接口、网络地址、API、网络接口卡、端口
408横向移动检测软件;例如可以实现方法900、1100中的任何方法或功能性212中的任何功能性
410与流量数据相关以表示移动214的日志数据
500日志206的源
502流量日志,例如,由分组捕获产生或由代理或工具(诸如NIDS)生成
504防火墙或任何具有防火墙功能性的设备
506安全日志,例如,由代理或工具(诸如HIDS)生成
508工作站,例如,塔、膝上型计算机、平板电脑、智能手机或通常一次由一个人使用的其他节点102
510服务器,例如,服务器-客户端网络中的计算机,其向作为客户端的多个工作站提供服务
512SIEM
602云;也可以被称为“云计算环境”
604局域网(LAN)
606客户端-服务器网络
608软件定义的网络
612信任域
614信任域控制器
700用于计算非法得分的依据
702非法得分;可以是数字,或者是枚举,诸如“低”或“高”、“合法”或“可疑”等
704短移动时间;符合条件为短的内容由上下文定义,如果没有上下文指示与“短”不同的理解意指不到两分钟
706一致数据传送大小;符合条件为一致的内容由上下文定义,如果没有上下文指示与“一致的”不同的理解意指差异小于10%
708可疑协议;符合条件为可疑的内容由上下文定义,如果没有上下文指示与“可疑”不同的理解意指SMB(服务器消息块)
710网络安全异常
712一个或多个链的属性,例如链的长度或找到的链的数目、或链是否共享节点
714关于一个或多个管理员凭证的数据,诸如它们是否存在于给定节点上、它们是否被用于登录、以及它们的相对特权级别
716非法得分的计算;也指的是计算非法得分的动作
802链308的数目
804凭证的相对特权级别,例如,它是低级非管理员334凭证还是中级管理员332凭证或高级根用户816凭证
806存储器内容的取证映像;不需要包括存储器的所有内容
808网络攻击,例如,未经网络所有者明确授权的对网络的先前或正在进行的入侵
810恶意软件;包括为用于网络攻击而被设计的软件,以及未明确为用于网络攻击而被设计但被用作或正在被用作网络攻击工具的软件
812登录之间的平均时间
814域管理员
816根用户
900流程图;900还指的是由图9流程图所图示或与图9流程图一致的横向移动检测方法
902将登录数据与流量数据相关以获取移动数据
904产生移动数据,例如,生成或填充表示节点集306的数据结构
906例如通过生成或填充链数据结构来构建表示至少一个移动214的链308
908将至少一个移动214表示为事件序列
910例如通过在屏幕126上显示、发出警报、发送电子邮件或文本或语音邮件来报告链
1002被破坏的节点
1004未被破坏的节点
1100流程图;1100也指的是由图11流程图(其并入了图9的步骤)所图示或与图11流程图一致的横向移动检测方法
1102检测横向移动
1106标识正在执行诸如登录或数据传送的动作的用户或账户(或两者)
1108例如通过扫描安全日志来标识登录事件
1110例如通过扫描流量日志来标识数据传送事件
1112设置检测参数,例如通过接口或作为默认值
1114检测参数,例如,短移动时间的截止值324、数据传送大小的容差、链中的计算机的最小数目、可疑协议列表(或非可疑协议列表,或两者)、以及要监测的网络130
1116设置检测响应,例如通过接口或作为默认值
1118检测响应,例如发出警报,将链中的计算机与其网络的其余部分隔离1128,将受监测的网络中的所有计算机与互联网或内部网络或两者隔离1128,获取1138链中的一个或多个计算机的存储器的取证映像,运行1134防病毒扫描,加强1130防渗漏机制,或以其他方式加固1140受监测的网络
1120比较移动时间,例如通过比较时间戳来计算移动持续时间,或者通过将移动持续时间与阈值或平均值相比较
1122比较数据传送大小,例如,以检查它们的差异是否多于指定容差(10%,除非另外设置1112)
1124比较协议选择,例如通过将流量数据与可疑协议列表相比较
1126比较凭证特权,例如通过对照根用户凭证特性的列表或其他定义来检查凭证
1128将一个或多个计算机与至少一些另外的联网通信隔离;隔离1128允许但不要求被隔离的计算机被完全物理隔离(air-gapped)
1130防止数据渗漏,例如通过扫描网络流量以寻找关键字;防止渗漏允许但不要求防止所有渗漏
1132将数据从网络渗漏到网络外部的位置
1134检查计算机,例如,通过针对恶意软件扫描或通过检查时间戳或校验和或散列或可能的数据篡改的其他标记
1136数据篡改,例如,数据值中的未经授权的更改,其可能作为损坏、删除、加密或其他更改而发生
1138获取存储器的取证映像,例如适合在相关司法管辖区或地点的后续程序中作为证据的映像
1140针对攻击强化计算机以,例如通过禁用或移除在网络攻击中使用的账户、服务、端口、凭证、漏洞或其他项
1142标识移动时间
1144报告移动时间
1146移动时间
1148标识移动协议
1150报告移动协议
1152标识传送大小差异
1154报告传送大小差异
1156传送大小差异
1158报告链范围
1160链范围,例如任何链属性712
1162例如从针对配置数据或已知默认设置的安全日志或改变管理日志确定链结束节点特性
1164链结束节点特性,例如节点上是什么种类的凭证,传送链是否在节点处结束
1166在本公开中讨论的未被分配某个其他附图标记的任何步骤
结论
简而言之,本文中的教导提供了在增强的横向移动检测系统210中操作的各种横向移动检测和区分功能性。网络安全性得到增强,特别关注包括针对管理员凭证338的横向移动搜索的自动攻击。联网计算机102(也称为“节点”)之间的横向移动214由检测工具210检测1102、并自动且高效地评估以区分716无害活动和网络攻击808。通过将关于登录302的日志206数据304、340和网络108流量204相关902,检测工具210产生904对应于个体移动214的网络节点集306。如果可以从与攻击方218倾向于使用的事件208序列330模式316相匹配的节点集306构建906链308,那么检测工具210将链308报告910为非法横向移动216候选者404。检测模式316定义了非法依据(illicitness ground)700,诸如数据传送318大小320的一致性706、登录间隔322的短暂704、可疑708协议314的使用、链308范围712、以及管理员332凭证338的存在或使用。检测响应1118然后可以隔离1128计算机102,针对恶意软件810或篡改1136检查1134它们,获取1138用于分析的取证映像806,加强1130渗漏1132过滤,并且以其他方式缓解正在进行或未来的网络攻击808。
实施例本身也被理解为包括或受益于经过测试的和适当的安全控制和隐私控制,诸如通用数据保护条例(GDPR),例如应该理解,应采取适当的措施来帮助防止通过将恶意软件注入或激活到SIEM软件中的计算系统误用。本文所教导的工具和技术的使用与此类控制的使用兼容。
尽管Microsoft技术在一些激励性示例中被使用,但是本文中的教导不限于在由Microsoft提供或管理的技术中使用。例如,在适当的许可下,本教导可以被体现在由其他云服务提供方所提供的软件或服务中。
尽管特定实施例在本文中被明确地图示和描述为过程、经配置的存储介质或系统,但是应当了解,对一种类型的实施例的讨论通常还扩展到其他实施例类型。例如,结合图9和图11对过程的描述还有助于描述经配置的存储介质,并且有助于描述如结合其他附图所讨论的系统和制造的技术效果和操作。并非必然地将一个实施例的限制解读到另一个实施例。特别地,过程不一定限于在讨论系统或制造(诸如经配置的存储器)时所呈现的数据结构和布置。
本领域技术人员将理解,实现细节可以与特定代码(诸如特定阈值、比较、特定种类的运行时或编程语言或架构、特定脚本或其他任务、以及特定计算环境)有关,并且因此不需要在每个实施例中都出现。本领域技术人员还将理解,在讨论细节时使用的程序标识符和一些其他术语是特定于实现的,并且因此不需要涉及每个实施例。尽管如此,尽管这里不一定要求它们存在,但是这样的细节可以通过提供上下文来帮助一些读者和/或可以图示本文所讨论的技术的许多可能实现中的一些实现。
通过适当注意本文所提供的项,包括技术过程、技术效果、技术机制和技术细节,这些项对所有要求保护的或可要求保护的实施例是说明性的而非全面的,技术人员将理解本文描述的本公开和实施例不针对技术领域之外的主题,也不针对诸如主要或原始原因或动机之类的其自身的任何想法,也不针对仅结果本身,也不针对心理过程或心理步骤,也不针对商业方法或流行的经济实践,也不针对仅组织人类活动的方法,也不针对自然法则本身,也不针对自然发生的事物或过程,也不针对生物或生物的一部分,也不针对数学公式本身,也不针对孤立的软件本身,也不针对仅传统计算机,也不针对任何完全无法察觉的东西或任何抽象的想法本身,也不针对无关紧要的后解决活动,也不针对完全在未指定的装置上实现的任何方法,也不针对无法产生有用和具体的结果的任何方法,也不针对所有使用领域的任何抢占,也不针对根据寻求或正被许可或强制实施专利保护的司法管辖区的法律而不符合专利保护的任何其他主题。
除非本文中明确指出了这种排除,否则本文中对具有一些特征X的实施例的引用以及本文中在其他地方对具有一些特征Y的实施例的引用并不从本公开中排除同时具有特征X和特征Y的实施例。所有可能的否定权利要求限制都在本公开的范围内,从某种意义上说,即使在本文任何示例中都未给出特定的排除,也可以将被陈述为实施例一部分的任何特征明确地从另一个实施例中的包括移除。术语“实施例”在本文中仅被用作“过程、系统、制品、经配置的计算机可读存储介质和/或以与适用法律一致的方式所应用的本文中的教导的其他示例”的更方便形式。因此,只要实施例与至少一个权利要求一致,则给定“实施例”可以包括本文所公开的特征的任何组合。
并非在每个实施例中都需要存在附图中所示的每个项。相反,实施例可以包含附图中未明确示出的(多个)项。尽管这里通过特定示例在文本和附图中图示了一些可能性,但是实施例可以脱离这些示例。例如,示例的特定技术效果或技术特征可以被省略、重命名、不同地分组、重复、以不同的方式在硬件和/或软件中被实例化、或者是出现在两个或更多个示例中的效果或特征的混合。在一些实施例中,在一个位置处示出的功能性也可以在不同的位置处被提供;本领域技术人员将认识到,在不必从被视为整体的交互模块集合中省略所期望的技术效果的情况下,可以在给定的实现中以各种方式定义功能性模块。由于空间限制或者为了方便起见,不同的步骤可以一起被示出在附图中的单个框中,但是仍然可以分开执行,例如,在方法的给定执行中,一个步骤可以在没有另一个步骤的情况下被执行。
全文中通过附图标记对附图进行了参考。在附图中或在文本中,与给定附图标记相关联的措词中的任何明显不一致之处都应被理解为简单地扩大了该附图标记所参考的范围。即使使用相同的附图标记,给定的附图标记的不同实例也可以指代不同的实施例。类似地,给定的附图标记可以被用来指代动词、名词和/或每个的对应实例,例如处理器110可以通过执行指令来处理110指令。
如本文中所使用的,诸如“一”、“一个”和“该”之类的术语包括所指示的项或步骤中的一个或多个。特别地,在权利要求中,对项的引用通常意味着存在至少一个这样的项,并且对步骤的引用意味着该步骤的至少一个实例被执行。类似地,在上下文允许的情况下,“是(is)”和其他单数动词形式应被理解为包含“是(are)”和其他复数形式的可能性,以避免语法错误或误解。
标题仅是为了方便;关于给定主题的信息可以在标题指示该主题的章节之外找到。
如提交的所有权利要求和摘要都是说明书的一部分。
就本文使用的任何术语暗示或以其他方式指代行业标准而言,并且就适用法律要求标识这种标准的特定版本而言,本公开应被理解为指代最新版本的该标准,其根据适用的专利法至少在本公开的最早优先权日以草案形式(最终形式优先,如果较新)已被公布。
尽管已在附图中示出并在上面描述了示例性实施例,但是对于本领域的普通技术人员来说明显的是,在不背离权利要求中阐述的原理和概念的情况下,可以进行许多修改并且这样的修改不必涵盖整个抽象概念。尽管以特定于结构特征和/或程序动作的语言描述了主题,但是应当理解,所附权利要求中限定的主题不必限于上面描述的特定技术特征或动作。在给定定义或示例中标识的每个方式或方面或技术效果不必在每个实施例中都存在或被利用。而是,所描述的特定特征和动作和效果作为示例而被公开,以在实现权利要求时考虑。
未涵盖整个抽象概念但落入权利要求的等效含义和范围内的所有变化都应被包含在法律允许的全部范围内。
Claims (15)
1.一种用于非法横向移动的自动检测的系统,所述系统包括:
存储器;
与所述存储器可操作地通信的处理器,所述处理器被配置为执行用于检测计算机的网络内的非法横向移动的步骤,所述步骤包括(a)至少将登录数据和网络流量数据相关,从而产生网络节点集,每个网络节点集标识从源计算机到目标计算机的登录事件,以及还标识向所述目标计算机的数据传送,(b)从所述节点集中的至少两个节点集构建链,所述链表示事件序列,所述事件序列包括:从第一计算机到第二计算机中的第二计算机登录,然后是将数据从所述第一计算机传送到所述第二计算机的第二计算机数据传送,然后是从所述第二计算机到第三计算机中的第三计算机登录,并且然后是将数据从所述第二计算机传送到所述第三计算机的第三计算机数据传送,其中从所述第一计算机被传送到所述第二计算机的数据的第二计算机数据传送大小和从所述第二计算机被传送到所述第三计算机的数据的第三计算机数据传送大小的差异不多于两个传送大小中的最大值的百分之十,以及(c)将所述链报告为非法横向移动候选者。
2.根据权利要求1所述的系统,其特征还在于以下列方式中的至少一种方式的短计算机到计算机移动时间的模式:
所述第二计算机登录与所述第三计算机登录之间的移动时间少于到所述第二计算机的另一登录与到所述第三计算机的后续登录之间的时间;
所述第二计算机登录与所述第三计算机登录之间的移动时间少于到所述网络的计算机中的至少一些登录之间的平均时间;
所述第二计算机登录与所述第三计算机登录之间的移动时间少于预定阈值;或者
所述第二计算机登录与所述第三计算机登录之间的移动时间少于五分钟。
3.根据权利要求1所述的系统,其特征还在于管理员登录的模式,其中在所述第二计算机登录期间,第一用户作为管理员从所述第一计算机登录到所述第二计算机中,并且在所述第三计算机登录期间,第二用户作为管理员从所述第二计算机登录到所述第三计算机中。
4.根据权利要求1所述的系统,其特征还在于一致的协议选择的模式,其中被用来将数据从所述第一计算机传送到所述第二计算机的到第二计算机协议和被用来将数据从所述第二计算机传送到所述第三计算机的到第三计算机协议是相同的协议。
5.根据权利要求1所述的系统,其中至少将登录数据和网络流量数据相关包括:将防火墙流量日志与所述网络的所述计算机中的至少一个计算机的安全日志相关。
6.根据权利要求1所述的系统,其中计算机的所述网络包括以下至少一项:云网络、局域网、软件定义的网络、客户端-服务器网络、或具有至少一个信任域的网络。
7.一种检测计算机网络内的非法横向移动的方法,包括自动地:
至少将登录数据和网络流量数据相关,从而产生网络节点集,每个节点集标识:针对到所述节点集的相应计算机的登录的至少两个登录时间、所述节点集的至少一个计算机上的至少一个管理员账户、以及所述节点集的计算机之间的至少一个数据传送;
从所述节点集中的至少两个节点集构建链,所述链表示事件序列,所述事件序列包括作为第一用户到所述第一计算机的登录,随后是向所述第一计算机的数据传送,随后是使用管理员凭证从所述第一计算机到第二计算机的登录;以及
将所述链报告为非法横向移动候选者。
8.根据权利要求7所述的方法,其中将所述链报告为非法横向移动候选者包括报告非法得分,并且其中所述方法还包括至少部分地基于以下所列的依据中的至少两个依据来计算所述非法得分:
到所述链中的相邻计算机的登录之间的移动时间;
被传送到所述链中的计算机的数据的传送大小与从该计算机被传送的数据的传送大小之间的差异;
如何将数据传送到所述链中的所述计算机中的至少两个计算机的至少两个协议选择;
指示所述链中有多于三个计算机的链长度指示;
共享至少一个计算机的多个链的存在;或者
至少部分地基于所述链中至少两个计算机之间的先前通信的异常性得分。
9.根据权利要求8所述的方法,其中计算所述非法得分至少部分地基于所列的所述依据中的至少三个依据。
10.根据权利要求7所述的方法,还包括对所述报告的以下响应中的至少一个响应:
隔离所述计算机中的一个计算机与所述网络的通信;
防止数据从所述计算机中的至少一个计算机的渗漏;
针对恶意软件检查所述计算机中的至少一个计算机;
针对数据完整性违规检查所述计算机中的至少一个计算机;
获取所述计算机中的至少一个计算机的易失性存储器的取证映像;
获取所述计算机中的至少一个计算机的非易失性存储器的取证映像;或者
针对网络攻击加固所述计算机中的至少一个计算机。
11.根据权利要求7所述的方法,其中报告包括报告以下至少一项:
到所述链中的相邻计算机的登录之间的移动时间;或者
被传送到所述链中的计算机的数据的传送大小与从所述计算机被传送的数据的传送大小之间的差异。
12.根据权利要求7所述的方法,其中构建所述链包括以下至少一项:
确定一致的计算机到计算机数据传送大小的模式在包含以下至少项的计算机处结束:域管理员凭证或根用户凭证;或者
确定所述链的结束处的计算机X不包含具有比被所述链中的先前计算机用来登录到所述计算机X的凭证更高权限的任何凭证。
13.根据权利要求7所述的方法,其中报告包括标识被用来将数据传送到所述链中的所述计算机中的至少两个计算机的特定数据协议。
14.根据权利要求7所述的方法,其中报告包括将以下至少一项报告为链范围:
所述链中有多于两个节点集的指示;
指示所述链中有多于三个的多少计算机的链长度;或者
指示已经构建了多少个链的链计数,每个链基于使用或提供管理员账户访问的登录序列。
15.根据权利要求7所述的方法,还包括从经训练的机器学习模型获取异常性得分,所述异常性得分至少部分地基于所述链中的至少两个计算机之间的先前通信。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/777,272 US11399039B2 (en) | 2020-01-30 | 2020-01-30 | Automatic detection of illicit lateral movement |
US16/777,272 | 2020-01-30 | ||
PCT/US2021/014053 WO2021154548A1 (en) | 2020-01-30 | 2021-01-20 | Automatic detection of illicit lateral movement |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115053223A true CN115053223A (zh) | 2022-09-13 |
Family
ID=74595422
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180011933.9A Pending CN115053223A (zh) | 2020-01-30 | 2021-01-20 | 非法横向移动的自动检测 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11399039B2 (zh) |
EP (1) | EP4097615A1 (zh) |
CN (1) | CN115053223A (zh) |
WO (1) | WO2021154548A1 (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11509674B1 (en) * | 2019-09-18 | 2022-11-22 | Rapid7, Inc. | Generating machine learning data in salient regions of a feature space |
US11853853B1 (en) | 2019-09-18 | 2023-12-26 | Rapid7, Inc. | Providing human-interpretable explanation for model-detected anomalies |
US11637842B2 (en) * | 2020-01-31 | 2023-04-25 | Hewlett Packard Enterprise Development Lp | Detection of security intrusion in a computing system |
US11824876B2 (en) * | 2020-01-31 | 2023-11-21 | Extreme Networks, Inc. | Online anomaly detection of vector embeddings |
US11757918B2 (en) * | 2020-02-18 | 2023-09-12 | Noblis, Inc. | Capability based insider threat detection |
US11734431B2 (en) * | 2020-04-27 | 2023-08-22 | Saudi Arabian Oil Company | Method and system for assessing effectiveness of cybersecurity controls in an OT environment |
US20210344690A1 (en) * | 2020-05-01 | 2021-11-04 | Amazon Technologies, Inc. | Distributed threat sensor analysis and correlation |
CN111862593B (zh) * | 2020-06-03 | 2022-04-01 | 阿波罗智联(北京)科技有限公司 | 交通类事件的上报方法、装置、电子设备及存储介质 |
US11792211B2 (en) * | 2021-01-07 | 2023-10-17 | Bank Of America Corporation | System for detecting and remediating computing system breaches using computing network traffic monitoring |
US20220377098A1 (en) * | 2021-05-21 | 2022-11-24 | Netskope, Inc. | Automatic detection of cloud-security features (adcsf) provided by saas applications |
CN115525793A (zh) * | 2021-06-24 | 2022-12-27 | 平头哥(上海)半导体技术有限公司 | 由计算机实现的方法、系统及存储介质 |
US11763042B2 (en) * | 2021-06-29 | 2023-09-19 | Teruten, Inc | Computer program for preventing information spill displayed on display device and security service using the same |
US11914709B2 (en) * | 2021-07-20 | 2024-02-27 | Bank Of America Corporation | Hybrid machine learning and knowledge graph approach for estimating and mitigating the spread of malicious software |
US11575696B1 (en) * | 2021-09-20 | 2023-02-07 | Normalyze, Inc. | Cloud data attack detection based on cloud security posture and resource network path tracing |
US11888870B2 (en) * | 2021-10-04 | 2024-01-30 | Microsoft Technology Licensing, Llc | Multitenant sharing anomaly cyberattack campaign detection |
US11777823B1 (en) * | 2021-11-24 | 2023-10-03 | Amazon Technologies, Inc. | Metric anomaly detection across high-scale data |
US20230247031A1 (en) * | 2022-01-31 | 2023-08-03 | Salesforce.Com, Inc. | Detection of Multi-Killchain Alerts |
EP4254866A1 (en) * | 2022-04-01 | 2023-10-04 | Vectra AI, Inc. | Method, product, and system for generating detection signatures based on attack paths in a computer network identified using a software representation that embodies network configuration and policy data for security management using detection signature templates |
US20230328084A1 (en) * | 2022-04-12 | 2023-10-12 | Micro Focus Llc | Systems and methods for near real-time risk score generation |
US20240031391A1 (en) * | 2022-07-22 | 2024-01-25 | Semperis Technologies Inc. (US) | Attack path monitoring and risk mitigation in identity systems |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7475420B1 (en) * | 2005-01-31 | 2009-01-06 | Symantec Corporation | Detecting network proxies through observation of symmetric relationships |
US9591006B2 (en) | 2014-09-18 | 2017-03-07 | Microsoft Technology Licensing, Llc | Lateral movement detection |
US9699205B2 (en) * | 2015-08-31 | 2017-07-04 | Splunk Inc. | Network security system |
US10320814B2 (en) * | 2015-10-02 | 2019-06-11 | Trend Micro Incorporated | Detection of advanced persistent threat attack on a private computer network |
US10462169B2 (en) * | 2017-04-29 | 2019-10-29 | Splunk Inc. | Lateral movement detection through graph-based candidate selection |
US20180359272A1 (en) * | 2017-06-12 | 2018-12-13 | ARIM Technologies Pte Ltd. | Next-generation enhanced comprehensive cybersecurity platform with endpoint protection and centralized management |
CN115643572A (zh) * | 2018-03-27 | 2023-01-24 | 华为技术有限公司 | 在局域网内共享数据的方法及电子设备 |
US11244043B2 (en) * | 2019-05-30 | 2022-02-08 | Micro Focus Llc | Aggregating anomaly scores from anomaly detectors |
-
2020
- 2020-01-30 US US16/777,272 patent/US11399039B2/en active Active
-
2021
- 2021-01-20 EP EP21705350.3A patent/EP4097615A1/en active Pending
- 2021-01-20 WO PCT/US2021/014053 patent/WO2021154548A1/en unknown
- 2021-01-20 CN CN202180011933.9A patent/CN115053223A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4097615A1 (en) | 2022-12-07 |
US11399039B2 (en) | 2022-07-26 |
WO2021154548A1 (en) | 2021-08-05 |
US20210243208A1 (en) | 2021-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11399039B2 (en) | Automatic detection of illicit lateral movement | |
US11936664B2 (en) | Identity attack detection and blocking | |
US11405400B2 (en) | Hardening based on access capability exercise sufficiency | |
US11106789B2 (en) | Dynamic cybersecurity detection of sequence anomalies | |
EP3841502B1 (en) | Enhancing cybersecurity and operational monitoring with alert confidence assignments | |
US11483327B2 (en) | Collaborative filtering anomaly detection explainability | |
US11783062B2 (en) | Risk-based access to computing environment secrets | |
US20220345457A1 (en) | Anomaly-based mitigation of access request risk | |
US11074341B2 (en) | Dynamic cybersecurity peer identification using groups | |
US11888870B2 (en) | Multitenant sharing anomaly cyberattack campaign detection | |
US20210306375A1 (en) | Live forensic browsing of urls | |
US11416613B2 (en) | Attack detection through exposure of command abuse | |
US11575692B2 (en) | Identity spray attack detection with adaptive classification | |
US20230199025A1 (en) | Account classification using a trained model and sign-in data | |
US11973796B2 (en) | Dangling domain detection and access mitigation | |
Jolak et al. | CONSERVE: A framework for the selection of techniques for monitoring containers security | |
US20230195863A1 (en) | Application identity account compromise detection | |
Efe | Usage of artificial intelligence to improve secure software development | |
US20230401332A1 (en) | Controlling application access to sensitive data | |
Costa | Security Threats Management in Android Systems |
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 |