CN115794563B - 一种系统审计日记的降噪方法、装置、设备及可读介质 - Google Patents
一种系统审计日记的降噪方法、装置、设备及可读介质 Download PDFInfo
- Publication number
- CN115794563B CN115794563B CN202310064334.4A CN202310064334A CN115794563B CN 115794563 B CN115794563 B CN 115794563B CN 202310064334 A CN202310064334 A CN 202310064334A CN 115794563 B CN115794563 B CN 115794563B
- Authority
- CN
- China
- Prior art keywords
- rule
- cluster
- field
- noise reduction
- audit log
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种系统审计日志的降噪方法、装置、设备及可读介质,包括:将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段;将不同事件类型的系统事件基于第一字段进行分组,并在每个分组基于第二字段进行相似度的聚合,计算每个簇的簇代表,同时对同组内的簇进行合并;分别基于每个簇的簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及对数据源收集的审计日志数据基于规则数据库中的降噪规则进行匹配,若匹配成功则确认审计日志数据为噪声数据。本发明涉及计算机安全技术领域,在业务变更时无需人工干预,保证过滤过程高效执行,降低开销。
Description
技术领域
本发明涉及计算机安全技术领域,尤其涉及一种系统审计日志的降噪方法、装置、设备及可读介质。
背景技术
常见的计算机操作系统一般会提供系统审计服务或相关工具,例如Windows系统的winaudit、sysmon、etw,Linux系统的linuxaudit等,以记录操作系统事件的发生时间和具体内容,例如进程创建、网络链接、文件读写等。一个计算机主机安全技术中常用的工具是日志收集器程序,日志收集器程序安装在需要被监控的主机上,持续地从主机操作系统提供的多种审计服务中获取大量不同类型的系统审计日志,并转发到日志存储服务器上,便于后续的异常检测、威胁分析和溯源等主机安全任务。
然而,如果不对日志收集器程序的日志转发过程加以限制,一天内传输的数据量会达到数十或数百GB,并且这些数据中绝大部分都是对主机安全任务无用的噪声数据;另外,通常一台日志存储服务器会接收上千或上万台安装了日志收集器程序的主机转发的日志信息。这样会导致转发日志时对网络带宽的大量占用可能挤占正常业务、日志存储服务器磁盘的大量占用使得能够保存日志的期限缩短、进行后续的主机安全任务时会被大量的噪声数据淹没使得相关任务的执行效率降低等问题。
因此,需要使用一些审计日志降噪方法干预日志收集器程序的日志转发过程,噪声数据会被过滤而不会被转发到日志存储服务器上。
目前常见的审计日志降噪方法包括基于白名单规则的、基于计数统计的和基于正则表达式的。基于白名单规则的降噪方法通过预先配置的过滤规则,当日志记录的某些字段的值再规则中,则不转发,否则照常转发,这种方法的缺点在于只要有业务变更的时候,就需要重新配置白名单规则。基于计数统计的降噪方法在日志收集器程序中维护一个统计表,记录日志中某些字段的值和出现的次数,如果出现次数超过预定值,则不会再转发相应的日志,这种方法的缺点在于,当统计表中条目过多,日志收集器将占用大量的内存去存储这个统计表,可能对正常业务造成影响。基于正则表达式的降噪方法存储一些预定义的正则表达式,如果日志内容符合正则表达式,将不被转发,这种方法的缺点在于,正则表达式过滤过程执行的效率过低,会对日志收集器程序产生交大的性能开销。
发明内容
基于上述目的,本发明实施例的一方面提供了一种系统审计日志的降噪方法,包括以下步骤:将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段;将不同事件类型的系统事件基于所述第一字段进行分组,并在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;分别基于每个簇的所述簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配,若匹配成功则确认所述审计日志数据为噪声数据,若匹配失败则将所述审计日志数据转发给日志存储服务器。
在一些实施方式中,方法还包括:将旧规则中的全等型规则合并至当前批次匹配失败的审计日志数据中,将所述审计日志数据与所述全等型规则合并进行分组分簇,将旧规则中的分段相似型规则合并至生成簇中,获取生成簇代表;基于簇的信息生成新的降噪规则,并比较新旧降噪规则以更新状态值,将新的规则写入规则数据库。
在一些实施方式中,方法还包括:在生成每个所述降噪规则时将每个所述降噪规则的状态值设置为初始状态;响应于所述规则数据库接收到待存储的降噪规则,则判断所述待存储的降噪规则的状态值是否达到第一阈值;若是所述待存储的降噪规则的状态值达到第一阈值,则确认所述降噪规则稳定,并标记其不参与后续计算事件规则;若是所述待存储的降噪规则的状态值未达到第一阈值,则标记其参与后续计算事件规则。
在一些实施方式中,在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中包括:在每个分组中,将事件日志两两组对,并计算每对事件日志的所述第二字段的相似度;依次判断所述相似度是否高于第二阈值,将相似度高于第二阈值的事件日志对放入相同的簇内,将相似度不高于第二阈值的事件日志放入不同的簇内。
在一些实施方式中,计算每个簇的簇代表,同时对同组内的簇进行合并包括:计算每个簇的簇代表,并判断每个簇的簇代表是否为另一个簇的簇代表的子集;如果一个簇的簇代表为另一个簇的簇代表的子集,则将两个簇合并并重新计算簇代表。
在一些实施方式中,将符合要求的降噪规则存储到规则数据库中包括:判断簇中包含的日志数量是否超过第三阈值,若超过第三阈值则认为其对应的降噪规则为有效规则;判断簇中包含的日志数量是否超过第四阈值,若超过第四阈值则只保留第四阈值个簇,并只生成对应这些个簇的降噪规则。
在一些实施方式中,对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配包括:将数据源收集的审计日志数据存储在缓存中,并进行计数,完全一致的审计日志数据公用同一个计数器和缓存项;定时对所述缓存中的审计日志进行降噪规则匹配,获取规则中的首条规则作为当前规则,判断审计日志的第一字段是否与当前规则的第一字段相同;若审计日志的第一字段与当前规则的第一字段相同,则继续判断审计日志的第二字段是否与当前规则满足特定的相似关系,若审计日志的第二字段与当前规则满足特定的相似关系,则匹配成功,并将日志数量更新至规则数据库;若审计日志的第一字段与当前规则的第一字段不同或审计日志的第二字段与当前规则不满足特定的相似关系,则获取下一降噪规则并判断是否匹配直至与某一降噪规则匹配成功或逐个遍历规则库中的降噪规则。
本发明实施例的另一方面,还提供了一种系统审计日志的降噪装置,包括:第一模块,配置用于将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段;第二模块,配置用于将不同事件类型的系统事件基于所述第一字段进行分组,并在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;第三模块,配置用于分别基于每个簇的所述簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及第四模块,配置用于对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配,若匹配成功则确认所述审计日志数据为噪声数据,若匹配失败则将所述审计日志数据转发给日志存储服务器。
本发明实施例的再一方面,还提供了一种计算机设备,包括:至少一个处理器;以及存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述方法的步骤。
本发明实施例的再一方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有被处理器执行时实现如上方法步骤的计算机程序。
本发明至少具有以下有益技术效果:能够自动调整过滤规则,在业务变更时无需人工干预;并且占用被监控主机上极少量的内存,不会影响正常业务;另外,该方法保证过滤过程的高效执行,使得过滤本身的开销极小。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为本发明提供的系统审计日志的降噪方法的实施例的示意图;
图2为本发明提供的系统审计日志的降噪方法的实施例的示意图;
图3为本发明提供的实施例中降噪规则生成方法的示意图;
图4为本发明提供的实施例中降噪规则执行方法的示意图;
图5为本发明提供的系统审计日志的降噪装置的实施例的示意图;
图6为本发明提供的计算机设备的实施例的示意图;
图7为本发明提供的计算机可读存储介质的实施例的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
基于上述目的,本发明实施例的第一个方面,提出了系统审计日志的降噪方法的实施例。图1示出的是本发明提供的系统审计日志的降噪方法的实施例的示意图。如图1所示,本发明实施例的系统审计日志的降噪方法包括如下步骤:
001、将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段;
在本实施例中,日志存储服务器在接收来自日志收集器程序转发的审计日志数据后,针对日志数据中系统事件的不同类型进行分类,对于每种事件类型的字段都预先划分为第一字段、第二字段和第三字段,第一字段为重要字段集合(A类字段)、第二字段为次重要字段集合(B类字段),第三字段为非重要字段集合。
002、将不同事件类型的系统事件基于第一字段进行分组,并在每个分组基于第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;
在本实施例中,将不同事件类型的事件按照A类字段对应的字段值进行分组,在组内对于B类字段对应的字段值进行基于相似程度的聚合,即先计算B类字段的值的相似度,然后依据相似度将组内事件日志分别分到不同的簇内(簇即为比前述的组更小的分组单位),然后针对每个簇内事件数据的B类字段的字段值计算一个簇代表,对于同组内的簇,依照获得簇代表的方法尝试进行簇间合并。
003、分别基于每个簇的簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及
在本实施例中,对得到的每个簇,先获得簇中的所有事件的A类字段和值,然后将其与簇代表拼接成一条规则,并检查该规则是否满足可用规则的要求,如果满足,则输出为最终的规则(规则分为全等型规则和分段相似型规则),这些规则将被存储在服务器的规则数据库中,设置这一批规则的状态值为初始状态,并同时被传输至对应的主机上的日志收集器程序,日志收集器程序将依此对日志进行降噪。
004、对数据源收集的审计日志数据基于规则数据库中的降噪规则进行匹配,若匹配成功则确认审计日志数据为噪声数据,若匹配失败则将审计日志数据转发给日志存储服务器。
在本实施例中,日志收集器程序根据规则类型的不同,在从数据源收集日志、转发至日志存储服务器之前,检查是否完全符合全等型规则、或者在一定相似条件下符合分段相似型规则,如果两个条件满足其一,则该日志被当作噪声数据,不会被转发,而是通过侧数据通道向服务器的规则数据库里更新计数值;否则正常转发。
图2示出的是本发明提供的系统审计日志的降噪方法的实施例的示意图。如图2所示,日志收集器程序从审计日志源获取审计日志,传送至日志转发控制器中的缓冲区、并计数;降噪执行模块获取降噪规则之后,从缓冲区获取其中的日志项,并尝试将其与规则匹配,如果与其中任意一条规则匹配成功,则将匹配成功的规则和日志项的缓存计数更新至规则数据库,如果未能匹配,则将其正常转发至日志存储模块;降噪规则生成器中的智能降噪规则生成模块从日志存储模块中获得未能匹配规则的日志,计算新的降噪规则后,存储到规则数据库,同时传输至日志转发控制器。
在本发明的一些实施例中,将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段包括:根据安全语义进行划分。
在本实施例中,字段划分方法是依据安全语义的,重要字段(A类字段)的字段值中包含了用于后续的安全任务中更关键的信息,这些信息如果出现损失或者更改,其安全语义会发生重大变化;次重要字段(B类)字段中包含了那些即使有部分损失或更改,其安全语义不会发生重大变化。
在本实施例中,进程创建事件日志的A类字段集合为进程名称、进程文件路径、父进程名称、父进程文件路径,B类字段为进程创建时使用的命令行命令文本,其他字段均为非重要字段。
在本实施例中,网络连接事件日志的A类字段为产生网络连接的进程名称、产生网络连接的进程文件路径、网络连接的目的端口、网络连接的协议类型、机器自身的用于网络连接的IP地址,B类字段为日志记录网络连接另一方的IP地址,其他字段均为非重要字段。
在本发明的一些实施例中,方法还包括:将旧规则中的全等型规则合并至当前批次匹配失败的审计日志数据中,将审计日志数据与全等型规则合并进行分组分簇,将旧规则中的分段相似型规则合并至生成簇中,获取生成簇代表;基于簇的信息生成新的降噪规则,并比较新旧降噪规则以更新状态值,将新的规则写入规则数据库。
在本实施例中,对于降噪后仍然被转发的日志数据中,如果符合条件,则需要被进一步合并到规则数据库中,因此,持续计算这些事件的规则时,先从规则数据库里获得上次存储的规则,将其中的全等型规则和分段相似型规则分开,将全等型规则和这些仍被转发的日志数据合并,并使用步骤001、步骤002中相同的方法计算簇,然后将上次存储的分段相似型规则与这些簇进行合并,然后使用与步骤003中相同的方法选择和传输规则,在存储规则的时候,如果这批规则相较于上次存储的没有发生变化,则将这批规则的状态值在原值的基础上加1,否则设置为0。
图3示出的是本发明提供的实施例中降噪规则生成方法的示意图。如图3所示,为了更清楚地描述这一过程,分别使用两种事件类型来举例说明,其他事件类型与其相同或类似。
在本实施例中,以事件类型为进程创建为例,包括以下步骤:
获取这一批次的数据和相应的存储在规则数据库中上一次的规则数据,将规则数据库中存储的规则数据分为全等型规则和分段相似型规则,并将全等型规则与这批次的数据合并;合并的数据中,对路径相关字段进行链接目录替换,例如将“/usr/bin”替换为“/bin”、/usr/sbin”替换为“/sbin”等,然后对命令行字符串进行正则表达式的识别,例如将数字全部删除;
合并后的数据按照进程创建事件的A类字段进行分组,即进程名称、进程文件路径、父进程名称、父进程文件路径,即在每一组内的日志数据的进程名称、进程文件路径、父进程名称、父进程文件路径的值都相同,不同组内的则不同;
在每一组内,对进程创建事件的B类字段,即命令行字符串,计算字面的编辑距离相似度,并依据相似度聚类,即相似度超过90%的那些数据被聚类至同一个簇,聚类得到多个簇,计算这些簇的簇代表,计算簇代表的方案选择为命令行字符串的字面值的最长公共子序列;
这些簇代表与旧规则数据中的分段相似型规则进行合并,即如果某一簇的簇代表或者某条规则与另一簇代表或者规则满足:A类字段值完全相等,B类字段值为字面的字符串子序列关系,则将二者进行合并,合并后的簇代表也计算二者字面值的最长公共子序列得到;
将这些簇代表结合簇的信息转化为新的规则,即构建一个包含与簇内A类字段值相同、与簇代表B类字段值相同的规则项,并且该规则项的规则类型由簇内数据的个数决定,如果簇内数据的独特值只有一个,则该规则为全等型规则,否则为分段相似型规则;
比较新旧规则,如果相同则状态值累加1,否则设置为0;将这些规则和状态值写入规则数据库,并传输相应的日志收集器程序。
在本实施例中,以事件类型为网络连接为例,包括以下步骤:
获取这一批次的数据和相应的存储在规则数据库中上一次的规则数据,将规则数据库中存储的规则数据分为全等型规则和分段相似型规则,并将全等型规则与这批次的数据合并;根据网络连接的方向、连接源IP地址和目的IP地址,获取自身IP地址和对方IP地址;
合并后的数据按照网络连接事件的A类字段进行分组,即进程名称、产生网络连接的进程文件路径、网络连接的目的端口、网络连接的协议类型和机器自身的用于网络连接的IP地址,即在每一组内的日志数据的进程名称、产生网络连接的进程文件路径、网络连接的目的端口、网络连接的协议类型、机器自身的用于网络连接的IP地址的值都相同,不同组内的则不同;
在每一组内,对网络连接事件的B类字段,即网络连接另一方的IP地址,计算子网逻辑举例相似度,并依据相似度聚类,即相似度超过90%的那些数据被聚类至同一个簇,聚类得到多个簇,计算这些簇的簇代表,计算簇代表的方案选择为一系列IP地址的最长公共前缀;
这些簇代表与旧规则数据中的分段相似型规则进行合并;
将这些簇代表结合簇的信息转化为新的规则,即构建一个包含与簇内A类字段值相同、与簇代表B类字段值相同的规则项,并且该规则项的规则类型由簇内数据的个数决定,如果簇内数据的独特值只有一个,则该规则为全等型规则,否则为分段相似型规则;
比较新旧规则,如果相同则状态值累加1,否则设置为0;将这些规则和状态值写入规则数据库,并传输相应的日志收集器程序。
在本发明的一些实施例中,方法还包括:在生成每个降噪规则时将每个降噪规则的状态值设置为初始状态;响应于规则数据库接收到待存储的降噪规则,则判断待存储的降噪规则的状态值是否达到第一阈值;若是待存储的降噪规则的状态值达到第一阈值,则确认降噪规则稳定,并标记其不参与后续计算事件规则;若是待存储的降噪规则的状态值未达到第一阈值,则标记其参与后续计算事件规则。
在本实施例中,当存储规则至规则数据库时,检查这批规则是否已经达到了预设的稳定状态值阈值,如果达到,则认为这批规则已经达到稳定状态,后续将不再参与计算事件规则,除非状态值发生改变并降至设的稳定状态值阈值以下;另外,为了应对可能发生的业务变化,定时修改规则的状态值,并依据上一步骤重新计算事件规则。
在本实施例中,当存储规则到数据库的时候,需要检查这批规则是否已经达到预设的稳定状态值阈值,例如该值可以设置为2,如果达到,则在后续过程中不再计算,直到其状态值小于预设的稳定状态值阈值;为了应对可能发生的业务变化,定时修改规则的状态值;例如定时周期可以设置为24小时,每次将所有规则的状态值修改为预设的稳定状态值阈值减1,并使用上一步骤中的方法更新规则。
在本发明的一些实施例中,在每个分组基于第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中包括:在每个分组中,将事件日志两两组对,并计算每对事件日志的第二字段的相似度;依次判断相似度是否高于第二阈值,将相似度高于第二阈值的事件日志对放入相同的簇内,将相似度不高于第二阈值的事件日志放入不同的簇内。
在本实施例中,在每一组内,将事件日志两两组对,对每一对事件日志的B类字段的值计算相似度。
例如对于命令行命令文本字段,可以按照下列公式计算字面字符串编辑距离相似度,
例如IP地址字段,可以按照下列公式计算子网逻辑距离相似度,
在本实施例中,根据计算得到的相似度,将相似度高于设定阈值的一对事件日志放进同一个簇内,不高于阈值的放入不同的簇内;具体来说,对于每一对两两比较的事件日志,如果二者根据前述方法计算的相似度结果超过阈值,则将二者放入同一个簇中,如果某一事件日志和已有的任何一个簇中的任何一个事件日志的相似度都达不到,则建立一个新的簇。
在本发明的一些实施例中,计算每个簇的簇代表,同时对同组内的簇进行合并包括:计算每个簇的簇代表,并判断每个簇的簇代表是否为另一个簇的簇代表的子集;如果一个簇的簇代表为另一个簇的簇代表的子集,则将两个簇合并并重新计算簇代表。
在本实施例中,计算簇代表,即使用一种能够合并多个同类型值的聚合函数以计算该簇中的数据的共同特征,簇代表包含的字段与簇内各事件数据的B类字段相同,并且簇代表的字段的值与簇内每一事件数据拥有同样的强相似关系。
例如可以按照如下方式计算一系列字符串的最长公共子序列以作为一簇的簇代表,
例如可以按照如下方式计算一系列IP地址的最长公共前缀以作为一簇的簇代表,
进行同组内的簇间合并,进行簇间合并的方法取决于计算簇代表的方法;如果使用计算一系列字符串的最长公共子序列以作为一簇的簇代表的方法,则相应的簇间合并方法即为检查是否有某个簇的簇代表是另一个簇的簇代表的子序列,如果有,则将两个簇重新使用计算簇代表的方法合并。
在本发明的一些实施例中,将符合要求的降噪规则存储到规则数据库中包括:判断簇中包含的日志数量是否超过第三阈值,若超过第三阈值则认为其对应的降噪规则为有效规则;判断簇中包含的日志数量是否超过第四阈值,若超过第四阈值则只保留第四阈值个簇,并只生成对应这些个簇的降噪规则。
在本实施例中,由于簇是在组中划分得到的,而每个组中的所有日志数据的第一字段的值完全相同,因此簇中所有日志数据的第一字段的值也完全相同;簇代表是由簇中数据的第二字段值通过前述的聚合方法得到的,一个簇的簇代表包含了所有的第二字段,将簇内数据的第一字段的值和簇代表包含的第二字段的值拼合成一条规则;由于簇代表的字段的值与簇内每一事件数据拥有同样的强相似关系,这条规则与该簇内所有数据也拥有同样的强相似关系;如果这个簇中包含的日志数据的数量超过了预定义的最小条数,则其对应的规则认为是有效的规则;如果有需要,还可以预定义一个事件类型的数据中最大的簇的数量,如果一个事件类型中的簇的数量超过了该值,则只保留簇内日志数据条数最多的个簇,并只生成对应这些簇的规则;这些规则存储在服务器的规则数据库中,存储时标记其状态值为初始状态0;这些规则也通过网络传输至对应的主机上的日志收集器程序,后者接收规则之后,按照这些规则对后续的日志进行降噪,即符合这些规则的日志不被转发到日志存储服务器。
在本发明的一些实施例中,对数据源收集的审计日志数据基于规则数据库中的降噪规则进行匹配包括:将数据源收集的审计日志数据存储在缓存中,并进行计数,完全一致的审计日志数据公用同一个计数器和缓存项;定时对缓存中的审计日志进行降噪规则匹配,获取规则中的首条规则作为当前规则,判断审计日志的第一字段是否与当前规则的第一字段相同;若审计日志的第一字段与当前规则的第一字段相同,则继续判断审计日志的第二字段是否与当前规则满足特定的相似关系,若审计日志的第二字段与当前规则满足特定的相似关系,则匹配成功,并将日志数量更新至规则数据库;若审计日志的第一字段与当前规则的第一字段不同或审计日志的第二字段与当前规则不满足特定的相似关系,则获取下一降噪规则并判断是否匹配直至与某一降噪规则匹配成功或逐个遍历规则库中的降噪规则。
在本实施例中,日志收集器程序先将从数据源收集到的日志存储在缓存中,如果这些日志包含的信息完全一致,则将其进行计数,每一组完全一致的日志公用一个计数器和一个缓存项;定时地对缓存中的日志进行规则匹配,对于下发的所有规则,先匹配日志中的第一字段是否和规则的一致,只有第一字段的值相同,才会匹配第二字段,如果没有规则的第二字段与日志数据相同,则认为该日志未匹配任何规则;如果日志中的第一字段值相同,则使用与生成簇代表相关联的方法匹配第二字段;例如,计算一系列字符串的最长公共子序列生成簇代表的方法对应的匹配方法为检测规则中的第二字段的值是否为日志中同样字段的字符串子序列;例如,计算一系列IP地址的最长公共前缀生成簇代表的方法对应的匹配方法为检测规则中的第二字段的值是否为日志中同样字段的IP地址的前缀;任意一条规则匹配该日志则认为匹配成功,否则认为该日志未匹配任何规则;如果该日志与任意规则匹配成功,则认为其为噪音数据,不会被转发至日志存储服务器,而是通过其他信道将匹配规则和计数值更新到规则数据库里对应的规则中;如果该日志没有任何可匹配的规则,则正常转发至日志存储服务器。
图4示出的是本发明提供的实施例中降噪规则执行方法的示意图。如图4所示,为了更清楚地描述这一过程,分别使用两种事件类型来举例说明,其他事件类型与其相同或类似。
在本实施例中,以事件类型为进程创建为例,包括以下步骤:
收到来自降噪规则生成的规则后,将日志数据缓冲区中的日志项和相应的计数值取出,对于每一条规则,先检验进程创建事件的A类字段,即进程名称、进程文件路径、父进程名称、父进程文件路径是否相同,如果不同,则继续检验下一条规则;
如果A类字段相同,再检测该规则的B类字段,即命令行字符串的最长公共子序列,是否为日志数据的命令行字符串字段值的子序列,如果不是,则继续检验下一条规则,如果是,则说明规则匹配;
如果检验完所有规则,都没有发现匹配规则,则认为该日志无法被匹配,将数据正常转发到日志存储服务器;如果有任意规则被匹配,则将该规则和计数值更新到规则数据库。
在本实施例中,以事件类型为网络连接为例,包括以下步骤:
收到来自降噪规则生成的规则后,将日志数据缓冲区中的日志项和相应的计数值取出,对于每一条规则,先检验网络连接事件的A类字段,即进程名称、产生网络连接的进程文件路径、网络连接的目的端口、网络连接的协议类型、机器自身的用于网络连接的IP地址是否相同,如果不同,则继续检验下一条规则;
如果A类字段相同,再检测该规则的B类字段,即网络连接另一方的IP地址的最长公共前缀,是否为日志数据的即网络连接另一方的IP地址的值的前缀,如果不是,则继续检验下一条规则,如果是,则说明规则匹配;
如果检验完所有规则,都没有发现匹配规则,则认为该日志无法被匹配,将数据正常转发到日志存储服务器;如果有任意规则被匹配,则将该规则和计数值更新到规则数据库。
需要特别指出的是,上述系统审计日志的降噪方法的各个实施例中的各个步骤均可以相互交叉、替换、增加、删减,因此,这些合理的排列组合变换之于系统审计日志的降噪方法也应当属于本发明的保护范围,并且不应将本发明的保护范围局限在实施例之上。
基于上述目的,本发明实施例的第二个方面,提出了一种系统审计日志的降噪装置。图5示出的是本发明提供的系统审计日志的降噪装置的实施例的示意图。如图5所示,本发明实施例的系统审计日志的降噪装置包括如下模块:第一模块011,配置用于将审计日志数据中每种事件类型的系统事件的字段基于重要程度划分为第一字段、第二字段和第三字段;第二模块012,配置用于将不同事件类型的系统事件基于第一字段进行分组,并在每个分组基于第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;第三模块013,配置用于分别基于每个簇的簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及第四模块014,配置用于对数据源收集的审计日志数据基于规则数据库中的降噪规则进行匹配,若匹配成功则确认审计日志数据为噪声数据,若匹配失败则将审计日志数据转发给日志存储服务器。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图6示出的是本发明提供的计算机设备的实施例的示意图。如图6所示,本发明实施例的计算机设备包括如下装置:至少一个处理器021;以及存储器022,存储器022存储有可在处理器上运行的计算机指令023,指令由处理器执行时实现以上方法的步骤。
本发明还提供了一种计算机可读存储介质。图7示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图7所示,计算机可读存储介质031存储有被处理器执行时执行如上方法的计算机程序032。
最后需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,系统审计日志的降噪方法的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,程序的存储介质可为磁碟、光盘、只读存储记忆体(ROM)或随机存储记忆体(RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。
Claims (10)
1.一种系统审计日志的降噪方法,其特征在于,包括以下步骤:
将审计日志数据中每种事件类型的系统事件的字段基于安全语义和重要程度划分为第一字段、第二字段和第三字段,其中,所述第一字段为重要字段集合,所述第二字段为次重要字段集合,所述第三字段为非重要字段集合;
将不同事件类型的系统事件基于所述第一字段进行分组,并在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;
分别基于每个簇的所述簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及
对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配,若匹配成功则确认所述审计日志数据为噪声数据,若匹配失败则将所述审计日志数据转发给日志存储服务器。
2.根据权利要求1所述的系统审计日志的降噪方法,其特征在于,还包括:
将旧规则中的全等型规则合并至当前批次匹配失败的审计日志数据中,将所述审计日志数据与所述全等型规则合并进行分组分簇,将旧规则中的分段相似型规则合并至生成簇中,获取生成簇代表;
基于簇的信息生成新的降噪规则,并比较新旧降噪规则以更新状态值,将新的规则写入规则数据库。
3.根据权利要求2所述的系统审计日志的降噪方法,其特征在于,还包括:
在生成每个所述降噪规则时将每个所述降噪规则的状态值设置为初始状态;
响应于所述规则数据库接收到待存储的降噪规则,则判断所述待存储的降噪规则的状态值是否达到第一阈值;
若是所述待存储的降噪规则的状态值达到第一阈值,则确认所述降噪规则稳定,并标记其不参与后续计算事件规则;
若是所述待存储的降噪规则的状态值未达到第一阈值,则标记其参与后续计算事件规则。
4.根据权利要求1所述的系统审计日志的降噪方法,其特征在于,在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中包括:
在每个分组中,将事件日志两两组对,并计算每对事件日志的所述第二字段的相似度;
依次判断所述相似度是否高于第二阈值,将相似度高于第二阈值的事件日志对放入相同的簇内,将相似度不高于第二阈值的事件日志放入不同的簇内。
5.根据权利要求1所述的系统审计日志的降噪方法,其特征在于,计算每个簇的簇代表,同时对同组内的簇进行合并包括:
计算每个簇的簇代表,并判断每个簇的簇代表是否为另一个簇的簇代表的子集;
如果一个簇的簇代表为另一个簇的簇代表的子集,则将两个簇合并并重新计算簇代表。
6.根据权利要求1所述的系统审计日志的降噪方法,其特征在于,将符合要求的降噪规则存储到规则数据库中包括:
判断簇中包含的日志数量是否超过第三阈值,若超过第三阈值则认为其对应的降噪规则为有效规则;
判断簇中包含的日志数量是否超过第四阈值,若超过第四阈值则只保留第四阈值个簇,并只生成对应这些个簇的降噪规则。
7.根据权利要求1所述的系统审计日志的降噪方法,其特征在于,对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配包括:
将数据源收集的审计日志数据存储在缓存中,并进行计数,完全一致的审计日志数据公用同一个计数器和缓存项;
定时对所述缓存中的审计日志进行降噪规则匹配,获取规则中的首条规则作为当前规则,判断审计日志的第一字段是否与当前规则的第一字段相同;
若审计日志的第一字段与当前规则的第一字段相同,则继续判断审计日志的第二字段是否与当前规则满足特定的相似关系,若审计日志的第二字段与当前规则满足特定的相似关系,则匹配成功,并将日志数量更新至规则数据库;
若审计日志的第一字段与当前规则的第一字段不同或审计日志的第二字段与当前规则不满足特定的相似关系,则获取下一降噪规则并判断是否匹配直至与某一降噪规则匹配成功或逐个遍历规则库中的降噪规则。
8.一种系统审计日志的降噪装置,其特征在于,包括:
第一模块,配置用于将审计日志数据中每种事件类型的系统事件的字段基于安全语义和重要程度划分为第一字段、第二字段和第三字段,其中,所述第一字段为重要字段集合,所述第二字段为次重要字段集合,所述第三字段为非重要字段集合;
第二模块,配置用于将不同事件类型的系统事件基于所述第一字段进行分组,并在每个分组基于所述第二字段进行相似度的聚合以将组内的事件日志分别分到不同的簇中,计算每个簇的簇代表,同时对同组内的簇进行合并;
第三模块,配置用于分别基于每个簇的所述簇代表和簇中所有系统事件的第一字段拼接形成一条降噪规则,将符合要求的降噪规则存储到规则数据库中;以及
第四模块,配置用于对数据源收集的审计日志数据基于所述规则数据库中的降噪规则进行匹配,若匹配成功则确认所述审计日志数据为噪声数据,若匹配失败则将所述审计日志数据转发给日志存储服务器。
9. 一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-7任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-7任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310064334.4A CN115794563B (zh) | 2023-02-06 | 2023-02-06 | 一种系统审计日记的降噪方法、装置、设备及可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310064334.4A CN115794563B (zh) | 2023-02-06 | 2023-02-06 | 一种系统审计日记的降噪方法、装置、设备及可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115794563A CN115794563A (zh) | 2023-03-14 |
CN115794563B true CN115794563B (zh) | 2023-04-11 |
Family
ID=85429881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310064334.4A Active CN115794563B (zh) | 2023-02-06 | 2023-02-06 | 一种系统审计日记的降噪方法、装置、设备及可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794563B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111367874A (zh) * | 2020-02-28 | 2020-07-03 | 北京神州绿盟信息安全科技股份有限公司 | 一种日志处理方法、装置、介质和设备 |
CN112306787A (zh) * | 2019-07-24 | 2021-02-02 | 阿里巴巴集团控股有限公司 | 报错日志处理方法、装置、电子设备和智能音箱 |
CN112541074A (zh) * | 2019-09-20 | 2021-03-23 | 中兴通讯股份有限公司 | 日志解析方法、装置、服务器和存储介质 |
CN113626400A (zh) * | 2021-07-11 | 2021-11-09 | 南京理工大学 | 基于日志树和解析树的日志事件提取方法及系统 |
CN113778826A (zh) * | 2021-09-16 | 2021-12-10 | 北京天融信网络安全技术有限公司 | 一种日志处理方法及装置 |
CN114818643A (zh) * | 2022-06-21 | 2022-07-29 | 北京必示科技有限公司 | 一种保留特定业务信息的日志模板提取方法 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8209567B2 (en) * | 2010-01-28 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Message clustering of system event logs |
US20110239293A1 (en) * | 2010-03-24 | 2011-09-29 | Microsoft Corporation | Auditing access to data based on resource properties |
WO2016048283A1 (en) * | 2014-09-23 | 2016-03-31 | Hewlett Packard Enterprise Development Lp | Event log analysis |
US10795890B2 (en) * | 2015-02-25 | 2020-10-06 | Sumo Logic, Inc. | User interface for event data store |
US11727025B2 (en) * | 2015-04-03 | 2023-08-15 | Oracle International Corporation | Method and system for implementing a log parser in a log analytics system |
US9948678B2 (en) * | 2015-10-27 | 2018-04-17 | Xypro Technology Corporation | Method and system for gathering and contextualizing multiple events to identify potential security incidents |
US11042525B2 (en) * | 2017-04-04 | 2021-06-22 | Oracle International Corporation | Extracting and labeling custom information from log messages |
CN113342564B (zh) * | 2021-06-25 | 2023-12-12 | 阿波罗智联(北京)科技有限公司 | 日志审计方法、装置、电子设备和介质 |
-
2023
- 2023-02-06 CN CN202310064334.4A patent/CN115794563B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112306787A (zh) * | 2019-07-24 | 2021-02-02 | 阿里巴巴集团控股有限公司 | 报错日志处理方法、装置、电子设备和智能音箱 |
CN112541074A (zh) * | 2019-09-20 | 2021-03-23 | 中兴通讯股份有限公司 | 日志解析方法、装置、服务器和存储介质 |
CN111367874A (zh) * | 2020-02-28 | 2020-07-03 | 北京神州绿盟信息安全科技股份有限公司 | 一种日志处理方法、装置、介质和设备 |
CN113626400A (zh) * | 2021-07-11 | 2021-11-09 | 南京理工大学 | 基于日志树和解析树的日志事件提取方法及系统 |
CN113778826A (zh) * | 2021-09-16 | 2021-12-10 | 北京天融信网络安全技术有限公司 | 一种日志处理方法及装置 |
CN114818643A (zh) * | 2022-06-21 | 2022-07-29 | 北京必示科技有限公司 | 一种保留特定业务信息的日志模板提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115794563A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111565205B (zh) | 网络攻击识别方法、装置、计算机设备和存储介质 | |
CN114143020B (zh) | 一种基于规则的网络安全事件关联分析方法和系统 | |
US7937344B2 (en) | Machine data web | |
CN105812177A (zh) | 一种网络故障处理方法和处理设备 | |
CN112732655B (zh) | 针对无格式日志的在线解析方法及系统 | |
CN112306787B (zh) | 报错日志处理方法、装置、电子设备和智能音箱 | |
CN116415206B (zh) | 运营商多数据融合方法、系统、电子设备及计算机存储介质 | |
CN114153980A (zh) | 知识图谱构建方法和装置、检查方法、存储介质 | |
CN112564991A (zh) | 应用识别方法、装置及存储介质 | |
CN116521956A (zh) | 一种图数据库查询方法、装置、电子设备及存储介质 | |
CN115687432A (zh) | 用于监测异常交易数据的方法、设备和介质 | |
CN109741034B (zh) | 一种网格树形组织管理方法及装置 | |
CN115794563B (zh) | 一种系统审计日记的降噪方法、装置、设备及可读介质 | |
CN106446720A (zh) | Ids规则的优化系统及优化方法 | |
US12013855B2 (en) | Trimming blackhole clusters | |
CN111427871B (zh) | 数据处理方法、装置、设备 | |
CN109426576B (zh) | 容错处理方法以及容错组件 | |
US20060288020A1 (en) | Method and data structure for indexed storage of hierarchically interrelated information in a relational database | |
CN109522915B (zh) | 病毒文件聚类方法、装置及可读介质 | |
CN113986863A (zh) | 一种云平台错误日志分类的方法、装置、设备及可读介质 | |
CN114817171A (zh) | 一种埋点数据质量治理方法 | |
CN107888415B (zh) | 一种网管系统数据维护方法 | |
CN115629945A (zh) | 告警处理方法、装置以及电子设备 | |
CN113708959A (zh) | 一种规则库更新方法、装置及设备 | |
CN111552847A (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 |