首页 / 专利库 / 银行与财务事项 / 别名映射 / 安全日志采集解析方法、装置、设备及介质

安全日志采集解析方法、装置、设备及介质

阅读:8发布:2020-05-16

专利汇可以提供安全日志采集解析方法、装置、设备及介质专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种安全日志采集解析方法,涉及信息安全处理领域,其通过制定不同的解析规则,实现对不同格式的安全日志进行解析。该方法包括以下步骤:接收安全日志;根据制定的解析规则生成解析配置文件;利用所述解析配置文件解析所述安全日志,将解析后的安全日志进行存储。本发明还公开了一种安全日志采集分析装置、 电子 设备和计算机存储介质,以实现解析不同格式的安全日志。,下面是安全日志采集解析方法、装置、设备及介质专利的具体信息内容。

1.一种安全日志采集解析方法,其特征在于,包括以下步骤:
接收安全日志;
根据制定的解析规则生成解析配置文件;
利用所述解析配置文件解析所述安全日志,将解析后的安全日志进行存储。
2.如权利要求1所述的安全日志采集解析方法,其特征在于,根据不同类型的解析规则,使用YAML配置文件分别定义所述不同类型的解析规则,以生成不同类型的解析配置文件;所述解析配置文件包括配置文件的基本信息描述、grok解析规则定义、字段映射规则,或还包括别名转换规则、默认值处理规则、表达式展开规则中的任意一项或多项。
3.如权利要求1或2所述的安全日志采集解析方法,其特征在于,采用多线程执行所述解析配置文件解析所述安全日志的过程,所述解析配置文件解析所述安全日志的具体为:
使用解析配置文件中写入的解析规则,将所述安全日志解析成对象。
4.如权利要求3所述的安全日志采集解析方法,其特征在于,将安全日志解析成对象的过程包括:将所述安全日志进行grok解析、别名转换、字段映射、默认值处理、表达式展开,或者省略别名转换、默认值处理、表达式展开中的任意一个或多个步骤。
5.如权利要求1所述的安全日志采集解析方法,其特征在于,将解析后的安全日志放入存储队列进行存储。
6.如权利要求5所述的安全日志采集解析方法,其特征在于,批量获取解析后的安全日志,使用批处理和异步处理将所述解析后的安全日志存储到elasticsearch存储队列。
7.如权利要求1或6所述的安全日志采集解析方法,其特征在于,使用docker swarm或kubernetes分布式部署技术对安全日志进行批量解析。
8.一种安全日志采集解析装置,其特征在于,包括:
日志获取模,用于接收安全日志;
日志解析模块,用于根据解析规则生成解析配置文件,利用所述解析配置文件完成安全日志解析;
结果输出模块,用于输出安全日志解析结果并对所述安全日志解析结果进行存储。
9.一种电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的安全日志采集解析方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述的安全日志采集解析方法。

说明书全文

安全日志采集解析方法、装置、设备及介质

技术领域

[0001] 本发明涉及信息安全处理领域,尤其涉及一种安全日志采集解析方法、装置、设备及介质。

背景技术

[0002] Internet的飞速发展,为信息的传播和利用带来了极大的便利,同时也带来了信息安全问题。为了解决网络安全问题,安全厂商提供了各种各样的安全设备,如防火墙、入侵检测系统、安全审计系统等,但是随着安全设备的广泛部署,也带来了相应的问题,如连续运行的安全设备会产生海量的安全日志,对安全日志的分析工作十分繁复,并且不同安全厂商提供的不同安全设备产生的安全日志格式也是不同的,很难用统一的方法去分析和使用。
[0003] 而传统的日志分析方案一般是使用XML配置文件解析安全日志,但是使用XML配置文件解析安全日志存在以下问题:1.XML配置文件比较繁琐,不方便维护;2.XML配置文件的正则表达式和变量是分离的,且需要通过index指定,当日志过长时容易出错;3.开发成本相对较高,且配置文件不容易为人理解。

发明内容

[0004] 为了克服现有技术的不足,本发明的目的之一在于提供一种安全日志采集解析方法,通过灵活的制定解析规则,制定不同的解析配置文件去解析不同格式的安全日志,从而完成对不同格式的安全日志的解析和存储,使得安全日志分析工作更简单高效。
[0005] 本发明的目的之一采用以下技术方案实现:
[0006] 安全日志采集解析方法,包括以下步骤:
[0007] 接收安全日志;
[0008] 根据制定的解析规则生成解析配置文件;
[0009] 利用所述解析配置文件解析所述安全日志,将解析后的安全日志进行存储。
[0010] 进一步地,根据不同类型的解析规则,使用YAML配置文件分别定义所述不同类型的解析规则,以生成不同类型的解析配置文件;所述解析配置文件包括配置文件的基本信息描述、grok解析规则定义、字段映射规则,或还包括别名转换规则、默认值处理规则、表达式展开规则中的任意一项或多项。
[0011] 进一步地,采用多线程执行所述解析配置文件解析所述安全日志的过程,所述解析配置文件解析所述安全日志具体为:使用解析配置文件中写入的解析规则,将所述安全日志解析成对象。
[0012] 进一步地,将安全日志解析成对象的过程包括:将所述安全日志进行grok解析、别名转换、字段映射、默认值处理、表达式展开,或者省略别名转换、默认值处理、表达式展开中的任意一个或多个步骤。
[0013] 进一步地,将解析后的安全日志放入存储队列进行存储。
[0014] 进一步地,批量获取解析后的安全日志,使用批处理和异步处理将所述解析后的安全日志存储到elasticsearch存储队列。
[0015] 进一步地,使用docker swarm或kubernetes分布式部署技术对安全日志进行批量解析。
[0016] 本发明的目的之二在于提供一种安全日志采集解析装置,其通过定义解析规则,实现对不同格式的安全日志的统一解析。
[0017] 本发明的目的之二采用以下技术方案实现:
[0018] 安全日志采集解析装置,其包括:
[0019] 日志获取模,用于接收安全日志;
[0020] 日志解析模块,用于根据解析规则生成解析配置文件,利用所述解析配置文件完成安全日志解析;
[0021] 结果输出模块,用于输出安全日志解析结果并对所述安全日志解析结果进行存储。
[0022] 本发明的目的之三在于提供执行发明目的之一的电子设备,其包括处理器、存储介质以及计算机程序,所述计算机程序存储于存储介质中,所述计算机程序被处理器执行时实现上述的安全日志采集解析方法。
[0023] 本发明的目的之四在于提供存储发明目的之一的计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的安全日志采集解析方法。
[0024] 相比现有技术,本发明的有益效果在于:
[0025] 本发明通过灵活制定不同的解析规则以构成不同解析配置文件,根据不同的使用场景,采用不同解析文件解析日志,实现不同类型的安全日志的解析,并且实现将解析后的安全日志按照统一格式存储,为后续分析安全日志提供方便。并且采用多线程解析、批处理、异步插入等操作实现各种安全日志的高效处理。附图说明
[0026] 图1是本发明安全日志采集解析方法的流程图
[0027] 图2是实施例1中安全日志解析过程的示意图;
[0028] 图3是实施例2的安全日志采集解析装置的结构框图
[0029] 图4是实施例3的电子设备的结构框图。

具体实施方式

[0030] 以下将结合附图,对本发明进行更为详细的描述,需要说明的是,下参照附图对本发明进行的描述仅是示意性的,而非限制性的。各个不同实施例之间可以进行相互组合,以构成未在以下描述中示出的其他实施例。
[0031] 实施例1
[0032] 本实施例提供了一种安全日志采集解析方法,旨在根据不同场景和不同类型的安全日志,制定不同类型的解析规则,并将不同解析规则写入解析配置文件,实现对不同类型的安全日志的统一处理。
[0033] 根据上述原理,对安全日志采集解析方法进行介绍,如图1所示:
[0034] 安全日志采集解析方法,具体包括以下步骤:
[0035] 接收安全日志;
[0036] 根据制定的解析规则生成解析配置文件;
[0037] 利用所述解析配置文件解析所述安全日志,将解析后的安全日志进行存储。
[0038] 本实施例中,由syslog服务器作为日志接受服务器,完成对安全日志的接收,该syslog服务器负责数据源的采集,支持TCP和UDP协议。由syslog服务器接收后的安全日志放到rabbitmq队列或kafka队列中。此处提及rabbitmq队列和kafka队列均为消息队列。需要说明的是,在本发明的其他实施例中,消息队列的选择不仅限于rabbitmq队列和kafka队列,可以根据实际情况选择其他消息队列作为保存安全日志的容器。
[0039] 优选地,为了根据不同的需求对不同类型或同一类型的安全日志进行解析(即使是同一类型的安全日志,其内容也是多样的,使用单一的解析规则无法提取和解析安全日志),因此需要制定不同类型的解析规则。根据该不同类型的解析规则,使用YAML配置文件来定义这些不同类型的解析规则以生成不同类型的解析配置文件;所述解析配置文件包括配置文件的基本信息描述、grok解析规则定义、字段映射规则,或还包括别名转换规则、默认值处理规则、表达式展开规则中的任意一项或多项,在解析配置文件中,配置文件的基本信息描述、grok解析规则定义和字段映射规则为必要信息,根据实际的安全日志类型,在配置文件的基本信息描述、grok解析规则定义和字段映射规则的基础上还能加入其他解析规则,其他解析规则不限于上述默认值处理规则、别名转换规则、表达式展开规则以及字段重组规则。其中,上述grok解析规则定义为制定grok表达式,根据实际解析情况可以定义多个grok表达式,从上往下执行匹配;别名转换,是为grok表达式中的字段配置多个别名,起到一个字段对应多个字段的作用;字段映射,分为普通映射和正则映射,普通映射的名字和grok表达式的字段相同,grok表达式的字段后加.r即为正则映射;默认值处理,用于给grok表达式的字段设置默认值。
[0040] 在安全日志的解析过程中,将不同解析配置文件进行组合构成一个解析器组,该解析器组在运行系统的CPU核数动态生成,并且一个解析器组在一个线程中执行,从而保证解析器组的执行顺序。因不同的解析配置文件需要按照顺序执行,所以将多个解析配置文件放在一个解析组里,以保证解析顺序,且每个解析配置文件中均包含多个grok解析表达式,针对同一安全设备产生的多种形式的安全日志,使用不同的grok表达式进行处理。
[0041] 为了提高性能,使用多线程执行解析器组解析日志的过程,实现安全日志解析过程的多线程处理,实现10000eps事件处理量。
[0042] 优选地,利用解析配置文件解析安全日志的具体操作为:使用解析配置文件中写入的解析规则,将所述安全日志解析成对象,其过程包括:将所述安全日志进行grok解析、别名转换、字段映射、默认值处理、表达式展开,或者省略别名转换、默认值处理、表达式展开中的任意一个或多个步骤;在其他实施例中,解析过程还可能包括字段重组步骤,其中解析过程中的grok解析、字段映射为必要解析步骤,别名转换、默认值处理、表达式展开、字段重组等解析步骤,可根据安全日志类型的不同,选择将解析步骤对应的解析规则配置到解析配置文件中,根据解析配置文件中包含的解析规则,对安全日志进行相应处理。如图2所示,在本实例中,采用的具体解析过程为:将所述安全日志进行grok解析、别名转换、字段映射、默认值处理(图中未绘出)、表达式展开。经该解析过程后,将安全日志解析成了对象并补全了所述安全日志中的缺失信息,具体采用默认值对缺失信息进行赋值。
[0043] 将安全日志解析成对象后,还需要对该对象进行处理,即添加该安全日志的原始信息,包括日志原数据、日志来源设备、IP地址和接收时间等,便于对安全日志的来源进行追溯。
[0044] 解析后的安全日志,统一了所述安全日志各个不同的值,形成统一存储格式。利用解析配置文件解析后的安全日志为统一存储格式,因此便于后续对安全日志的分析处理。
[0045] 所述各个不同的值包括威胁级别的值,不同的安全设备表示威胁级别的值不同,从高到低,有的安全设备使用的是1,2,3,4,5;有的安全设备使用严重、警告、一般等信息;有的安全设备使用5,4,3,2,1;但在本实施例中,经解析后的安全日志的威胁级别,从高到低统一为1,2,3,4,5。
[0046] 当然除上述威胁级别的值外,所述各个不同的值还包括后续分析过程需要使用的其他值,针对不同类型安全日志中表征同一含义的值,经本实施例的解析后都将被统一表述。
[0047] 在实际解析过程中,因每个解析器包含不同解析配置文件,而不同解析配置文件又包含不同grok解析规则定义(grok表达式),因此每个解析器中均有多个grok表达式。在执行解析器解析安全日志时,依次执行不同解析配置文件中的grok表达式,若匹配到,就结束后续匹配,并开始进行安全日志解析过程。
[0048] 在本发明的其他实施例中,通过kubernetes部署上述解析配置文件解析安全日志的过程,在出现大量安全日志解析需求时,通过添加节点,实现快速同步处理。且单点出问题,不影响整体的可用性,使得该安全日志采集解析方法具有高性能和高可用性。
[0049] 上述执行解析器解析安全日志的过程和其解析状态,通过本实施例应用的日志或消息队列(rabbitmq队列或kafka队列)的API监控实现实时监控,从而能够实时了解日志处理量,和日志积压情况。
[0050] 优选地,将解析后的安全日志放入存储队列进行存储,本实施例采用elasticsearch存储队列进行存储。
[0051] 优选地,批量获取解析后的安全日志,使用批处理和异步处理将所述解析后的安全日志存储到elasticsearch存储队列,从而大幅提高安全日志的存储速度。
[0052] 优选地,当单机的极限处理能无法满足安全日志处理需求时,使用docker swarm或kubernetes分布式部署技术对安全日志进行批量解析,从而能大幅提高对安全日志的处理能力。上述docker swarm和kubernetes分布式部署技术为容器编排技术,支持docker容器部署,为本领域内的公知常识,在此不再赘述。
[0053] 实施例2
[0054] 实施例2公开了一种对应实施例1的安全日志采集解析方法对应的装置,为上述实施例的虚拟装置结构,请参照图2所示,包括:
[0055] 日志获取模块310,用于接收安全日志;
[0056] 日志解析模块320,用于根据解析规则生成解析配置文件,利用所述解析配置文件完成安全日志解析;
[0057] 结果输出模块330,用于输出安全日志解析结果并对所述安全日志解析结果进行存储。
[0058] 实施例3
[0059] 图4为本发明实施例3提供的一种电子设备的结构示意图,如图4所示,该电子设备包括处理器410、存储器420、输入装置430和输出装置440;计算机设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;电子设备中的处理器410、存储器420、输入装置430和输出装置440可以通过总线或其他方式连接,图4中以通过总线连接为例。
[0060] 存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的安全日志采集解析方法对应的程序指令/模块(例如,安全日志采集解析装置中的日志获取模块310、日志解析模块320和结果输出模块330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现实施例1的安全日志采集解析方法。
[0061] 存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0062] 输入装置430可用于接收安全日志。输出装置440用于输出安全日志解析结果。
[0063] 实施例4
[0064] 本发明实施例4还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于安全日志采集解析方法,该方法包括:
[0065] 接收安全日志;
[0066] 根据制定的解析规则生成解析配置文件;
[0067] 利用所述解析配置文件解析所述安全日志,将解析后的安全日志进行存储。
[0068] 当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的安全日志采集解析方法中的相关操作。
[0069] 通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台电子设备(可以是手机,个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
[0070] 值得注意的是,上述安全日志采集解析装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0071] 对本领域的技术人员来说,可根据以上描述的技术方案以及构思,做出其它各种相应的改变以及形变,而所有的这些改变以及形变都应该属于本发明权利要求的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈