网络安全/欺诈检测

用 AI 增强 Linux 审计日志中的异常检测

在网络安全领域,快速准确地识别威胁对现代企业的成功至关重要。Linux 审计日志记录系统活动,为发现可能意味着安全漏洞和内部威胁的异常活动提供了一座数据金矿。

NVIDIA Morpheus,一款人工智能驱动的网络安全框架,专门用于增强日志中的异常检测。以下文章将探讨如何利用 NVIDIA Morpheus 识别 Linux 审核日志中的潜在威胁。

当前 SIEM 工具面临的挑战 

传统的安全信息和事件管理(SIEM)工具专注于生成警报的预定义规则。他们面临几个问题:

  • 识别新的威胁:由于仅限于已知的威胁模式,这些模型往往会错过新颖或复杂的攻击。
  • 高假阳性率:过于严格的规定可能会导致大量虚假警报,从而给安全团队带来了不必要的调查负担。
  • 有限的上下文洞察力:评估事件时,如果缺乏充分的上下文信息,可能会导致威胁被忽视或误解。

什么是 Linux 审核日志,它们包含哪些信息?

Linux 审核日志在监视 Linux 环境中的系统活动方面发挥着关键作用,提供了对各个方面的全面见解:

  • 用户活动:记录登录、命令执行和系统设置变更的详细信息。
  • 系统事件:记录启动/关闭、时间变化和内核操作等事件。
  • 文件访问:有关文件交互、修改或删除操作的相关信息。
  • 网络活动:关于网络连接、传输和安全事件的相关数据。
  • 身份验证和授权:记录登录尝试和权限调整的日志。

这些数据对于系统监督、安全评估和故障排除至关重要。它帮助管理员和安全专家确保系统完整性,识别漏洞,并满足法规遵从性要求。

以下是 Linux 审核日志中的条目可能是什么样子的示例:

type=SYSCALL msg=audit(1614699353.204:12345): arch=c000003e syscall=59 success=yes exit=0 a0=555555554000 a1=5555555562a0 a2=5555555568e0 a3=7fffd9f71c20 items=2 ppid=2914 pid=2915 auid=1000 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=pts0 ses=1 comm="cat" exe="/usr/bin/cat" key=(null)

了解 Linux 审核日志中的异常检测 

异常情况或异常值,是指在特定上下文中偏离正常行为或模式的事件或数据点。

Linux 审核日志中的异常检测是指识别系统日志中偏离规范的异常模式或活动的过程。这些异常可能表示潜在的安全威胁,如未经授权的访问尝试、恶意软件感染或内部威胁。

通过分析审计日志中包含的大量数据,异常检测算法可以找出可能被忽视的异常情况。

NVIDIA Morpheus 网络安全 AI 框架 

NVIDIA AI Enterprise 的一部分是 NVIDIA Morpheus,这是一个旨在增强网络安全能力的人工智能应用程序框架。它使您能够创建人工智能驱动的解决方案,这些解决方案可以为网络安全目的过滤、处理和分类大量数据。

利用 GPU 加速,Morpheus 提高了数据检查和分析的速度,有助于实时检测和应对安全威胁。

NVIDIA Morpheus 为分析 Linux 审核日志提供了一个引人注目的解决方案,在这个领域,数据的数量和动态特性可能会压倒传统的监控工具。

以下是 Morpheus 非常适合执行此任务的原因:

  • 处理大容量数据
  • 易于集成和使用
  • 内置对异常检测的支持:数字指纹

处理大容量数据 

Linux 审核日志生成大量数据,捕获系统事件的详细记录,这对安全性至关重要。传统工具可能难以处理此卷,导致延迟或错过见解。

Morpheus 利用 GPU 加速,使系统处理数据的速度比传统的非 GPU 加速服务器快 600 倍。这一功能确保即使是最密集的审计日志也可以有效地进行分析,从而无延迟地识别异常。

易于集成和使用 

Morpheus 支持常见的深度学习框架和模型格式,允许网络安全开发人员轻松集成现有模型或部署预先训练的模型。

它提供了一系列用于快速部署和自定义的阶段和管道示例。这确保了团队能够集中精力应对安全威胁,而不是陷入工程任务。

内置对异常检测的支持:数字指纹 

Morpheus 附带的数字指纹 AI 工作流程为网络安全中的异常检测提供了一种复杂的方法。该工作流程采用无监督学习算法为网络上的每个实体创建唯一的标识符或指纹。

通过分析这些指纹,Morpheus 可以检测出与正常行为模式的偏差,从而发出潜在的安全威胁或异常信号。

数字指纹 AI 工作流程在 Morpheus 框架内运行,具有通过共享模型存储进行通信的训练和推理管道。这使得动态高效的异常检测和扩展能够管理数以万计的指纹,而不必从头开始开发自定义工作流程。

使用 Morpheus 框架为 Linux 审核日志创建异常检测工作流 

我们基于现有的 Morpheus 数字指纹 AI 工作流 进行了一些修改。

Diagram shows end-to-end overall fraining and inference workflow.
图 1。异常检测工作流程

预处理和特征工程 

在预处理阶段,系统生成的日志被过滤掉,以减少数据集中的噪声。

根据 Linux 日志,我们通过在 5 分钟的滚动窗口内聚合数据来设计和开发一组功能。以下是模型中使用的功能:

  • 用户活动:修改或访问某些敏感配置文件的布尔功能,例如sshd_config文件或passwd文件。
  • 流程活动:过程活动、程序包安装或删除过程中的高峰期。
  • 文件访问模式:统计已删除、移动或复制的文件数量。
  • 网络活动:包括入站和出站活动。
  • 身份验证:记录用户登录失败的次数、sudo命令的执行情况和 SSH 连接状态。

模型培训和评估 

在组装训练和验证数据集时,我们确保它们准确地描述了给定服务器的基线行为,排除了任何异常数据点。

相反,对于测试数据集,我们纳入了在安全操作中心(SOC)分析师的协助下创建的异常数据点。

我们分别在每台服务器的 Linux 审核日志上为其训练了自动编码器模型。训练后的模型与相应的元数据一起存储在 MLflow 中。

培训管道 

训练管道包括从三角洲湖源阶段检索数据、预处理和特征提取等步骤。根据特征工程,在提供的日志上训练模型,然后将训练后的模型保存在 MLflow 中。

图 2 显示了我们使用 Morpheus 框架开发的训练管道。

Diagram shows security log data from Delta Lake moving through the pipeline stages to the MLFlow model repo: Delta Lake source, preprocessing and feature engineering, the training model autoencoder, and the MLFlow writer.
图 2:异常检测培训管道

使用训练管道,由于 GPU 计算速度加快,我们在单个服务器的日志数据上成功地训练了一个模型,在短短 8 分钟内就用 100M 的日志线完成了一个月的活动。使用传统方法,这将需要数小时到数天的时间。

Bar chart shows training times for 100M logs, 300M logs, and 500M logs.
图 3。模型训练管道度量

推理管道 

三角洲湖源和特征工程阶段用于训练和推理管道。模型权重是使用机器名称从 MLflow 获取的,Morpheus 提供了一个缓存模型的功能。

在对给定日志执行推理后,将根据预定义的阈值对警报进行过滤和后处理。后处理完成后,会将警报发送到 Splunk。

图 4 显示了我们使用 Morpheus 框架开发的推理管道。

Workflow diagram shows security log data moving through the inference pipeline stages: Delta Lake source, preprocessing and feature engineering, inference, filter, post-processing, and the Delta Lake writer.
图 4。异常检测推理管道

推理流水线可以在大约 120 秒内处理 100K 条日志行。

Bar chart shows inference times for 50K logs, 100K logs, and 500K logs.
图 5。模型推理管道度量

监控和警报

异常检测工作流程旨在将警报直接转发到 SIEM 工具,如 Splunk。这使安全运营中心分析师能够根据这些通知及时采取适当措施。

Screenshot showcasing detected anomalies with their respective anomaly score.
图 6。警报面板

模型检测到的异常:外部入侵和内部威胁 

异常检测工作流程经过精细调整,可以检测 Linux 审核日志中两种主要类型的安全威胁:未经授权的访问尝试和异常的系统行为。

未经授权的访问尝试 

这些是未经授权的用户试图访问系统或敏感数据,通常是外部入侵的信号。它们可能表现为重复登录失败,或者非特权用户使用 sudo 命令。

通过聚合和分析登录失败计数和某个时间段内的 sudo 命令执行,该模型可以有效地检测这种未经授权的访问尝试。与基线行为显著偏离的模式,如失败登录尝试的激增或来自异常用户帐户的 sudo 命令,会触发警报,表明潜在的安全漏洞。

异常系统行为 

这一类别涉及网络中广泛的异常活动,表明可能存在恶意软件感染或内部威胁。

例如,文件操作活动的突然增加,如删除、移动或复制敏感文件,可能表明恶意软件感染。

同样,网络活动的异常激增,尤其是出站传输,可能表明恶意内部人员试图进行数据泄露。

该模型具有监视文件访问模式、网络活动和关键系统文件更改的功能,能够检测这些异常行为。由于该模型单独监测每个主机,并仅在与已建立的模式有重大偏差时触发警报,因此与传统的基于规则的 SIEM 异常检测器相比,它提供了更低的假阳性率和更强的可解释性。

业务成果 

Linux 审计日志中的异常检测是全面网络安全策略的关键组成部分。这篇文章展示了如何使用 Morpheus 框架专门为 Linux 审计日志开发异常检测管道,目的是发现 Linux 审计日志中的潜在威胁。

通过集成 Linux 审计异常检测工作流程,SOC 分析师可以通过早期检测威胁来获得实质性的好处,例如提高安全性和风险管理。

为了提高人工智能的透明度,展示模型开发过程中的问责制,并促进 Morpheus 等框架的道德考虑,NVIDIA 已将其所有模型卡升级为 模型卡++。有关 Morpheus 框架的数字指纹和其他模型部分的更多信息,请访问 GitHub 上的模型卡++发布

申请在 NVIDIA LaunchPad 中体验 Morpheus,获得我们的数字指纹 AI 工作流程的实践经验,或者在 /nv-morpheus GitHub 存储库中或通过 90 天免费试用开始使用 Morpheus

有关更多信息,请参阅以下资源:

 

Tags