CN112583847B - 一种面向中小企业网络安全事件复杂分析的方法 - Google Patents

一种面向中小企业网络安全事件复杂分析的方法 Download PDF

Info

Publication number
CN112583847B
CN112583847B CN202011560222.0A CN202011560222A CN112583847B CN 112583847 B CN112583847 B CN 112583847B CN 202011560222 A CN202011560222 A CN 202011560222A CN 112583847 B CN112583847 B CN 112583847B
Authority
CN
China
Prior art keywords
data
training
analysis
vector
concept vector
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
Application number
CN202011560222.0A
Other languages
English (en)
Other versions
CN112583847A (zh
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Liancheng Technology Development Co ltd
Original Assignee
Nanjing Liancheng Technology Development Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing Liancheng Technology Development Co ltd filed Critical Nanjing Liancheng Technology Development Co ltd
Priority to CN202011560222.0A priority Critical patent/CN112583847B/zh
Publication of CN112583847A publication Critical patent/CN112583847A/zh
Application granted granted Critical
Publication of CN112583847B publication Critical patent/CN112583847B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • G06F18/23213Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2411Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on the proximity to a decision surface, e.g. support vector machines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computing Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Biology (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明公开了一种面向中小企业网络安全事件复杂分析的方法,其特征在于,一种能够应用于大数据量的异常检测的方法,采用非线性递推滤波的算法,能够检测未知的网络攻击或已知的网络攻击,并给出这些网络攻击的排序,使得安全运维服务人员集中精力处理排名靠前的网络攻击。通过本发明,能够使得中小企业的安全运维服务人员及时定位和修复故障,排除安全隐患和保障企业的正常运营。

Description

一种面向中小企业网络安全事件复杂分析的方法
技术领域
本发明涉及计算机、网络安全、人工智能、网络管理和自动控制的技术领域,尤其涉及到一种面向中小企业网络安全事件复杂分析的方法。
背景技术
为了抵御对企业网络的大规模攻击,现代企业网络都部署了大量的安全设备或***,如防火墙FireWall、IDS(Intrusion Detection Systems入侵检测***)、或堡垒机、或SIEM(Security Information and Event Management安全信息和事件管理)以及DLP(DataLeakage Prevention 数据泄漏预防***)。如果按照完善的信息安全控制措施正确地集成到企业网络环境中,这些安全设备或***就可以有效地识别网络攻击和进行内外网管理,已经成为广大中小企业市场安全管理和运维过程中必不可少的一部分。
然而,这些安全设备或***诞生于上世纪90年代后期,被用于规范和集中管理企业网络中的安全数据流;尽管这些年来市场快速增长和技术不断进步,但是这些安全设备或***仍不能满足当今中小企业网络安全运维和管理的需求。例如,已有的SIEM仍存在诸多的缺陷和问题,如存在架构的可扩展性问题,以及在收集、存储、分析和可视化方面的挑战;又如,存在处理异构大数据量的问题;又如,存在网络入侵相关大数据量的机器学习分析问题;又如,存在深度包分析的解决方案的不可扩展和不适用于产生大数据量的大网络;又如,大数据量的异常检测问题等。
发明内容
为了解决上述技术问题,本发明提供了一种面向中小企业网络安全事件复杂分析的方法,以改进已有的SIEM存在的缺陷和问题。
一种面向中小企业网络安全事件复杂分析的方法,其特征在于,一种能够应用于大数据量的异常检测的方法,采用非线性递推滤波的算法,能够检测未知的网络攻击或已知的网络攻击,并给出这些网络攻击的排序,使得安全运维服务人员集中精力处理排名靠前的网络攻击;
所述方法,还包括如下步骤:
从数据源采集日志数据;
接收日志数据和分布式存储;
从分布式存储中获取日志并将日志数据标准化成对象日志格式和创建N个训练样本;
将N个训练样本转换成以向量空间表示;
寻找若干个基于k最优的样本;
利用球形k-means寻找聚类;
为每一个聚类计算概念向量;
在概念向量上训练径向核单类支持向量机SVM;
从数据源和/或分布式存储中获取日志并将日志数据标准化成对象日志格式和分成与训练样本相等数据量的M个子集;
将每一个子集转换成以向量空间表示;
利用球形k-means寻找聚类;
为每一个聚类计算概念向量;
每一个N单类支持向量机SVM模型均被应用到概念向量以发现可疑聚类;
从所有N模型中选择0预测的聚类;
每一个N支持向量机SVM模型均对所选聚类的决策值进行缩放;
返回可疑聚类,并从N模型中的每一个的决策值之和SumDV进行排序;也就是说,给出所检测的已知的网络攻击或未知的网络攻击的排序。
本发明的技术效果在于:
在本发明中,提供了一种面向中小企业网络安全事件复杂分析的方法,其特征在于,一种能够应用于大数据量的异常检测的方法,采用非线性递推滤波的算法,能够检测未知的网络攻击或已知的网络攻击,并给出这些网络攻击的排序,使得安全运维服务人员集中精力处理排名靠前的网络攻击。通过本发明,能够使得中小企业的安全运维服务人员及时定位和修复故障,排除安全隐患和保障企业的正常运营。
附图说明
图1是一种面向中小企业网络安全事件复杂分析的方法的业务流程示意图。
具体实施方式
下面是根据附图和实例对本发明的进一步详细说明:
现代SIEM***面临着几个挑战,主要如下:
首先,数据的异构性给SIEM***的开发人员带来了许多问题,因为SIEM***应该能够从所有可能的日志消息格式中提取和处理信息。处理不同格式的一种方法是分别为每种格式开发类似的分析技术(签名和过滤器)。例如,Snort,一个开源的网络入侵预防和检测***,对每个支持的应用程序都有唯一的签名,这就产生了3000多条规则。解决不同格式问题的另一种方法是将日志消息转换为一种常见格式,如CEF(Common Executable Format通用可执行格式)或IODEF(Incident Object Description and Exchange Format,安全事件描述交换格式)。在这种情况下,主要的挑战是培育一种方便的通用日志格式,它一方面能够存储来自所有可能数据来源的所有信息,另一方面又足够紧凑以进行高速安全分析,再者,这种通用日志格式转换不至于丢失原始日志数据;
其次,大数据量(大数据)问题。在跨国公司/或大公司,甚至在广大的中小企业的网络中,每天都会生成数以十亿个与安全相关的日志。因此,现代SIEM***应该能够近实时地采集和分析这些数据。但是,许多SIEM安全运维服务人员都会遇到来自SIEM***仪表盘的查询数据时间长和反应缓慢的问题,迫使他们等待***响应。又如,“速度慢,超出了可承受的范围”;
最后,市场上的大多数SIEM***都只实现IDS的基于签名的检测方法,而基于异常的技术由于处理速度慢和误报率高而却很少被使用。然而,需要这样的技术,因为签名对于已知的攻击非常有效,但是在为每一种新类型攻击的此类活动创建新的签名之前,这种基于签名的方法则无法在日志文件中检测到新的恶意活动。
在过去的几十年里,许多不同的异常检测算法被开发出来,被用于安全分析。然而,在SIEM***中,只有少数算法被应用于日志消息的分析。
下面将回顾最新的几种方法,并讨论它们在异构大安全数据高速处理方面的优缺点:
1、基于k-means聚类的异常检测,是一种无监督的算法。正如本申请所提到的,该方法的主要限制因素是算法的计算复杂性。这使得它应用于相对较小的数据集变得很困难;
2、基于kNN的异常检测算法,这个方法的优点是简单。使用数据视图可以显著减少用于异常值检测的数据量,特别是在用户和工作站数量有限的情况下;但是,该算法和数据视图只能适用于windows事件,如果不重新设计这些数据视图,则不能用于其它数据源;
3、非线性递推滤波算法,可以用来进行网络安全态势感知和观测的最优估计,难点是要实现该算法的在线计算;
4、还有一些的异常检测算法,这些算法的优点是将聚类和单类支持向量机(one-class-SVM)相结合,使得分析过程能够并行化,但不对检测结果进行排序,例如,不能按照告警的严重级别从高到低进行排序。
总而言之,要将异常检测算法应用于安全事件,需要为许多具有挑战性的工作找到解决方案,例如:处理大量数据(或者说大数据)、计算日志消息之间的距离、高效聚类等。本申请提供了一种面向中小企业网络安全事件复杂分析***,能够解决上述问题。
本申请支持从任何数据来源收集安全事件,包括安全设备、网络设备、服务器、存储设备、操作***、应用服务器、数据库、虚拟机等,以及其它的SIEM和日志管理***。要采集这些数据,要么借助本申请提供的插件pluin,要么直接通过本申请提供的采集代理,由本申请的日志采集模块负责接收这些数据。
本申请对所采集的数据,不做任何预处理,直接存储所采集的原始数据在本申请所提供的存储设备上。
当需要查询所存储数据和异常检测时,本申请一边查询一边预处理所查询数据;也就是说,本申请根据需要对所涉及的数据进行预处理,并将来自不同***和主机的数据被标准化为一种通用格式,即OLF(Object Log Format对象日志格式)。这一步非常重要,因为所有异构的日志消息都被转换成相同的单一格式,这使得来自不同来源和不同原始格式的消息能够相互关联。因此,用于检测恶意活动的签名在日志标准化之后立即被应用。然后将数据推送到内存数据库中,在那里使用基于查询的分析或异常检测进一步处理这些数据。基于查询的分析是通过基于预定义的SQL(也可以是MML命令行)查询来实现的,而对于异常检测,内存数据库提供了两个选项。首先,可以应用机器学习算法,包括预测分析异常检测库。在这种情况下,数据将直接就地分析(即在内存数据库实例的内存中),但分析选项将仅限于预测分析算法。另一个选项是通过内存数据库支持的功能提供的。在这种情况下,只有处理所需的数据被发送到一种二进制的服务器中,在那里可以使用任何现有的封装库和使用自定义代码对它们进行分析。
最后,用户界面允许操作员查看日志和检测到的网络攻击,以及对历史数据运行不同的分析类型,用户界面由两个主要模块所组成:仪表盘和日志浏览器。
仪表盘提供正在处理的日志文件的各种统计信息,显示基于签名的检测的告警,并在检测到多步恶意场景时绘制攻击图。该仪表盘允许查询数据,以及选择或筛选存储在数据库中的日志消息。对于选定的事件,操作员可以重新运行任何签名或应用内存数据库中提供的异常检测算法。
通过本申请,不仅能够实时处理日志数据,而且还提供了签名、基于查询的分析,特别是异常检测方法。
本申请结合了不同的数据分析方法。首先,在将数据持久化到数据库之前应用签名。然后,在基于查询的分析的过程中,一边标准化日志,一边实施查询的分析和异常检测。
日志数据中已知的攻击模式通过基于签名的分析进行检测。该方法源于传统的入侵检测***,在检测攻击时具有较高的准确性。在本申请中,支持单步和多步攻击的检测。所有的签名均采用EDL(Event Description Language事件描述语言)表示。
基于SQL查询的分析主要用于获取正在处理的数据的统计信息。此类查询的示例包括:
(1)用户每天的登录活动;
(2)每天的事件数;
(3)不同类型的事件;
(4)登录失败事件的百分比;
(5)用户、主机、域控制器的事件总数等。
使用定制的签名引擎,能够创建一个用于检测任何类型应用程序的登录暴力攻击的示例性签名。此签名以EDL编写,并检查以下列出的条件:
(1)一行中至少有10次登录失败,每次登录最多10秒;
(2)如果只有失败的登录出现,则攻击被标记为失败;
(3)如果至少有一次成功登录,则攻击标记为成功;
(4)执行登录尝试的主机的源IPv4地址必须相同;
(5)被攻击的应用程序必须是相同的。
在一个实施例中,这个签名被加载到本申请中,所有可用的windows事件都被推送给它。结果,发现了2808起“***”案件,其中24个案例,包含一行失败的登录事件之后是一个成功的登录,这看起来更加可疑,这表明是真正的密码暴力攻击。
除了统计目的外,还可以使用查询来关联事件,因为所有数据都以通用的日志格式保存,即对象日志格式。在标准化步骤中,从所有类型的事件中提取元数据,例如执行的操作的类型(文件访问、登录等)或状态(失败/成功)。因此,不必单独查询失败的文件访问、登录失败和Kerberos预身份验证失败,而只需查询对象日志格式的一个字段(其中包含事件的状态),就可以选择所有这样的失败。有关详细信息,请参见表1。
Figure 535524DEST_PATH_IMAGE001
表1显示了一个来自内存数据库的SQLScript,用于选择所有失败的事件。由于标准化,任何Windows事件的状态都被提取并存储在相同的表单和相同的字段中,这样就可以通过简单的查询来捕获所有类型的失败事件。
另一种查询类型是自定义查询,为特定的数据集。表2中给出了这样的查询示例。
Figure 775183DEST_PATH_IMAGE002
由于格式标准化,日志消息中包含的每一条信息都被提取并存储在对象日志格式的单独字段中。因此,很容易在事件之间建立关联。表2显示了这种关联的一个示例,在其中选择访问其他用户的网络共享的用户帐户。表2的第5行和第6行过滤掉了计算机帐户,因为所有常规用户(非计算机帐户)都存储名字、姓氏,除了通过其他方法识别(签名和查询)。在这种策略下,本申请将集中讨论两种异常检测算法,但是,对于“非常特殊的用户,首先要进行的是非常特殊的用户类型的检测”。第二种异常检测算法——本申请关注的是——能够在任何通用数据(包括文本字段)上发现异常,因此不需要为机器学习分析定义任何定制特征。这种类型的算法还应该返回排名结果(例如,按照异常的严重级别排序),允许操作员关注一些标记为最可疑的异常事件(或事件簇),而不是低声下气地浏览未排序异常的完整列表。
作为第一类异常检测的示例实现,本申请将使用数据集的一部分来为每个{group,workstation}和{user,workstation}元组建立一系列具有泊松分布的登录事件模型。创建的模型将应用于数据集的第二部分。使用Poisson模型,能够根据下列公式找到每个这样的元组在每个时间间隔内的概率,这是因为目前不触发访问违规或数据泄漏告警的恶意用户行为很难被检测到。利用窃取的登录凭证,从事间谍活动的入侵者首先会试图不被发现:悄悄地从企业网络收集数据,只使用他被授权访问的资源。针对这种情况,使用了基于泊松的异常检测算法。另外两个额外的措施可以在提高检测率的同时减少误报率:(1)首先对用户组进行检测,然后对单个用户进行检测;(2)自动选择阈值。
Figure 246484DEST_PATH_IMAGE003
然后,本申请应用了两步概率检查,首先对{group,workstation}元组,然后对{user,workstation}元组进行概率检查。只有当计算出的{group,workstation}元组的时间间隔内事件数的概率太低,将检查来自该用户组的{user,workstation}的概率。一方面,这一措施允许本申请将用户执行其组未预料到的操作的情况标记为异常,另一方面,避免在用户访问以前从未访问过的***,但该组中的其他用户定期访问该***时出现误报结果。
为了在实际数据上使用这种方法,需要稍作修改。
首先,实际数据源描述了一个更大的网络,使用更多的参数进行分析是合理的,而不是仅仅使用{group,workstation}和{user,workstation}。例如,考虑到一天中的时间和星期几,可以捕捉到用户在不寻常的时间(午夜)连接到***的情况,而包含源IP地址则允许本申请捕获来自不同位置的登录。因此,本申请将元组扩展到{source,user,day,hour,destination},并为每个这样的元组计算每个时间间隔内的事件数。
其次,实际数据源通常不遵循泊松分布。例如,在本申请的数据集中,{source,user,day,hour,destination}元组中有63%的登录事件的方差大于平均值(σ2>1.5μ),而对于36%,登录事件的数量遵循泊松分布,因为方差取0.9μ和μ之间的值,即平均值大约等于方差(λ=μ=σ2)。为了解决63%元组的这个问题,应用了一个负二项模型——泊松分布的一般情况,覆盖了分散的登录事件。因此,了解每个{source,user,day,hour,destination}元组的登录事件数的平均值和方差,然后根据下面的负二项分布计算概率,但前提是σ2>μ。
Figure 721328DEST_PATH_IMAGE004
*
Figure 939207DEST_PATH_IMAGE005
*
Figure 183107DEST_PATH_IMAGE006
最后,拥有的数据集不包含有关用户组的信息。因此,对于这个特定的分析案例,被迫将本申请的算法限制为仅针对{source,user,day,hour,destination}元组的单步概率检查。在查看分析结果之前,本申请提出了一种更通用的异常检测方法。第二类异常检测的一个例子是基于k均值的经典方法。在这种方法下,使用k均值对数据集进行聚类。之后聚类完成后,远离相应聚类质心或远离所有聚类质心的点被标记为异常。
与Poisson/负二项模型相比,这种方法不需要创建定制的特性或指标,例如{source,user,day,hour,destination}元组在一个时间间隔内的登录事件数。相反,它基于事件之间的距离来工作,每个事件由不同的字段组成。这些字段或特征应始终具有相同的度量(以应用欧几里德距离),或至少为正态分布(然后,即使特征具有不同的度量,也可以应用马氏距离Mahalanobis distance。然而,对于不遵循正态分布的文本字段,即使它们被转换成数字,这种基于聚类的异常检测不能直接应用于数据。
将这种异常检测用于大数据分析也带来了其他挑战,例如k均值函数的复杂性,使得该算法几乎不可能应用于大数据。在前面的工作中,改进了经典的基于k-均值的异常检测方法,使用了如下三种测量:
(1)将数据(包括文本字段)转换为向量空间模型。这使得本申请可以利用余弦相似性作为两个事件之间的距离函数;
(2)在聚类之前,将数据划分为相同大小的子集;这样可以并行执行k-means和减少处理时间;
(3)将距离所有聚类中心的距离高于距离分布的第n个百分位的所有事件标记为异常。这个观测允许本申请根据距离的分布来选择异常值,而不是强制算法在实现时返回固定数量的异常作为在内存数据库的中执行异常检测的结果。
然而,即使返回的异常是按距质心的距离排序的,它们并没有聚集在一起,这降低了安全运维服务人员的人工可读性。为了解决这个问题,提高异常检测的可扩展性和性能,以及输出的准确性,本申请提供了一种更先进的混合异常检测方法,包括采用了一种非线性递推滤波的算法,如图1所示。它的步骤如下:
在步骤1中,从数据源采集原始日志数据,并将所采集的原始日志数据进行分布式存储和转发到内存数据库中,将内存数据库中的日志数据字段标准化成对象日志格式OLF,从内存数据库中选择相关数据进行分析(可以利用内存数据库中的集成模块对相关数据进行分析)。对象日志格式中的以下列用于进一步分析:event_id、subjectuser_username、targetuser_username、net_src_ipv4、net_src_host、net_src_port、producer_host、net_dst_ipv4、net_dst_host、net_dst_port、tag_action、tag_status、file_path、event_type_id,以及time。
在第2步中,将所采集的原始日志数据不作任何预处理进行分布式存储,分布式存储采用P2P(peer to pee)架构,这样的架构可以解决大数据量和存储可扩展的问题。这些原始日志数据包含文本字段,因此在在进行数据分析时,需要进一步规范化这些数据。这一规范化后的过程将文本字段映射到数字,并缩小可能值的范围。例如,从IPv4地址开始,本申请取前三个八位字节(网络地址)并将其投影到自然数(从1到数据中唯一网络地址的数量)。如果将数据集表示为列向量:
D={
Figure 372780DEST_PATH_IMAGE007
}
其中:
Figure 459553DEST_PATH_IMAGE008
={
Figure 87981DEST_PATH_IMAGE009
}
对于每个列
Figure 704163DEST_PATH_IMAGE010
,通过将每个值映射到其类别来将其转换为一个新的列
Figure 127054DEST_PATH_IMAGE011
。例如,以用户名列为例:
Figure 701124DEST_PATH_IMAGE008
={张三,李四,张三,王五,张三,张三}
将被转换成:
Figure 133242DEST_PATH_IMAGE008
={1, 2, 1, 3, 1, 1}
正规地写,假设
Figure 151401DEST_PATH_IMAGE010
是一个多数据集,
Figure 73090DEST_PATH_IMAGE012
Figure 806560DEST_PATH_IMAGE010
的等价的类。那么,假设K={1, 2, …, N}是
Figure 181651DEST_PATH_IMAGE012
的一个索引集,所以,
Figure 254649DEST_PATH_IMAGE013
={
Figure 347239DEST_PATH_IMAGE014
}=
Figure 505688DEST_PATH_IMAGE015
。定义函数g:
Figure 279609DEST_PATH_IMAGE016
,返回
Figure 334677DEST_PATH_IMAGE010
里的等价类,使得g(
Figure DEST_PATH_IMAGE017
)=
Figure 722802DEST_PATH_IMAGE018
,以及另一个函数h:
Figure DEST_PATH_IMAGE019
K,返回等价类的索引,例如,h(
Figure 558427DEST_PATH_IMAGE020
)=k。那么作如下映射:
Figure 995094DEST_PATH_IMAGE021
={h(g(
Figure 42684DEST_PATH_IMAGE022
)),h(g(
Figure 477077DEST_PATH_IMAGE023
)),…,h(g(
Figure 610118DEST_PATH_IMAGE024
))}
这个映射应用于端口号、主机名(在它们被转换成小写之后)、用户名被转换成相同的形式,等等。因此,在转换为向量空间表示之前,可能值的范围减小。如果以端口号为另一个例子,假设数据只包含端口号22、80和443,它们将被映射到
Figure 853405DEST_PATH_IMAGE021
={1,2,3},相应的向量空间将只有3列而不是443。
除此之外,在同一步骤中,将时间戳转换为3个特性:星期几、小时和分钟。
在第3步中,从数据源和/或分布式存储中获取日志,并标准化成对象日志格式OLF和创建N个训练样本;在这里将详细介绍大数据量的问题,其思想是避免利用海量数据来训练单一模型。相反,本申请生成多个更小的样本(例如,N个训练样本),每个样本用于训练不同的模型。这些模型的集合在步骤13之后被用来对数据进行协作预测。这使得(1)避免了大数据量的事件的聚类分析,(2)并行训练以减少分析时间,例如,采用MAP-REDUCE技术。
在第4步中,本申请将每个样本转换为向量空间模型,其中每个维度以对象日志格式表示之后的标准化字段的值。
假设日志数据经标准化之后的数据集为:
Figure 755502DEST_PATH_IMAGE025
={
Figure 423112DEST_PATH_IMAGE026
}
选择子集B⊂
Figure 893715DEST_PATH_IMAGE025
,其中B={
Figure 813129DEST_PATH_IMAGE027
},转换子集
Figure 632050DEST_PATH_IMAGE028
={
Figure 470562DEST_PATH_IMAGE029
}成稀疏矩阵
Figure 581125DEST_PATH_IMAGE030
=
Figure 163285DEST_PATH_IMAGE031
其中q=max(
Figure 774394DEST_PATH_IMAGE032
),以及
Figure 49387DEST_PATH_IMAGE033
=
Figure 381667DEST_PATH_IMAGE034
之后,水平地连接不同子集列的稀疏矩阵。它得到了一个含有p行(子集中的行数)且r=max(
Figure 642884DEST_PATH_IMAGE035
)+max(
Figure 233134DEST_PATH_IMAGE036
)+…+max(
Figure 679028DEST_PATH_IMAGE037
)列的矩阵。由于子集总是具有相同数量的行,而列的数量来自原始数据集,因此生成的稀疏矩阵对于所有子集都具有相同的维度。
在第5步中,在对样本进行聚类之前,本申请先确定最佳的聚类数量。为了确定一个最优聚类数k,首先选择若干个样本并用不同k对每个样本进行球面k-均值进行运算。当确定聚类时,本申请找到所有聚类的平均余弦相似性。
对于每一个子簇C⊂S,其中C={
Figure 498604DEST_PATH_IMAGE038
},找到列平均值的向量cm={
Figure 422566DEST_PATH_IMAGE039
Figure 70585DEST_PATH_IMAGE040
},并计算概念向量cv:
Cv=
Figure 562746DEST_PATH_IMAGE041
然后,对于每个簇的每一个簇行cr,计算其与概念向量的余弦相似性:
相似性=1-
Figure 552892DEST_PATH_IMAGE042
作为相似性度量,使用每一行的平均余弦相似性及其概念向量,对于定义的k:
相似性_观测=
Figure 155911DEST_PATH_IMAGE043
在尝试多个k值之后,得到了一组元组{k, 相似性_观测}。为了确定最优k,基于离散元组集计算插值函数的最大曲率点。此最大曲率点可能表示最佳k值。
下面计算每个离散点(元组{k, 相似性_观测})的二阶方差:
Figure 986333DEST_PATH_IMAGE044
=
Figure 511380DEST_PATH_IMAGE045
+
Figure 302618DEST_PATH_IMAGE046
这是一种非线性递推滤波的算法,本申请采用了非线性递推滤波算法(线性递推滤波算法,例如,卡尔曼滤波Kalman filtering)。
其中:
sm为相似性_观测,经在线运行非线性递推滤波算法得到k的最优值为max(
Figure 568383DEST_PATH_IMAGE047
)。
在第6和7步中,现在在所有训练样本上重复描述的聚类,即使用余弦相似性作为距离函数,以确定的k作为聚类数,运行球形k-均值。正如步骤5所述,找到每个簇的概念向量。
在第8步中,在k×N概念向量上训练一个具有径向核的单类支持向量机(one-class SVM with a radial kernel),该概念向量表征了在3步中生成的所有训练样本。
在第9-12步中,完成第3-8步后,将执行第9-12步(可以与第3-8步并行执行)。第3-8步的唯一区别是,现在对所有数据执行分析,而不是只对训练样本进行分析。在第9步中,本申请创建M个子集,其大小等于训练样本的大小,这样每个子集的簇和概念向量的数量就等于在训练阶段。
在第13步中,本申请将N个单类支持向量机模型应用于每个子集的概念向量。基于不同训练样本而被训练的每一个模型,如果分析的概念向量被分类为异常值,则返回0。模型归类同一概念向量为异常值的越多,则概念向量描述一组不寻常的事件的概率就越高。
在第14步中,只选择那些异常簇,其概念向量被所有模型分类为异常值。
在第15步中,本申请需要缩放N个支持向量机模型的决策值,以便能够针对选定的异常值(聚类)进行概括总结,因为训练在不同样本上的支持向量机模型将产生具有不同尺度的决策值。
设将SVM模型中的决策值表示为矩阵:
Figure 128678DEST_PATH_IMAGE048
=
Figure 824626DEST_PATH_IMAGE049
其中矩阵中的元素是支持向量机决策值,t是离群值的数量。现在,使用函数f: R→R,通过标准偏差来缩放决策值,其中:
f(
Figure 103160DEST_PATH_IMAGE050
)=
Figure 172616DEST_PATH_IMAGE051
Figure 525100DEST_PATH_IMAGE052
是矩阵DV的第j列的标准偏差,因此
Figure 719846DEST_PATH_IMAGE052
=
Figure 220097DEST_PATH_IMAGE053
缩放后得到矩阵:
Figure 640714DEST_PATH_IMAGE054
=
Figure DEST_PATH_IMAGE055
其中:
Figure 487185DEST_PATH_IMAGE056
=f(
Figure 388584DEST_PATH_IMAGE050
)。并且,并从不同的支持向量机模型SumDV={
Figure DEST_PATH_IMAGE057
Figure 563082DEST_PATH_IMAGE058
,…,
Figure DEST_PATH_IMAGE059
},其中
Figure 39587DEST_PATH_IMAGE060
=
Figure DEST_PATH_IMAGE061
,为每一个异常值获取一组汇总的尺度决策值。
在16步中,根据算法返回包含的可疑事件,这些可疑事件由决策值之和SumDV进行排序;也就是说,给出所检测的未知的网络攻击或已知的网络攻击的排序。
本申请解决了SIEM***异常检测的一系列问题。向量空间支持文本数据的处理;结合k均值聚类算法和svm算法允许将事件簇作为异常返回;样本训练和支持向量机允许处理更大的数据量,并使本申请算法可扩展,因为大多数步骤可以并行执行;以及结果排序简化了SIEM***操作员的分析。该算法适用于任何类型的数据,无需任何特殊特征选择。但是算法的第4步和第10步(转换为向量空间表示法)只能在分析数据集仅包含文本/分类数据的情况下应用。但是,如果数据集还包含连续的数值特征,则这些特征不能转换为稀疏矩阵,因为唯一值的数量变为无限。因此,为使该算法适用于任何数据,还必须对连续数字特征进行离散化(数值解法)。
以上所述仅为本发明的较佳实施例,并非用来限定本发明的实施范围;凡是依本发明所作的等效变化与修改,都被视为本发明的专利范围所涵盖。

Claims (2)

1.一种面向中小企业网络安全事件复杂分析的方法,其特征在于,能够应用于海量数据的异常检测,能够检测未知的网络攻击或已知的网络攻击,并给出这些网络攻击的排序,使得安全运维服务人员集中精力处理排名靠前的网络攻击;
所述方法,还包括如下步骤:
第1步:从数据源采集原始日志数据,并将所采集的原始日志数据进行分布式存储和转发到内存数据库中,将内存数据库中的日志数据字段标准化成对象日志格式OLF,从内存数据库中选择相关数据进行分析;
第2步:将所采集的原始日志数据不作任何预处理进行分布式存储;
第3步:从数据源和/或分布式存储中获取日志,并标准化成对象日志格式OLF和创建N个训练样本;
第4步:将每个样本转换为向量空间模型,其中每个维度以对象日志格式OLF表示之后的标准化字段的值;
第5步:在对样本进行聚类之前,采用基于{k,相似性_观测}的离散元组集计算插值函数的最大曲率点的方法,来确定最佳的聚类数量k,所述最大曲率点,为所述最佳的聚类数量k;
第6步:对于每一个样本,运行球面k-means,以发现聚类,所述球面k-means,即具有余弦相似性的k-means算法,是高维聚类的常用方法;
第7步:对于发现的聚类,计算每一个聚类的概念向量;
第8步:在概念向量上,训练径向核单类SVM;
第9步:从数据源和/或分布式存储中获取日志并将日志数据标准化成对象日志格式OLF 和分成与训练样本相等数据量的M个子集;
第10步:将每一个子集转换成以向量空间表示;
第11步:对于每一个子集,运行球面k-means,以发现聚类;
第12步:对于发现的聚类,计算每一个聚类的概念向量;
第13步:将N个单类SVM模型应用于每个子集的概念向量以发现可疑聚类;
第14步:只选择那些可疑聚类,其概念向量被所有模型分类为异常值;
第15步:缩放N个SVM模型的决策值,以便能够针对选定的异常值进行概括总结,因为训练在不同样本上的SVM模型将产生具有不同尺度的决策值;
第16步:返回包含的可疑事件,这些可疑事件由集合SumDV的决策值之和排序,也就是说,给出所检测的未知的网络攻击或已知的网络攻击的排序,所述DV,为一个矩阵,其中的矩阵元素是SVM决策值;
所述对象日志格式OLF,包括:event_id、subjectuser_username、targetuser_username、net_src_ipv4、net_src_host、net_src_port、producer_host、net_dst_ipv4、net_dst_host、net_dst_port、tag_action、tag_status、file_path、event_type_id,以及time;
所述分布式存储,采用P2P架构,这样的架构可以解决大数据量和存储可扩展的问题,这些原始日志数据包含文本字段,因此在进行数据分析时,需要进一步规范化这些数据,这一规范化后的过程将文本字段映射到数字,并缩小可能值的范围,以及转换为向量空间;
所述创建N个训练样本,避免利用海量数据来训练单一模型,相反,生成多个更小的N个训练样本,每个样本用于训练不同的模型,这些模型的集合在所述的第13步之后被用来对数据进行协作预测,这使得(1)避免了大数据量的事件的聚类分析,(2)并行训练以减少分析时间;
所述相似性_观测,
Figure FDA0003665280600000021
相似性i,其中,p为每个簇中的行数,t为样本的数量;
所述相似性i
Figure FDA0003665280600000031
其中,cri为每个簇的第i个行;
所述cv,
Figure FDA0003665280600000032
其中,
Figure FDA0003665280600000033
Figure FDA0003665280600000034
为每个簇C={sc1,sc2,sc3,…,scr}的列平均值的向量;
所述运行球面k-means,即使用余弦相似性作为距离函数,以已确定的最佳k作为聚类数,运行球面k-means,以发现聚类;
所述训练径向核单类SVM,在k×N概念向量上训练一个具有径向核的单类SVM,所述概念向量表 征了在所述第3步中生成的所有训练样本;
所述分成与训练样本相等数据量的M个子集,创建M个子集,其子集的大小等于训练样本的大小,这样每个子集的聚类数和概念向量数就与训练阶段相同;
所述将N个单类SVM模型应用于每个子集的概念向量,基于不同训练样本而被训练的每一个模型,如果分析的概念向量被分类为异常值,则返回0,模型归类同一概念向量为异常值的越多,则概念向量描述一组不寻常的事件的概率就越高。
2.如权利要求1所述一种面向中小企业网络安全事件复杂分析的方法,其特征在于,所述第9、10、11、12步,能够与第3、4、5、6、7、8步并行地执行,第3、4、5、6、7、8步只对训练样本进行分析,而第9、10、11、12步则对所有数据执行分析。
CN202011560222.0A 2020-12-25 2020-12-25 一种面向中小企业网络安全事件复杂分析的方法 Active CN112583847B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011560222.0A CN112583847B (zh) 2020-12-25 2020-12-25 一种面向中小企业网络安全事件复杂分析的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011560222.0A CN112583847B (zh) 2020-12-25 2020-12-25 一种面向中小企业网络安全事件复杂分析的方法

Publications (2)

Publication Number Publication Date
CN112583847A CN112583847A (zh) 2021-03-30
CN112583847B true CN112583847B (zh) 2022-08-05

Family

ID=75140528

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011560222.0A Active CN112583847B (zh) 2020-12-25 2020-12-25 一种面向中小企业网络安全事件复杂分析的方法

Country Status (1)

Country Link
CN (1) CN112583847B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115906927B (zh) * 2022-11-29 2023-11-03 北京国联视讯信息技术股份有限公司 基于人工智能的数据访问分析方法、***及云平台
CN116827697B (zh) * 2023-08-30 2023-11-03 北京安天网络安全技术有限公司 网络攻击事件的推送方法、电子设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104967535A (zh) * 2015-06-09 2015-10-07 南京联成科技发展有限公司 一种应用于信息安全运维管理的大数据分析
CN106713324A (zh) * 2016-12-28 2017-05-24 北京奇艺世纪科技有限公司 一种流量检测方法及装置
CN111090050A (zh) * 2020-01-21 2020-05-01 合肥工业大学 一种基于支持向量机和k均值的锂电池故障诊断方法
CN111259985A (zh) * 2020-02-19 2020-06-09 腾讯科技(深圳)有限公司 基于业务安全的分类模型训练方法、装置和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160352759A1 (en) * 2015-05-25 2016-12-01 Yan Zhai Utilizing Big Data Analytics to Optimize Information Security Monitoring And Controls

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104967535A (zh) * 2015-06-09 2015-10-07 南京联成科技发展有限公司 一种应用于信息安全运维管理的大数据分析
CN106713324A (zh) * 2016-12-28 2017-05-24 北京奇艺世纪科技有限公司 一种流量检测方法及装置
CN111090050A (zh) * 2020-01-21 2020-05-01 合肥工业大学 一种基于支持向量机和k均值的锂电池故障诊断方法
CN111259985A (zh) * 2020-02-19 2020-06-09 腾讯科技(深圳)有限公司 基于业务安全的分类模型训练方法、装置和存储介质

Also Published As

Publication number Publication date
CN112583847A (zh) 2021-03-30

Similar Documents

Publication Publication Date Title
US11811805B1 (en) Detecting fraud by correlating user behavior biometrics with other data sources
US10992675B2 (en) Anomaly detection using tripoint arbitration
Hosseini et al. Anomaly process detection using negative selection algorithm and classification techniques
US11372956B2 (en) Multiple input neural networks for detecting fraud
US20210385253A1 (en) Cluster detection and elimination in security environments
US11797705B1 (en) Generative adversarial network for named entity recognition
Jiang et al. A family of joint sparse PCA algorithms for anomaly localization in network data streams
Sapegin et al. Towards a system for complex analysis of security events in large-scale networks
CN112583847B (zh) 一种面向中小企业网络安全事件复杂分析的方法
EP3742700B1 (en) Method, product, and system for maintaining an ensemble of hierarchical machine learning models for detection of security risks and breaches in a network
Xia et al. LogGAN: A sequence-based generative adversarial network for anomaly detection based on system logs
US11315010B2 (en) Neural networks for detecting fraud based on user behavior biometrics
US20180300572A1 (en) Fraud detection based on user behavior biometrics
Wang et al. A Log‐Based Anomaly Detection Method with Efficient Neighbor Searching and Automatic K Neighbor Selection
Koucham et al. Host intrusion detection using system call argument-based clustering combined with Bayesian classification
Liu et al. Mltracer: Malicious logins detection system via graph neural network
Juvonen et al. Adaptive framework for network traffic classification using dimensionality reduction and clustering
Kumar et al. A semantic machine learning algorithm for cyber threat detection and monitoring security
Harbola et al. Improved intrusion detection in DDoS applying feature selection using rank & score of attributes in KDD-99 data set
Alhakami Alerts clustering for intrusion detection systems: overview and machine learning perspectives
RU180789U1 (ru) Устройство аудита информационной безопасности в автоматизированных системах
CN112306820A (zh) 一种日志运维根因分析方法、装置、电子设备及存储介质
Sapegin et al. Evaluation of in‐memory storage engine for machine learning analysis of security events
Vinutha et al. Analysis of NSL-KDD dataset using K-means and canopy clustering algorithms based on distance metrics
CN111475380B (zh) 一种日志分析方法和装置

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