CN116648939A - 用于检测异常接入行为的方法和网络节点 - Google Patents
用于检测异常接入行为的方法和网络节点 Download PDFInfo
- Publication number
- CN116648939A CN116648939A CN202080108285.4A CN202080108285A CN116648939A CN 116648939 A CN116648939 A CN 116648939A CN 202080108285 A CN202080108285 A CN 202080108285A CN 116648939 A CN116648939 A CN 116648939A
- Authority
- CN
- China
- Prior art keywords
- session
- access
- command
- node
- user
- 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
- 238000000034 method Methods 0.000 title claims abstract description 115
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 105
- 238000004891 communication Methods 0.000 claims abstract description 32
- 238000004590 computer program Methods 0.000 claims abstract description 12
- 230000006399 behavior Effects 0.000 claims description 120
- 238000001514 detection method Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 26
- 239000013598 vector Substances 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 8
- 230000004931 aggregating effect Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 16
- 230000002776 aggregation Effects 0.000 description 10
- 238000004220 aggregation Methods 0.000 description 10
- 238000010801 machine learning Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000012544 monitoring process Methods 0.000 description 4
- 230000002547 anomalous effect Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000011664 signaling Effects 0.000 description 3
- 241000282412 Homo Species 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013145 classification model Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- XFBVBWWRPKNWHW-UHFFFAOYSA-N etodolac Chemical compound C1COC(CC)(CC(O)=O)C2=N[C]3C(CC)=CC=CC3=C21 XFBVBWWRPKNWHW-UHFFFAOYSA-N 0.000 description 1
- 229960005293 etodolac Drugs 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/1425—Traffic logging, e.g. anomaly 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/121—Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开的实施例提供了一种用于检测通信网络(100)中的多个网络节点中的异常接入行为的方法、网络节点和计算机程序产品。该方法在通信网络中的网络节点(10)中执行。该方法包括获取(S11)与通信网络(100)中的多个网络节点(10a‑10n)相关联的会话日志。该方法包括通过评估与多个网络节点(10a‑10n)相关联的会话日志来提取(S12)每个会话的会话特征。此外,该方法包括基于所提取的会话特征来确定(S13)与每个会话相关联的接入行为,与每个会话相关联的接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示。该方法还包括通过分析所确定的接入行为来检测(S14)异常接入行为。
Description
技术领域
本公开涉及异常接入行为的检测。更具体地,涉及用于检测通信网络的多个网络节点中的异常接入行为的方法、网络节点和计算机程序产品。
背景技术
已经开发了不同的机制来检测各种网络安全威胁。安全威胁可以源自诸如黑客或恶意内部人员等的人类的恶意活动和/或源自恶意代码的活动。
这些恶意活动可能对网络的软件或硬件或其用户造成损害。恶意活动可以包括对网络资源和数据的未授权访问或随后的未许可使用。网络管理员例如通过搜索异常的行为模式来寻求检测此类活动。
基于终端会话的接入代理的现有机制实现了对基础设施的受控接入。远程管理员//用户通常需要这种接入。终端接入代理机制使得终端(即,网络节点)能够对用户接入。这种基础设施通常用于受管理的服务、网络操作和网络管理期间,以使用终端会话来执行管理和其他类似任务,其中用户在终端中输入提示,其使用可在适用时执行的各种命令来提供接入。取决于基础设施、应用和其使用类型,所执行的这种操作和所输入的命令可以变化并且可以是上下文相关的。
一些受管理的服务操作包括例如在多个客户网络中管理收费解决方案,其中管理员为了远程管理目的而接入收费解决方案节点。例如,收费解决方案可以包含终端会话日志的基于“屏幕”实用程序的捕获。这些终端会话日志是高度非结构化的,并且这样的终端会话日志包含用于有效操作的大量且必要的监控信息。
获取会话日志或用户行为数据的现有系统大多使用结构化或标准化的信息集。现有系统不接受以按照用户登录为基础记录的终端会话日志,并且终端会话的内容在句法和语义上是不同的。
对每个这样的终端会话日志进行常规扫描以理解反常、异常、可疑、违规或罕见的状况以及威胁行为是一项艰巨的任务,并且使用基于规则的系统来执行对终端会话日志的监控,即,通过针对每个部署中不期望的已知命令的模式进行匹配来执行。每个部署可以具有其定制列表,对该定制列表进行核查以标记作为可疑活动的行为。
此外,终端会话日志的内容可能由于不同的部署(即,节点中运行的会导致会话日志的异构性的不同应用)而变化。其他因素包括操作系统、所使用的外壳、系统配置、特定于某节点的命令。由于这种多样性质,终端会话日志可能具有多样的变化,这使得难以将其抽象为单组模式/规则,进而使得很难理解终端会话日志。
因此,在该技术领域中需要改进,尤其需要新的机制来改进异常接入行为的检测,以增强网络节点的安全性。
发明内容
因此,本公开的目的是提供一种用于检测接入行为的方法、计算机程序产品和网络节点,其寻求减轻、缓和或消除当前已知解决方案的全部或至少一些上述缺点。
通过所附权利要求中限定的方法、计算机程序产品和设备来实现这个和其他目的。术语“示例性”在本上下文中将被理解为用作实例、示例或说明。
根据本公开的第一方面,提供了一种用于检测通信网络中的多个网络节点中的异常接入行为的方法。该方法在至少一个网络节点中执行。该方法包括获取与通信网络中的多个网络节点相关联的会话日志。该方法包括通过评估与多个网络节点相关联的会话日志来提取每个会话的会话特征。此外,该方法包括基于所提取的会话特征确定与每个会话相关联的接入行为。与每个会话相关联的接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示。该方法还包括通过分析所确定的接入行为来检测异常接入行为。
在一些实施例中,通过评估与多个网络节点相关联的会话日志来提取每个会话的会话特征的步骤包括获取输入数据集,每个数据集包括命令行集、非命令行集和指示命令类型、命令类别、安全命令和风险命令的预定义命令集中的一个或多个。此外,该方法包括使用所获取的输入数据集和预定义命令集来评估每个会话日志中的命令行集。
在一些实施例中,基于所获取的输入数据集和预定义命令集来评估每个会话日志中的命令行集的步骤包括基于所获取的包括命令行集、非命令行集和预定义命令集的输入数据集来确定每个会话日志中的命令行集。此外,该方法包括提取与每个会话日志中所确定的命令行集相关联的特征。
在一些实施例中,确定每个会话日志中的命令行集的步骤包括从多个会话日志中的每个会话日志中提取多个行。该方法包括将在会话日志的每行中识别的一个或多个特殊字符和空格转换为等效的字符串矢量。此外,该方法包括使用用所获取的输入数据集训练的模型来确定每个会话日志中的命令行集。
在一些实施例中,确定包括与每个会话相关联的会话特性的表示的接入行为的步骤包括:获取每个会话的所提取的会话特征;以及从每个会话的会话特征中识别命令行集中的文本特征。此外,该方法包括使用矢量化器将命令行集中的所识别的文本特征转化为等效矢量。此外,该方法包括为每个会话的命令行集创建数值表示,其中通过应用命令行集中的每个命令行的特征矢量和所转化的文本特征来创建该数值表示。
在一些实施例中,基于所提取的多个会话特征来确定包括与每个会话相关联的用户接入特性的表示的接入行为的步骤包括:获取每个用户的所提取的会话特征;以及基于每个用户的会话数量、每个用户接入的网络节点数量、由每个用户执行的风险命令数量和每个用户的会话持续时间中的一个或多个从所提取的会话特征中确定用户的每个会话的用户接入模式。此外,该方法包括基于每个会话的命令行和每个会话的命令类别中的一个或多个从所提取的会话特征中确定用户的每个会话的用户会话模式。此外,该方法包括通过组合所确定的用户接入模式和所确定的用户会话模式来确定用户接入特性。
在一些实施例中,基于所提取的多个会话特征来确定包括与每个会话相关联的网络节点接入特性的表示的接入行为的步骤包括:获取每个节点的所提取的会话特征;基于每个节点的会话数量、每个节点接入的用户数量、每个节点执行的风险命令数量和每个节点的会话持续时间中的一个或多个从会话特征中确定节点的每个会话的节点接入模式。该方法还包括基于每个会话的命令行和每个会话的命令类别中的一个或多个从会话特征中确定节点的每个会话的节点会话模式。此外,该方法包括通过组合所确定的节点接入模式和所确定的节点会话模式来确定节点接入特性。
在一些实施例中,基于所提取的多个会话特征来确定包括与每个会话相关联的命令使用特性的表示的接入行为的步骤包括获取每个会话的所提取的会话特征。该方法包括从每个会话的多个会话特征中提取所执行的风险命令数量和安全命令数量中的一个或多个。该方法还包括基于所提取的每个会话执行的风险命令数量和安全命令数量中的一个或多个来确定命令使用模式。
在一些实施例中,通过分析所确定的接入行为来检测异常接入行为的步骤包括获取会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示。该方法包括通过对所获取的会话特性应用异常检测来检测异常会话。此外,该方法包括通过对所获取的用户接入特性应用异常检测来检测异常用户。该方法还包括通过对所获取的网络节点接入特性应用异常检测来检测异常网络节点。该方法包括通过分析每个会话执行的风险命令数量和安全命令数量来从所获取的命令使用特性中检测异常命令。
在一些实施例中,该方法还包括使得显示检测到的指示异常会话、异常用户、异常网络节点和异常命令中的一个或多个的异常接入行为。
根据本公开的第二方面,一种用于检测通信网络中的多个网络节点中的异常接入行为的网络节点。该网络节点包括处理电路和存储指令的存储器,该指令当由处理电路执行时使该网络节点:获取与通信网络中的多个网络节点相关联的会话日志;基于所提取的多个会话特征确定与每个会话相关联的接入行为,其中与每个会话相关联的接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示;通过分析所确定的接入行为来检测异常接入行为。
根据本公开的第三方面,提供了一种包括非暂时性计算机可读介质的计算机程序产品,其上具有包括程序指令的计算机程序。该计算机程序可加载到数据处理单元中,并且被配置为当该计算机程序由数据处理单元运行时使得执行根据第一方面的方法。
一些实施例的优点在于,提供了用于检测通信网络中的多个网络节点中的异常接入行为的备选和/或改进的方法。
一些实施例的优点在于,所提出的方法允许针对审计/检查来监控列入候选名单的会话,以检测违规/异常/罕见/可疑的因素。所提出的方法可用于通过产生列入候选名单的会话特征和/或感兴趣的洞察来显著地减少人工工作并且提高审计效率。这样的洞察是难以通过人工过程检索的终端会话日志中的违规/异常或罕见的状况。这些洞察表示与典型行为不同的用户会话/行为。
此外,所提出的方法可用于减少或避免对全部会话日志量的完全扫描的需要,这是非常繁重的劳动和人工工作。所提出的方法可用于基于在操作中检测到的违规状况来执行性能分析或识别改进区域。
另外,所提出的方法可用于在终端会话日志中使用机器学习技术以较少的监督来识别异常或违规状况,从而消除在配置基于规则的匹配系统中对繁重的人工工作的需要。
在一些实施例中,所提出的方法可用于识别会话中的行是否是命令行。
在一些实施例中,所提出的方法可用于创建命令行和会话的嵌入,以创建能够应用ML方法来检测异常或违规状况的表示。
所提出的方法允许在会话级别(即,异常会话的数量)、用户级别(即,异常用户的数量)、节点级别(即,异常节点的数量)和命令级别(即,异常命令的数量)上检测异常或违规状况。
在一些实施例中,所提出的方法允许用本地创建的数据集以及可定制的数据集来存储不同的输入,例如安全命令、风险命令和命令类别,这使得能够以增强的特征工程来表征终端会话。本地创建的数据集实现了对命令行或非命令行的自动分类,这实现了结果的上下文化,并且为操作员/管理员提供了更有意义的特征,以将检测转换为可操作的洞察。
有利地,所提出的方法可容易地在网络节点或位于云环境中的远程计算机或云网络中的远程服务器中实现。此外,在受管理的服务的情况下,可使用软件即服务模型来实现所提出的方法。
附图说明
如附图所示,从以下对示例实施例的更具体的描述中,前述内容将是显而易见的,在附图中,相同的附图标记在不同视图中指代相同的部分。附图不必按比例绘制,而是将重点放在示出示例实施例上。
图1A和1B公开了用于检测异常接入行为的示例环境;
图2是示出用于检测异常接入行为的网络节点的功能模块的示例示意图;
图3是示出用于检测异常接入行为的示例方法步骤的流程图;
图4是示出每个会话的会话特征提取中涉及的功能模块的示例示意图;
图5A-5C是示出用于提取每个会话的会话特征的示例方法步骤的流程图;
图6A-6B是示出用于聚合每个会话的会话特性的功能模块的示例示意图;
图7是示出用于聚合每个会话的会话特性的步骤序列的示例序列图;
图8是示出用于聚合用户接入特性的功能模块的示例示意图;
图9是示出用于聚合用户接入特性的各种示例方法步骤的流程图;
图10是示出用于聚合用户接入特性的步骤序列的示例序列图;
图11是示出用于聚合节点接入特性的功能模块的示例示意图;
图12是示出用于聚合节点接入特性的各种示例方法步骤的流程图;
图13是示出用于聚合节点接入特性的步骤序列的示例序列图;
图14是示出用于确定命令使用特性的示例方法步骤的流程图;
图15是示出用于基于所确定的接入行为来检测异常接入行为的示例方法步骤的流程图;
图16是示出图1A的网络节点的功能模块的示例示意图;以及
图17公开了示例计算环境。
具体实施方式
在下文中将参考附图更全面地描述本发明的各方面。然而,本文所公开的装置和方法可以以许多不同的形式实现,并且不应被解释为限于本文所阐述的方面。附图中相同的标记始终指代相同的元件。
本文所使用的术语仅用于描述本公开的特定方面的目的,并且不旨在限制本发明。应当强调的是,当在本说明书中使用时,术语“包括/包含”用于指定所述特征、整数、步骤或组件的存在,但是不排除一个或多个其他特征、整数、步骤、组件或它们的组的存在或添加。如本文所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文另外明确指出。
在下文中将参考附图更全面地描述和例示本公开的实施例。然而,本文所公开的解决方案可以以许多不同的形式实现,并且不应被解释为限于本文所阐述的实施例。
将理解的是,当根据方法来描述本公开时,其还可以体现在一个或多个处理器以及耦合到该一个或多个处理器的一个或多个存储器中,其中该一个或多个存储器存储一个或多个程序,该一个或多个程序当由一个或多个处理器执行时执行本文所公开的步骤、服务和功能。
在示例性实施例的以下描述中,相同的附图标记表示相同或相似的组件。
图1A和1B公开了用于检测异常接入行为的示例环境。该示例环境包括通信网络100,该通信网络100表示包括网络节点10a-10d的联网计算环境,并且通信网络100中的一个或多个网络节点10a-10d可以通过合适的通信手段彼此通信地耦合,该合适的通信手段可以包括因特网和一个或多个有线或无线网络(例如,基于因特网协议(IP)的局域网(LAN)、城域网(MAN)、广域网(WAN)、无线LAN(WLAN)、诸如无线保真(Wi-Fi)之类的网络和/或蜂窝电信网络(例如,全球移动通信系统(GSM)网络、3G网络或长期演进(LTE)网络)。网络节点10、10a-10d可以例如是个人计算机、服务器、笔记本计算机或允许用户访问通信网络100内的信息的任何其他形式的计算系统或设备。虽然在图1A中仅示出了网络节点10a-10d,但是在通信网络100中可以存在任何数量的网络节点10a-10n(未示出)。尽管可以存在任何数量的网络节点10a-10n(图1A中未示出),但是仅以实现用于检测通信网络100中的多个网络节点10a-10n中的异常接入行为的各种步骤的网络节点10来解释本公开的各种实施例。
此外,网络节点10例如可以是通信网络100或云网络中的远程计算机或服务器。网络节点10获取与网络节点10a-10d相关联的会话日志。网络节点10评估从网络节点10a-10d获取的会话日志,以提取每个会话的各种会话特征。网络节点10可以基于所提取的会话特征来确定与每个会话相关联的接入行为。例如,与每个会话相关联的接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示。此外,网络节点10通过分析所确定的接入行为来确定异常接入行为。所确定的异常接入行为可以被呈现给用户或网络管理员,包括可创建多个网络节点10a-10d中检测到的异常状况的可视化的图形用户界面(GUI)。
网络节点10可以实现用于检测多个网络节点10a-10d中的异常接入行为的安全平台。例如,该安全平台包括会话分析功能30,其实现用于检测多个网络节点10a-10d中的异常接入行为的一个或多个步骤,如图1B所示。会话分析功能30采用各种技术和机制来检测通信网络100中的异常和威胁。会话分析功能30是“大数据”驱动的并且采用机器学习来执行安全分析,会话分析功能30执行用户/实体行为分析来检测与安全相关的异常和威胁。
采用机器学习的会话分析功能30获取各种输入,包括但不限于会话日志11、异常反馈12、人工智能、对命令行或非命令行进行分类的AI模型13、命令类别14、风险命令15和安全命令16。此外,会话分析功能30基于所获取的输入确定指示异常会话、异常用户、异常节点和异常命令的异常接入行为。
图2是示出用于检测异常接入行为的网络节点10的功能模块的示例示意图。如上所述,网络节点10实现包括会话分析功能30的安全平台,会话分析功能30实现用于检测多个网络节点10a-10d中的异常接入行为的一个或多个步骤。会话分析功能30获取作为会话日志11的输入。会话分析功能30包括各种功能模块,诸如会话特性聚合器34、特征矢量化器36、用户接入特性聚合器38、节点接入特性聚合器40和命令特性聚合器42。此外,会话分析功能30对所获取的会话特性、用户接入特性、节点接入特性和命令特性采用基于机器学习(ML)的模型以分别检测异常会话、异常用户、异常节点和异常命令。会话分析功能30的各种功能模块的操作将在说明书的后面部分中更详细地讨论。
图3是示出用于检测异常接入行为的示例方法300的流程图。如上所述,网络节点10实现用于检测通信网络中的多个网络节点中的异常接入行为的方法300。在步骤S11,方法300包括获取与通信网络中的多个网络节点相关联的会话日志。例如,网络节点10在预先配置的历史时期内获取与多个网络节点10a-10n相关联的会话日志11。从多个网络节点10a-10n获取的会话日志11包括非结构化数据、模式、包括控制、转义、颜色、声音字符的各种类型的字符、命令行和非命令行等。
在步骤S12,方法300包括通过评估与多个网络节点10a-10n相关联的会话日志来提取每个会话的会话特征。每个会话由许多特性信息组成。一些会话特征可从会话信息中获得,如正在接入的用户、被接入的节点、开始时间、结束时间。每个会话都具有通过评估会话日志而提取的许多特征。
在一个实施例中,通过获取输入数据集来提取会话特征,其中每个数据集包括命令行集、非命令行集和指示命令类型、命令类别、安全命令和风险命令的预定义命令集中的一个或多个,并且使用所获取的输入数据集和预定义命令集来评估每个会话日志中的命令行集。
在一个实施例中,命令行集的评估包括:基于所获取的包括命令行集、非命令行集和预定义命令集的输入数据集来确定每个会话日志中的命令行集;以及提取与每个会话日志中所确定的命令行集相关联的特征。例如,可以通过以下步骤来确定每个会话日志中的命令行集:从多个会话日志中的每个会话日志中提取多个行;将在会话日志的每行中识别的一个或多个特殊字符和空格转换为等效的字符串矢量;以及使用用所获取的输入数据集训练的模型来确定每个会话日志中的命令行集。
在步骤S13,方法300包括基于所提取的会话特征来确定与每个会话相关联的接入行为。例如,所确定的接入行为包括指示会话特性、用户接入特性、节点接入特性和命令使用特性中的一个或多个的表示。确定与每个会话相关联的接入行为以获取会话特性,并且聚合所获取的会话特性以确定聚合的会话特性。确定与每个用户相关联的接入行为以获取用户接入特性,并且聚合所获取的用户特性以确定聚合的用户特性。确定与每个节点相关联的接入行为以获取节点接入特性,并且聚合所获取的节点特性以确定聚合的节点特性。此外,确定包括与每个会话相关联的命令使用特性的表示的接入行为以获取命令使用特性。
在步骤S14,方法300包括通过分析所确定的接入行为来检测异常接入行为。为了从所确定的接入行为中检测异常接入行为,获取会话特性、用户接入特性、网络节点接入特性和命令使用特性的表示。使用ML模型来分析会话特性、用户接入特性、网络节点接入特性和命令使用特性的表示,以确定异常会话、异常用户、异常节点和异常命令。例如,可以通过对所获取的会话特性应用异常检测来检测异常会话。可以通过对所获取的用户接入特性应用异常检测来检测异常用户。可以通过对所获取的网络节点接入特性应用异常检测来检测异常节点。此外,可以通过分析每个会话执行的风险命令数量和安全命令数量以及诸如命令所被使用的频率(如频繁命令或罕见命令)之类的参数来从所获取的命令使用特性中检测异常命令。
在步骤S15,方法300包括使得显示检测到的异常接入行为。可以使用能够创建检测到的异常状况的可视化的GUI来将检测到的异常接入行为呈现给用户或网络管理员。
图4是示出每个会话的会话特征提取中涉及的功能模块的示例示意图。会话特征提取器32可以被配置为通过评估与多个网络节点10a-10n相关联的会话日志11来提取每个会话的会话特征。例如,会话特征提取器32可以被配置为提取会话的各种特征,包括例如会话中的所有行的行数、被推断为命令行的行上的命令行特征,例如命令行数、来自会话数据(即,会话用户、会话开始时间、会话结束时间、节点id(IP)等)的字符串或可读命令行表示属性。
例如,会话特征提取器32可以被配置为接收会话日志11和来自推理引擎17的输入,推理引擎17被配置用于使用命令行数据集13a和非命令行数据集13b通过经训练的AI模型来针对终端会话日志中的每行推理是否是命令行。此外,会话特征提取器32可以被配置为从扩充引擎18获得输入,扩充引擎18评估命令行集以确定会话中涉及的命令类别的性质或类型、风险命令数量和安全命令数量等作为会话特征。例如,扩充引擎18可以被配置为执行“命令类别”的扩充,其包括将命令确定为文件管理命令或用户管控/管理、网络配置、硬件配置、专用命令等。这些类别表现出在会话中使用的命令的真实性质。提取这样的扩充特征用于预先确定的(例如,偏好)输入,如风险命令和安全命令,从而为特征表示提供更好的上下文。
在一些实施例中,推理引擎17可以被配置用于通过对终端会话日志中的命令行进行增强推理的AI分类模型来推理终端会话日志中的命令行或非命令行。
总体而言,命令行通常是自由形式的文本结构。因此,通过人类或网络运营商识别命令行比识别非命令行容易。因此,对命令行的推理可以被公式化为AI分类模型,以实现推理引擎17对命令行的自动检测。传统上,可以使用基于正则表达式的解决方案,然而,给定终端会话日志的数据集,由于需要编码的模式的无限集合,对终端会话日志进行人工检查是失败的。变化及其可能性使它们难以构建完整的处理器。使用复杂的包含/排除结构来克服上述问题,这使得该系统非常复杂、不可维护并且仍然不完整,而它仍然容易被人类理解。因此,推理引擎17引入基于AI/神经网络的组件来对行进行分类,以确定该行是否是命令行。由于上述限制,基于AI的模型的使用减少了对正则表达式的依赖性。
在一个示例中,创建包括命令行集13a和非命令行集13b的大数据集,这有助于相对于非命令行来识别命令行,并且利用具有命令行集13a和非命令行集13b的数据集,创建推理引擎17,其中推理模型像人类一样行动并且可以在会话特征提取期间识别以获取命令行。推理引擎17可以实现终端会话行令牌化器和命令行分类器。
为了对终端会话日志中的命令行进行分类,实现终端会话行令牌化器的推理引擎17可以被配置为执行如本文所述的一些步骤。
例如,终端会话日志中的单行的特征在于嵌入层,该嵌入层在命令行中寻址令牌,这与典型的NLP语言处理不同,后者忽略了许多特殊字符,即,@、/、:、#、$、>和<等。由于这些字符有助于得出一行是否是命令行的结论,因此推理引擎17可以被配置为适配令牌化方案。
步骤1:对于‘终端会话日志列表’中的每个日志
步骤2:对于“日志”中的每行
步骤3:如下所示,将特殊字符替换为其替代喻义类别
@→“SYM_ATTHERATE”
$→“SYM_DOLLAR”
:→“SYM_COLON”
-→“SYM_HYPEN”
等等……。
使得这些特殊字符也具有特征嵌入。
步骤4:基于空格令牌化命令行并且将其转换为字符串矢量
下一步:使用该预处理的数据馈送到推理引擎17中,以进行命令行的分类。
应当注意,数据集13a和13b经过步骤3和4,因为对于命令行分类,推理引擎17的训练阶段不需要会话的上下文。
作为神经网络的受监督模型19通过数据集13a和13b进行训练,以实现推理引擎17的自动推理。
在一个示例中,受监督模型19学习命令行的特性,其包括以下特性:
a)命令行通常是语法性质的,并且取决于操作系统和外壳接口等存在许多语法变体。
b)命令提示签名,该签名是变化的,但是这种结构出现在一行的开头。
c)命令之后可以跟随多个自变量值。
d)命令可能很长或太短,或者可能如在机器中的“外壳”能够支持的情况下具有爆发性。
e)可能存在大量空白、看起来像命令行的注释行、由用户执行的特殊操作导致命令的堆积而非命令行等变体。
受监督模型19从数据集13a和13b中学习潜在特征,以由推理引擎17进行推理。这些特性表明,网络基础设施应当包括处理关于所涉及的单词/符号/令牌/提示签名/命令/参数的序列等的先验知识。受监督模型19使用具有嵌入层的递归神经网络架构,这些嵌入层可用于对来自终端会话日志的行是否是命令行进行分类。
在一些示例中,受监督模型19确定概率得分,该概率得分指示受监督模型19可以基于受监督模型19所学习的先前模式预测给定行是否是命令行的准确性。对于尚未被正确分类的命令,可以存在基于手动提供的输入的到机器学习模型的反馈回路,基于该反馈回路,受监督模型19被重新训练以对一行是否是命令行进行分类。
因此,会话特征提取器32可以被配置为基于所获取的会话日志以及从推理引擎17和扩充引擎18获得的输入来提取按照会话的特征。
图5A-5C是示出用于提取每个会话的会话特征的示例方法500的流程图。如图3中所述的用于通过评估与多个网络节点10a-10n相关联的会话日志来提取每个会话的会话特征的步骤S12包括如方法500中所述的各种示例步骤。最初,在步骤S22,方法500包括获取输入数据集,其中每个数据集包括命令行集、非命令行集和预定义命令集。
在一个示例中,获取命令行数据集13a、非命令行数据集13b和包括命令和类别14、风险命令15和安全命令16的预定义命令集作为用于每个会话的会话特征提取的输入数据集。
在步骤26,方法500包括使用所获取的数据集13a和13b以及预定义命令集14-16来评估每个会话日志中的命令行集。基于所获取的输入数据集13a、13b和预定义命令集14-16来评估每个会话日志中的命令行集,以提取每个会话的各种会话特征。
如图5A中所述的用于使用所获取的数据集13a和13b以及预定义命令集14-16来评估每个会话日志中的命令行集的步骤S26包括如图5B中所述的各种步骤。
在一个示例中,在步骤S36,基于所获取的数据集13a和13b以及预定义命令集14-16来确定每个会话中的命令行集。此外,在步骤S38,提取与每个会话日志中所确定的命令行集相关联的会话特征,如图5B所示。
在一个示例中,在步骤S32,基于所获取的数据集13a和预定义命令集13b来确定每个会话中的命令行集包括从多个会话日志中的每个会话日志中提取多个行。此外,在步骤S33,将在会话日志的每行中识别的一个或多个特殊字符和空格转换为等效的字符串矢量。在步骤S35,使用例如具有所获取的输入数据集13a和13b的AI训练模型来确定每个会话日志中的命令行集,如图5C所示。应当注意,使用步骤S32-S35执行的会话特征提取包括针对每个会话或按照会话的特征提取的特征。
图6A-6B是示出用于聚合每个会话的会话特性的功能模块的示例示意图。如图6A所示,聚合每个会话的所提取的会话特征(即,按照会话的特征)以确定聚合的会话特性。例如,会话特性聚合器34可以被配置为聚合按照会话的特征以确定聚合的会话特性。会话特性聚合器34可以被配置为获取由会话特征提取器32提取的按照会话的特征,如图4中所述。除了由会话特征提取器32获取的特征/特性之外,会话特性聚合器34还将会话数据聚合为更紧密的表示,使得所聚合的会话特性可被应用于或经受机器学习算法以检测异常或违规状况。
因此,每个会话的会话特性聚合获得会话特性,并且在按照会话的基础上,聚合会话特性以创建会话特性的完整表示。为了创建会话数据的完整表示(即,数值特征和其中存在文本特征的嵌入),会话特性聚合包括使用预定义的文本特征(即,语料库数据)并且将来自命令行的文本特征转化为特征嵌入60。嵌入60表示新空间中的变换信息(即,数值表示),其是应用机器学习技术以检测异常状况的有效表不。
在一个实施例中,特征矢量化器36处理命令行,该命令行通常包括后面跟随实际命令的提示结构。有时,可能涉及很长的命令。命令可以由小字符串或大字符串组成,并且命令行可以包含由“;”或类似的其他分隔符分隔的多个命令。
在一些实施例中,特征矢量化器36可以实现用于确定命令行特定分隔符的合适的机制以及令牌化,以创建适当的矢量(即,区分一个命令行与其他命令行的特征嵌入)。
在其他实施例中,特征矢量化器36可以实现其他技术,如CountVectorizer、TfIdfVectorizer等,以创建特征嵌入。
因此,针对每个会话获取聚合的会话特性,并且在按照会话的基础上,聚合会话特性以创建会话特性的完整表示。
在一个实施例中,创建嵌入,并且其可以用于终端会话命令行,如图6B所示。
例如,一次一种类型的嵌入,即,可以使用矢量化器36a(例如,CommandLineVectorizer)或矢量化器36b或矢量化器36c,其创建与命令行Cv f1、Cv f2…Cv f4相关联的特征。
在另一个示例中,可以使用技术的集合来实现创建嵌入的变体,即,cv f1、cvf2…等+tv f1、tv f2…等,以创建复杂的表示。
应当注意,嵌入的质量由命令行被令牌化和被隔开的程度来确定。
图7是示出用于聚合每个会话的会话特性的步骤序列的示例序列图。图7中的序列图示出了在用于聚合每个会话的会话特性的功能模块之间交换的各种信令消息或指令。
如图7所示,获取会话日志作为每个会话的会话特性聚合的输入。如上所述,为每个会话提取700会话特征。所提取的会话特征作为输入被提供给会话特性聚合器34。会话特性聚合器34将用于聚合的会话特性的所提取的每个会话的会话特性发送702给会话处理器70。此外,会话处理器70将用于每个命令行的矢量化命令行指令发送704给矢量化器36a。矢量化器36a为每个命令行创建命令行嵌入,并且将该嵌入发送706给会话处理器70。
此外,会话处理器70将用于每个命令行的矢量化命令行指令发送708给矢量化器36b。矢量化器36b为每个命令行创建命令行嵌入,并且将该嵌入发送710给会话处理器70。会话处理器70集合712分别从矢量化器30a和30b接收的嵌入的会话矢量,并且会话处理器70将聚合的会话特征发送714给会话特性聚合器34。会话特性聚合器34将聚合的会话特征发送716到可用于异常检测的输出数据集。
图8是示出用于聚合用户接入特性的功能模块的示例示意图。用户接入特性包括用户接入特征和用户会话特征。因此,聚合用户接入特征和用户会话特征以确定用户接入特性,如图8所示。
用户接入特征用于识别每天不同的用户行为,用户会话特征用于识别通过执行命令而不同(即,所使用的命令的变化和每天使用的命令计数的变化)的用户行为。因此,用户接入特征和用户会话特征有助于整体用户行为模型,并且用户接入特征和用户会话特征的聚合版本被表示为用户接入特性,其用于检测用户行为异常的天数。
用户接入特性聚合中涉及的功能模块包括用户接入聚合器38a和用户会话聚合器38b。用户接入聚合器38a和用户会话聚合器38b可以被配置为获取每个会话的会话特征或按照会话提取的特征作为用户接入特性聚合的输入。
在一个示例中,用户接入聚合器38a可以被配置为提取与网络节点10a-10n的用户接入相关的一个或多个属性。例如,与网络节点10a-10n的用户接入相关的一个或多个属性可以包括但不限于会话的数量(例如,每天)、被接入的不同节点的数量、所执行的风险命令的数量、用户的所有会话的总持续时间等。
在一个示例中,用户会话聚合器38b可以被配置为提取和用户与网络节点10a-10n的会话模式相关的一个或多个属性。例如,用户会话聚合器38b可以被配置为提取一个或多个属性,例如但不限于与嵌入相关的所使用命令,即,对于用户的会话,来自所有候选会话的一组特征嵌入等。
聚合由用户接入聚合器38a提取的用户接入特征和由用户会话聚合器38b提取的用户会话特征以确定用户接入特性。
图9是示出用于聚合用户接入特性的示例方法900的流程图。如图3中所述的用于确定包括指示用户接入特性的表示的接入行为的步骤S13包括如本文所述的各种示例步骤。最初,在步骤S43,方法900包括获取每个用户的所提取的会话特征。获取为每个用户提取的会话特征以确定用户接入特性的聚合。
在步骤S45,方法900包括根据所提取的会话特征来确定用户接入模式。用户接入聚合器38a可以被配置为提取与网络节点10a-10n的用户接入相关的一个或多个属性。例如,与网络节点10a-10n的用户接入相关的一个或多个属性可以包括但不限于会话的数量(例如,每天)、被接入的不同节点的数量、所执行的风险命令的数量、用户的所有会话的总持续时间等。
在步骤S47,方法900包括根据所提取的会话特征来确定用户会话模式。用户会话聚合器38b可以被配置为提取和用户与网络节点10a-10n的会话模式相关的一个或多个属性。例如,用户会话聚合器38b可以被配置为提取一个或多个属性,例如但不限于与嵌入相关的所使用命令,即,对于用户的会话,来自所有候选会话的一组特征嵌入等。
在步骤S49,方法900包括通过组合用户接入模式和用户会话模式来确定用户接入特性。例如,聚合由用户接入聚合器38a提取的用户接入特征和由用户会话聚合器38b提取的用户会话特征以确定用户接入特性。
图10是示出用于聚合用户接入特性的步骤序列的示例序列图。图10中的序列图示出了在用于聚合每个用户的用户接入特性的功能模块之间交换的各种信令消息或指令。
如图10所示,获取会话日志作为每个会话的会话特性聚合的输入。为每个会话提取1000会话特征。所提取的会话特征作为输入被提供给会话特性聚合器34。用户特性聚合器38向用户接入聚合器38a发送1002每个用户的提取接入行为指令。当从会话特性聚合器34接收到提取接入行为指令时,用户接入聚合器38a确定用户接入行为,并且将所确定的用户接入行为发送1004给用户特性聚合器38。
此外,用户特性聚合器38向会话处理器70发送1006用于用户的每个会话的聚合会话特性指令。会话处理器70向用户会话聚合器38b发送1008用于每个命令行的提取会话行为指令。用户会话聚合器38b提取和用户与网络节点10a-10d的会话模式相关的一个或多个属性,并且将用户会话特性发送1010给会话处理器70。此外,会话处理器70向用户特性聚合器38发送1012用户会话特性。
用户接入特性聚合器38集合1014包括用户接入特性和用户会话特性的用户接入特性,并且用户接入特性聚合器38将所聚合的用户接入特性发送1016到会话日志以在异常检测期间进行存储和检索。
图11是示出用于聚合节点接入特性的功能模块的示例示意图。节点接入特性包括节点接入特征和节点会话特征。因此,聚合节点接入特征和节点会话特征以确定节点接入特性,如图11所示。
节点接入特征可以包括但不限于会话的数量(例如,每天)、被接入的不同用户的数量、所执行的风险命令的数量、所有会话的总持续时间等。节点会话特征可以包括但不限于与嵌入相关的所使用命令,即,对于该节点中的会话,来自所有候选会话的一组特征嵌入等。
因此,可以通过确定以下属性来提取节点接入特征,即,会话的数量、被接入的不同用户的数量、所执行的风险命令的数量、所有会话的总持续时间等。类似地,可以通过确定与嵌入相关的所使用命令来提取节点会话特征,即,对于该节点中的会话,来自所有候选会话的一组特征嵌入等。
节点接入特征用于识别每天在特定节点上不同的用户行为,节点会话特征用于识别通过执行命令(即,所使用的命令的变化和所使用的命令计数的变化)而在特定节点上不同的用户行为。
因此,节点接入特征和节点会话特征有助于整体用户行为模型,并且节点接入特征和节点会话特征的聚合版本被表示为节点接入特性。
节点接入特性聚合中涉及的功能模块包括节点接入聚合器40a和节点会话聚合器40b。节点接入聚合器40a和节点会话聚合器40b可以被配置为获取每个会话的会话特征或按照会话提取的特征作为节点接入特性聚合的输入。
在一个示例中,节点接入聚合器40a被配置为提取与网络节点10a-10n中的节点接入相关的一个或多个属性。例如,与网络节点10a-10n中的节点接入相关的一个或多个属性可以包括但不限于会话的数量、被接入的不同用户的数量、所执行的风险命令的数量、所有会话的总持续时间等。
在一个示例中,节点会话聚合器40b被配置为提取与节点的会话相关的一个或多个属性。例如,与网络节点10a-10n中的节点接入相关的一个或多个属性可以包括但不限于与嵌入相关的所使用命令,即,对于该节点中的会话,来自所有候选会话的一组特征嵌入等。
组合由节点接入聚合器40a提取的节点接入特征和由节点会话聚合器40b提取的节点会话特征以确定节点接入特性。
图12是示出用于聚合节点接入特性的示例方法1200的流程图。如图3中所述的用于确定包括指示节点接入特性的表示的接入行为的步骤S13包括如本文所述的各种示例步骤。最初,在步骤S63,方法1200包括获取每个节点的所提取的会话特征。获取为每个节点提取的会话特征以确定节点接入特性的聚合。
在步骤S65,方法1200包括根据所提取的会话特征来确定节点接入模式。节点接入聚合器40a可以被配置为提取与网络节点10a-10n中的节点接入相关的一个或多个属性。例如,节点接入聚合器40a可以被配置为提取一个或多个属性,包括但不限于会话的数量(例如,每天)、被接入的不同用户的数量、所执行的风险命令的数量、所有会话的总持续时间等。
在步骤S67,方法1200包括根据所提取的会话特征来确定节点会话模式。节点会话聚合器40b可以被配置为提取与网络节点10a-10n中的节点的会话相关的一个或多个属性。节点会话特征可以包括但不限于与嵌入相关的所使用命令,即,对于该节点中的会话,来自所有候选会话的一组特征嵌入等。
在步骤S69,方法1200包括通过组合节点接入模式和节点会话模式来确定节点接入特性。例如,聚合由用户接入聚合器40a提取的节点接入模式/特征和由节点会话聚合器40b提取的节点会话特征以确定节点接入特性。
图13是示出用于聚合节点接入特性的步骤序列的示例序列图。
图13中的序列图示出了在用于聚合每个节点的节点接入特性的功能模块之间交换的各种信令消息或指令。
如图13所示,获取会话日志作为每个会话的会话特性聚合的输入。为每个会话提取1300会话特征。所提取的会话特征作为输入被提供给节点特性聚合器40。节点特性聚合器40向节点接入聚合器40a发送1302每个节点的提取接入行为指令。当从节点特性聚合器40接收到提取接入行为指令时,节点接入聚合器40a确定节点接入特征并且将所确定的节点接入特征发送1304给节点特性聚合器40。
此外,节点特性聚合器40向会话处理器70发送1306节点的每个会话的聚合会话特性指令。会话处理器70向节点会话聚合器40b发送1308用于每个命令行的提取会话行为指令。节点会话聚合器40b提取与网络节点10a-10d中的节点会话模式相关的一个或多个属性,并且将节点会话模式发送1310给会话处理器70。此外,会话处理器70向节点特性聚合器40发送1312节点会话模式。
节点接入特性聚合器40集合1314包括节点接入模式/特性和节点会话模式/特性的节点接入特性,并且节点特性聚合器40将所聚合的节点接入特性发送1316到会话日志以在异常检测期间进行存储和检索。
图14是示出用于确定命令使用特性的示例方法1400的流程图。如图3中所述的用于确定包括指示命令使用特性的表示的接入行为的步骤S13包括如本文所述的各种示例步骤。命令使用特性涉及识别在会话中使用的频繁的、罕见的命令。命令使用特性的确定涉及提取风险或安全命令,可以对该提取进行监控以帮助暴露命令使用特性。例如,命令使用特性的确定包括在命令级别对重复的命令使用行为进行计数。因此,命令使用特性的确定实现了对跨所有会话的行为的探索性视图,从而为操作提供了额外的洞察,以提高其效率或基于发现来识别将使管理变得容易的特征。所提取的命令使用特性可以由网络运营商使用GUI来可视地表示以用于容易探索。
在方法1400中描述了确定命令使用特性所涉及的各种步骤。最初,在步骤S83,方法1400包括获取每个用户的所提取的会话特征。获取为每个用户提取的会话特征以确定命令使用特性。
在步骤S85,方法1400包括从每个会话的多个会话特征中提取所执行的风险命令数量和安全命令数量中的一个或多个。例如,评估会话特征以提取或识别用户执行的风险命令数量和安全命令数量。
在步骤S87,方法1400包括基于频率(例如,频繁命令或罕见命令)和所执行的风险命令数量来确定命令使用模式。
在一个示例中,会话特征提取器32可以被配置为基于作为输入通过扩充引擎18被馈送到会话特征提取器32的预定义风险命令15和预定义安全命令16来提取每个会话执行的风险命令数量和安全命令数量。
例如,可以通过提取每个会话执行的风险命令数量和安全命令数量来确定命令使用模式。在特定会话中,如果用户正在执行风险命令,例如,风险命令被执行五次,则重复的风险命令执行指示异常的用户行为。因此,用户的命令使用模式可以由风险命令执行的数量来确定。
在一个示例中,命令使用模式可以依赖于成组命令(bucketing commands),所述成组命令基于命令执行的频率并且向网络管理员公开探索性视图。可以通过核查风险命令及其执行频率来确定命令异常。例如,如果某个风险命令在最近的10天中被执行大约10次,并且当前日有100个风险命令的峰值,则这指示命令级别异常。
因此,命令使用特性涉及识别频繁的、罕见的命令,提取这些命令以确定所使用的风险/安全命令,并且在一定时段内将这些命令监控到命令使用特性。
图15是示出用于基于所确定的接入行为检测异常接入行为的示例方法1500的流程图。接入行为例如如关于图5A-5C、图9、图12和图14所述的来确定。在方法1500中描述了确定命令使用特性所涉及的各种步骤。最初,在步骤S51,方法1500包括获取会话特性、用户接入特性、网络节点接入特性和命令使用特性的表示。例如,涉及会话特性、用户接入特性、网络节点接入特性和命令使用特性的表示。涉及会话特性、用户接入特性、网络节点接入特性和命令使用特性的每个表示在它们的格式或结构上是不同的,并且涉及会话特性、用户接入特性、网络节点接入特性和命令使用特性的每个表示分别需要适当的技术/算法来检测违规/异常状况。
在步骤S53,方法1500包括通过对所获取的会话特性应用异常检测来检测异常会话。例如,会话特性包括一组数值、类别和嵌入相关特征。因此,可以使用树启发式异常算法来检测异常。例如,可以应用隔离森林技术来在所获取的会话特性上检测异常会话。
在步骤S55,方法1500包括通过对所获取的用户接入特性应用异常检测来检测异常用户。用户接入特性涉及按照用户针对用户接入特征的一组数值属性。因此,可以使用如z-score的算法来执行对用户接入特征的异常检测,以发现相对于配置的历史时段的偏离行为并且报告异常。此外,用户会话特征涉及按照用户的一组类别属性,并且可以使用如隔离森林的算法来执行对用户会话特征的异常检测。
在步骤S57,方法1500包括通过对所获取的节点接入特性应用异常检测来检测异常网络节点。节点接入特性涉及按照用户针对节点接入特征的一组数值属性。因此,可以使用如z-score的算法来执行对节点接入特征的异常检测,以发现相对于配置的历史时段的偏离行为并且报告异常。此外,节点会话特征涉及按节点的一组类别属性,并且可以使用如隔离森林的算法来执行对节点会话特征的异常检测。
在步骤S59,方法1500包括通过分析每个会话执行的风险命令数量和安全命令数量从命令使用特性中检测异常命令。例如,从命令使用特性中检测异常命令涉及评估在不同会话中由不同用户使用的命令集以及总结相应配置的风险、安全命令的最频繁、最罕见命令和计数。因此,来自命令使用特性的异常检测提供了用户行为的探索性视图。
图16是示出图1A的网络节点10的功能模块的示例示意图。网络节点10包括执行用于检测图1A的通信网络100中的多个网络节点10a-10n中的异常接入行为的各种步骤的各种功能模块。例如,网络节点10的会话分析功能30实现各种功能模块,这些功能模块被配置为执行用于检测通信网络100中的多个网络节点10a-10n中的异常接入行为的各种步骤。
会话分析功能30的各种功能模块包括获取器81、特征提取器82,通信器83、评估器84、令牌化器85、聚合器86和异常检测器87。
在一个示例中,获取器81可以被配置为获取与通信网络100的多个网络节点10a-10n相关联的会话日志11。
特征提取器82可以被配置为提取每个会话的会话特征。例如,会话特征提取器82可以被配置为提取会话的各种特征,包括会话中的行数、被推断为命令行的行上的命令行特征,例如命令行数、来自会话数据(即,会话用户、会话开始时间、会话结束时间、节点id等)的字符串或可读命令行表示属性。
通信器83可以被配置为使用合适的通信协议与通信网络100中的一个或多个网络节点10a-10n通信。
评估器84可以被配置为基于所提取的会话特征来评估和/或确定与每个会话相关联的接入行为。与每个会话相关联的接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个的表示。
在一个示例中,令牌化器85可以被配置为处理命令行,该命令行通常包括后面跟随实际命令的提示结构。有时,可能涉及很长的命令。命令可以由小字符串或大字符串组成,并且命令行可以包含由“;”或类似的其他分隔符分隔的多个命令。
在一些示例中,特征矢量化器36可以实现用于确定命令行特定分隔符的合适的机制,以及令牌化,以创建适当的矢量特征嵌入来区分一个命令行与其他命令行。
在其他示例中,特征矢量化器36可以实现其他技术,如CountVectorizer、TfIdfVectorizer等,以创建嵌入。
在一个示例中,聚合器86可以被配置为聚合按照会话的或每个会话的会话特性、包括用户接入特征和用户会话特征的用户接入特性、包括节点接入特征和节点会话特征的节点接入特性以及用户的命令使用模式。例如,聚合器86可以被实现为分别用于聚合按照会话的或每个会话的会话特性、用户接入特性和节点接入特性的会话特性聚合器34、用户接入特性聚合器38和节点接入特性聚合器40。
在一个示例中,异常检测器87可以被配置为对与每个会话相关联的接入行为执行异常检测,该接入行为包括指示会话特性、用户接入特性、网络节点接入特性和命令使用特性的表示。例如,异常检测器87可以实现各种技术,例如可以应用隔离森林来在所获取的会话特性上检测异常会话。异常检测器87可以对用户接入特性和节点接入特性实施如z-score的算法,以检测异常用户行为和异常节点。此外,异常检测器87可以通过评估由不同用户在不同会话中使用的命令集以及总结相应配置的风险、安全命令的最频繁、最罕见命令和计数来从命令使用特性中检测异常命令。
图17示出了实现图3中所述的用于检测异常接入行为的方法和网络节点10的示例计算环境1700。如图17所示,计算环境1700包括配备有控制单元1702和算术逻辑单元(ALU)1703的至少一个数据处理单元1704、存储器1705、存储装置1706、多个联网设备1708和多个输入输出(I/O)设备1707。数据处理单元1704负责处理算法的指令。例如,数据处理单元1704等效于网络节点10的处理电路。数据处理单元1704能够执行存储在存储器1705中的软件指令。数据处理单元1704从控制单元1702接收命令以便执行其处理。此外,在ALU1703的帮助下计算指令执行中涉及的任何逻辑和算术运算。
数据处理单元1704使网络节点获取与通信网络中的多个网络节点相关联的会话日志。此外,数据处理单元1704通过评估与多个网络节点相关联的会话日志来使得提取每个会话的会话特征。数据处理单元1704基于所提取的会话特征来使得确定与每个会话相关联的接入行为。此外,数据处理单元1704通过分析所确定的接入行为来使得检测异常接入行为。
整体计算环境1700可以由多个同类和/或异类核心、多个不同种类的CPU、特殊介质和其他加速器组成。数据处理单元1704负责处理算法的指令。此外,多个数据处理单元1704可以位于单个芯片上或多个芯片上。
包括实现所需的指令和代码的算法被存储在存储器1705中或存储装置1706中或这两者中。在执行时,指令可以从相应的存储器1705和/或存储装置1706中取出,并且由数据处理单元1704执行。
在任何硬件实现的情况下,各种联网设备1708或外部I/O设备1707可以连接到计算环境以支持通过联网设备1708和I/O设备1707的实现。
本文所公开的实施例可以通过在至少一个硬件设备上运行并且执行控制元件的网络管理功能的至少一个软件程序来实现。图17所示的元件包括可以是硬件设备或硬件设备和软件模块的组合中的至少一个的块。
具体实施例的以上描述将充分地揭示本文中实施例的一般性质,使得其他人可以通过应用当前知识在不偏离一般概念的情况下容易地修改和/或调适此类具体实施例以用于各种应用,并且因此,此类调适和修改应当并且旨在在所公开实施例的等效物的含义和范围内进行理解。应当理解,本文所采用的措辞或术语是为了描述而不是限制的目的。因此,虽然已经根据优选实施例描述了本文的实施例,但是本领域技术人员将认识到,可以在本公开的范围内通过修改来实践本文的实施例。
Claims (18)
1.一种用于检测通信网络(100)中的多个网络节点(10a-10n)中的异常接入行为的方法,所述方法在所述通信网络(100)中的至少一个网络节点(10)中执行,其中,所述方法包括:
-获取(S11)与所述通信网络(100)中的所述多个网络节点(10a-10n)相关联的会话日志;
-通过评估与所述多个网络节点(10a-10n)相关联的会话日志来提取(S12)每个会话的会话特征;
-基于所提取的会话特征来确定(S13)与每个会话相关联的接入行为,其中,与每个会话相关联的所述接入行为包括对会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个加以指示的表示;以及
-通过分析所确定的接入行为来检测(S14)异常接入行为。
2.根据权利要求1所述的方法,其中,通过评估与所述多个网络节点(10a-10n)相关联的会话日志来提取(S12)每个会话的会话特征的步骤包括:
-获取(S22)输入数据集,每个数据集包括命令行集、非命令行集和预定义命令集中的一个或多个,所述预定义命令集指示命令类型、命令类别、安全命令和风险命令;以及
-使用所获取的输入数据集和所述预定义命令集来评估(S26)每个会话日志中的命令行集。
3.根据权利要求2所述的方法,其中,基于所获取的输入数据集和所述预定义命令集来评估(S26)每个会话日志中的命令行集的步骤包括:
-基于所获取的包括所述命令行集、所述非命令行集和所述预定义命令集的输入数据集来确定(S36)每个会话日志中的命令行集;以及
-提取(S38)与每个会话日志中所确定的命令行集相关联的特征。
4.根据权利要求3所述的方法,其中,确定(S36)每个会话日志中的命令行集的步骤包括:
-从所述多个会话日志中的每个会话日志中提取(S32)多个行;
-将在所述会话日志的每行中识别的一个或多个特殊字符和空格转换(S33)为等效的字符串矢量;以及
-使用用所获取的输入数据集训练的模型来确定(S35)每个会话日志中的命令行集。
5.根据前述权利要求中任一项所述的方法,其中,确定(S13)包括与每个会话相关联的会话特性的表示的接入行为的步骤包括:
-获取(S23)每个会话的所提取的会话特征;
-从每个会话的所述会话特征中识别(S25)命令行集中的文本特征;
-使用矢量化器将所述命令行集中的所识别的文本特征转化(S27)为等效矢量;以及
-为每个会话的所述命令行集创建(S29)数值表示,其中,通过应用所述命令行集中的每个命令行的特征矢量和所转化的文本特征来创建所述数值表示。
6.根据前述权利要求中任一项所述的方法,其中,基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的用户接入特性的表示的接入行为的步骤包括:
-获取(S43)每个用户的所提取的会话特征;
-基于每个用户的会话数量、每个用户接入的网络节点数量、由每个用户执行的风险命令数量和每个用户的会话持续时间中的一个或多个,从所提取的会话特征中确定(S45)用户的每个会话的用户接入模式;
-基于每个会话的命令行和每个会话的命令类别中的一个或多个,从所提取的会话特征中确定(S47)用户的每个会话的用户会话模式;以及
-通过组合所确定的用户接入模式和所确定的用户会话模式来确定(S49)所述用户接入特性。
7.根据前述权利要求中任一项所述的方法,其中,基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的网络节点接入特性的表示的接入行为的步骤包括:
-获取(S63)每个节点的所提取的会话特征;
-基于每个节点的会话数量、每个节点接入的用户数量、每个节点执行的风险命令数量和每个节点的会话持续时间中的一个或多个,从所述会话特征中确定(S65)节点的每个会话的节点接入模式;
-基于每个会话的命令行和每个会话的命令类别中的一个或多个,从所述会话特征中确定(S67)节点的每个会话的节点会话模式;以及
-通过组合所确定的节点接入模式和所确定的节点会话模式来确定(S69)所述节点接入特性。
8.根据前述权利要求中任一项所述的方法,其中,基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的命令使用特性的表示的接入行为的步骤包括:
-获取(S83)每个会话的所提取的会话特征;
-从每个会话的所述多个会话特征中提取(S85)所执行的风险命令数量和安全命令数量中的一个或多个;以及
-基于频率(例如,频繁命令或罕见命令)和所执行的风险命令数量来确定(S87)所述命令使用模式。
9.根据前述权利要求中任一项所述的方法,其中,通过分析所确定的接入行为来检测(S14)异常接入行为的步骤包括:
-获取(S51)所述会话特性、所述用户接入特性、所述网络节点接入特性和所述命令使用特性中的一个或多个的表示;
-通过对所获取的会话特性应用异常检测来检测(S53)异常会话;
-通过对所获取的用户接入特性应用异常检测来检测(S55)异常用户;
-通过对所获取的网络节点接入特性应用异常检测来检测(S57)异常网络节点;以及
-通过分析每个会话执行的风险命令数量和安全命令数量来从所获取的命令使用特性中检测(S59)异常命令。
10.根据权利要求1所述的方法,还包括以下步骤:
使得(S15)显示检测到的对异常会话、异常用户、异常网络节点和异常命令中的一个或多个加以指示的异常接入行为。
11.一种用于检测通信网络(100)中的多个网络节点中的异常接入行为的网络节点(10),所述网络节点(10)包括数据处理单元(1704);
以及存储指令(64)的存储器(62),所述指令当由所述处理电路(1704)执行时使所述网络节点(10):
-获取(S11)与所述通信网络中的所述多个网络节点(10a-10n)相关联的会话日志;
-通过评估与所述多个网络节点相关联的会话日志来提取(S12)每个会话的多个会话特征;
-基于所提取的多个会话特征来确定(S13)与每个会话相关联的接入行为,其中,与每个会话相关联的所述接入行为包括对会话特性、用户接入特性、网络节点接入特性和命令使用特性中的一个或多个加以指示的表示;以及
-通过分析所确定的接入行为来检测(S14)异常接入行为。
12.根据权利要求11所述的网络节点(10),其中,所述网络节点与所述通信网络(100)中的所述多个网络节点(10a-10n)通信,并且被配置用于在预先配置的时间间隔内访问与所述多个网络节点(10a-10n)相关联的会话日志,以检测所述通信网络(100)中的异常接入行为。
13.根据前述权利要求中任一项所述的网络节点,其中,所述网络节点(10)被配置为通过以下操作来确定(S13)包括与每个会话相关联的会话特性的表示的接入行为:
-获取(S23)每个会话的所提取的会话特征;
-从每个会话的所述会话特征中识别(S25)命令行集中的文本特征;
-使用矢量化器将所述命令行集中的所识别的文本特征转化(S27)为等效矢量;以及
-为每个会话的所述命令行集创建(S29)数值表示,其中,通过应用所述命令行集中的每个命令行的特征矢量和所转化的文本特征来创建所述数值表示。
14.根据前述权利要求中任一项所述的网络节点(10),其中,所述网络节点(10)被配置为通过以下操作基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的用户接入特性的表示的接入行为:
-获取(S43)每个用户的所提取的会话特征;
-基于每个用户的会话数量、每个用户接入的网络节点数量、由每个用户执行的风险命令数量和每个用户的会话持续时间中的一个或多个,从所提取的会话特征中确定(S45)用户的每个会话的用户接入模式;
-基于每个会话的命令行和每个会话的命令类别中的一个或多个,从所提取的会话特征中确定(S47)用户的每个会话的用户会话模式;以及
-通过组合所确定的用户接入模式和所确定的用户会话模式来确定(S49)所述用户接入特性。
15.根据前述权利要求中任一项所述的网络节点(10),其中,所述网络节点(10)被配置为通过以下操作基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的网络节点接入特性的表示的接入行为:
-获取(S63)每个节点的所提取的会话特征;
-基于每个节点的会话数量、每个节点接入的用户数量、每个节点执行的风险命令数量和每个节点的会话持续时间中的一个或多个,从所述会话特征中确定(S65)节点的每个会话的节点接入模式;
-基于每个会话的命令行和每个会话的命令类别中的一个或多个,从所述会话特征中确定(S67)节点的每个会话的节点会话模式;以及
-通过组合所确定的节点接入模式和所确定的节点会话模式来确定(S69)所述节点接入特性。
16.根据前述权利要求中任一项所述的网络节点(10),其中,所述网络节点(10)被配置为通过以下操作基于所提取的多个会话特征来确定(S13)包括与每个会话相关联的命令使用特性的表示的接入行为:
-获取(S83)每个会话的所提取的会话特征;
-从每个会话的所述多个会话特征中提取(S85)所执行的风险命令数量和安全命令数量中的一个或多个;以及
-基于所提取的每个会话执行的风险命令数量和安全命令数量中的一个或多个来确定(S87)所述命令使用模式。
17.根据前述权利要求中任一项所述的网络节点(10),其中,所述网络节点(10)被配置为通过以下操作通过分析所确定的接入行为来检测(S14)异常接入行为:
-获取(S51)所述会话特性、所述用户接入特性、所述网络节点接入特性和所述命令使用特性中的一个或多个的表示;
-通过对所获取的会话特性应用异常检测来检测(S53)异常会话;
-通过对所获取的用户接入特性应用异常检测来检测(S55)异常用户;
-通过对所获取的网络节点接入特性应用异常检测来检测(S57)异常网络节点;以及
-通过分析每个会话执行的风险命令数量和安全命令数量来从所获取的命令使用特性中检测(S59)异常命令。
18.一种计算机程序产品,包括非暂时性计算机可读介质,其上具有包括程序指令的计算机程序,所述计算机程序可加载到数据处理单元(1704)中,并且被配置为当所述计算机程序由所述数据处理单元运行时使得执行根据权利要求1至10中任一项所述的方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IN2020/051071 WO2022144908A1 (en) | 2020-12-30 | 2020-12-30 | Method and network node for detecting anomalous access behaviours |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116648939A true CN116648939A (zh) | 2023-08-25 |
Family
ID=82260636
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080108285.4A Pending CN116648939A (zh) | 2020-12-30 | 2020-12-30 | 用于检测异常接入行为的方法和网络节点 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20240089279A1 (zh) |
EP (1) | EP4272474A4 (zh) |
CN (1) | CN116648939A (zh) |
WO (1) | WO2022144908A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20240095346A1 (en) * | 2022-09-15 | 2024-03-21 | Crowdstrike, Inc. | Anomalous command line entry detection |
CN116112265B (zh) * | 2023-02-13 | 2023-07-28 | 山东云天安全技术有限公司 | 一种异常会话的确定方法、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9699205B2 (en) * | 2015-08-31 | 2017-07-04 | Splunk Inc. | Network security system |
US10341391B1 (en) * | 2016-05-16 | 2019-07-02 | EMC IP Holding Company LLC | Network session based user behavior pattern analysis and associated anomaly detection and verification |
-
2020
- 2020-12-30 CN CN202080108285.4A patent/CN116648939A/zh active Pending
- 2020-12-30 EP EP20967960.4A patent/EP4272474A4/en active Pending
- 2020-12-30 WO PCT/IN2020/051071 patent/WO2022144908A1/en active Application Filing
- 2020-12-30 US US18/269,982 patent/US20240089279A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20240089279A1 (en) | 2024-03-14 |
WO2022144908A1 (en) | 2022-07-07 |
EP4272474A4 (en) | 2024-02-21 |
EP4272474A1 (en) | 2023-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210194924A1 (en) | Artificial intelligence adversary red team | |
US11586972B2 (en) | Tool-specific alerting rules based on abnormal and normal patterns obtained from history logs | |
US20240121263A1 (en) | Autonomous report composer | |
US11522881B2 (en) | Structural graph neural networks for suspicious event detection | |
Van Ede et al. | Deepcase: Semi-supervised contextual analysis of security events | |
Gupta et al. | Layered approach using conditional random fields for intrusion detection | |
US20180367561A1 (en) | Threat disposition analysis and modeling using supervised machine learning | |
WO2021171090A1 (en) | An artificial intelligence adversary red team | |
US10735272B1 (en) | Graphical user interface for security intelligence automation platform using flows | |
EP3872637A1 (en) | Application programming interface assessment | |
US20230011004A1 (en) | Cyber security sandbox environment | |
CN116648939A (zh) | 用于检测异常接入行为的方法和网络节点 | |
Zomlot et al. | Aiding intrusion analysis using machine learning | |
Sethi et al. | A novel malware analysis for malware detection and classification using machine learning algorithms | |
CN114090406A (zh) | 电力物联网设备行为安全检测方法、系统、设备及存储介质 | |
CN114528457A (zh) | Web指纹检测方法及相关设备 | |
Nour et al. | A survey on threat hunting in enterprise networks | |
Kaiser et al. | Attack hypotheses generation based on threat intelligence knowledge graph | |
US20220237289A1 (en) | Automated malware classification with human-readable explanations | |
Kryukov et al. | Mapping the Security Events to the MITRE ATT &CK Attack Patterns to Forecast Attack Propagation | |
Dey et al. | DAEMON: Dynamic Auto-Encoders for contextualised anomaly detection applied to security MONitoring | |
Wang et al. | An end-to-end method for advanced persistent threats reconstruction in large-scale networks based on alert and log correlation | |
Landauer et al. | Visualizing Syscalls using Self-organizing Maps for System Intrusion Detection. | |
de la Torre-Abaitua et al. | A parameter-free method for the detection of web attacks | |
Chen et al. | A novel method to analyze logs generated by wireless telecommunication 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 |