AI日志解析:更快更准确


网络安全日志是一种无处不在的系统运行时状态和系统活动和事件消息的记录。它们成为系统行为的主要来源,在正常的系统执行中对异常进行分类时至关重要。日志通常是非结构化的文本消息,由于创建日志的速度不断增长,因此很难手工查看这些消息。日志中的原始数据是非结构化的、有噪声的、不一致的;因此,必须进行一些预处理和解析。

使用正则表达式解析日志是网络日志分析中使用最广泛的方法。正则表达式(regex)是一个指定如何匹配一个字符序列的字符序列。除了一次性解析之外,您最有可能使用正则表达式重复解析和规范化日志文件,将其作为分析基础设施的一部分。但是,当日志文件格式更改时,正则表达式会失败,这可能导致处理和评估日志数据的方式失败。这种情况经常发生,因为日志结构在源、格式和时间上都不同。随着源数量的增加,自定义正则表达式解析器的数量也会增加。

NLP的进步

为了减轻为每个日志创建数百个自定义解析器的需要,现在使用自然语言处理(NLP)方法来自动执行解析网络安全日志的任务。这些初始NLP技术是N-GRAM分析,距离措施(JAccard,Levenshtein)和Word Embeddings(Word2VEC)。这些方法尝试评估原始日志数据,从IT(源,时间,动作)中提取必要的功能,并以使用公共技术可以分析的方式重构登录。当日志的特征未知时使用NLP方法。

过去几年在NLP中产生了进展,这利用更复杂的神经网络字表示而不是Word2VEC中看到的。谷歌研究人员推出的变压器(BERT)的双向编码器表示是一种这样的创新。双向编码器需要两个编码序列;一个是正​​常序列,另一个是它的反面。它由两个编码器组成,用于编码两个序列。对于最终输出,考虑编码结果。语言模型的双向培训使其更深入地了解文本的背景。

进入cyBERT

伯特取得了最先进的成果在各种各样的NLP任务相关的人类语言编写,将其pretrained基础模型直接应用于网络安全日志需要额外的实验和培训以及调整大小的输入序列,可以送入伯特模型。这导致了cyBERT (https://github.com/rapidsai/clx/tree/branch-0.11/notebooks/cybert).

Cyber​​ Project是一个持续的实验,可以培训和优化变压器网络,以提供对异构网络安全数据的日志的灵活性和强大的解析。它是网络日志加速器(CLX)库的一部分,用于将Rapps的GPU加速到现实世界的网络安全使用情况。Cyber​​和CLX的目标是允许网络安全人员,网络数据师,数字法医分析师,以及威胁猎人开发不需要自定义Regex解析进程的网络安全日志数据工作流,以将数据纳入评估和诊断的格式.

网络安全日志包含文件路径、IP地址、端口号和十六进制值,这些值按照确定的顺序排列,而不是典型的单词字符串。这些日志输入的组合可能导致复杂的regex,该regex可能根据源或创建时间而变化。cyBERT不需要创建正则表达式解析器,因为它可以直观地确定每个日志输入,而不必考虑每个字符组合。

改变游戏规则

Cyber​​t是一个足够的一般性,使一个组织可以接受并培训它的自定义网络行为。使用自定义销售器和从划痕的大型网络日志上的划痕培训,而不是使用BERT中的默认英语单词语料库。提供由NLP提供支持的工具集以执行日志解析是一个游戏更换器在网络安全的关键和时间敏感区域中。