横向移动检测模型

编辑

横向移动检测模型

编辑

版本

2.1.4 ( 查看全部 )

兼容的 Kibana 版本

8.9.0 或更高版本

支持的 Serverless 项目类型
这是什么?

安全

订阅级别
这是什么?

白金版

支持级别
这是什么?

Elastic

横向移动检测模型包包含用于检测基于文件传输活动和 Windows RDP 事件的横向移动的资产。此软件包需要白金版订阅。请确保在继续操作之前,您拥有试用版、白金版或企业版订阅。此软件包在 Elastic License 2.0 下获得许可。

有关更多详细信息,请参阅以下博客

安装

编辑
  1. 升级:如果从 v2.0.0 以下的版本升级,请参阅 v2.0.0 及更高版本部分。
  2. 添加集成包:通过 管理 > 集成 > 添加横向移动检测 安装软件包。配置集成名称和代理策略。单击 保存并继续
  3. 检查转换的运行状况:转换计划每小时运行一次。此转换创建索引 ml-rdp-lmd。要检查转换的运行状况,请转到 管理 > 堆栈管理 > 数据 > 转换,在 logs-lmd.pivot_transform-default-<FLEET-TRANSFORM-VERSION> 下查看。
  4. 为异常检测作业创建数据视图:此包下的异常检测作业依赖于两个索引。一个具有文件传输事件 (logs-*),另一个索引 (ml-rdp-lmd) 从转换中收集 RDP 会话信息。在启用异常检测作业之前,请创建包含两个索引模式的数据视图。

    1. 转到 堆栈管理 > Kibana > 数据视图,然后单击 创建数据视图
    2. 索引模式 框中输入各自的索引模式名称,即 logs-*, ml-rdp-lmd,并在 名称 字段中复制相同的内容。
    3. 时间戳 字段下选择 @timestamp,然后单击 将数据视图保存到 Kibana
    4. 使用新的数据视图 (logs-*, ml-rdp-lmd) 为此软件包创建异常检测作业。
  5. 添加预配置的异常检测作业:在 机器学习 > 异常检测 中,当您创建作业时,您应该看到一个使用 预配置作业 的选项,其中包含一个 横向移动检测 的卡片。当您选择该卡片时,您将看到预配置的异常检测作业,您可以根据环境的实际情况启用这些作业。注意:在机器学习应用程序中,只有当存在与 lmd-ml 文件中指定的查询匹配的数据时,这些配置才可用。例如,如果您使用 Elastic Defend 收集事件,则它将在 logs-endpoint.events.* 中可用。
  6. 仪表板的数据视图配置:为了使仪表板按预期工作,需要在 Kibana 中配置以下设置。

    1. 您已启动上述异常检测作业。
    2. 您对 .ml-anomalies-shared 索引具有读取访问权限,或者被分配了 machine_learning_user 角色。有关角色的更多信息,请参阅 Elastic 中的内置角色。请注意,有权访问底层机器学习结果索引的用户可以看到所有空间中所有作业的结果。如果您使用 Kibana 空间来控制哪些用户可以查看哪些机器学习结果,请注意授予权限。有关机器学习权限的更多信息,请参阅 setup-privileges
    3. 启用作业后,转到 管理 > 堆栈管理 > Kibana > 数据视图。单击 创建数据视图,使用以下设置

      • 名称:.ml-anomalies-shared
      • 索引模式:.ml-anomalies-shared
      • 选择 显示高级设置,启用 允许隐藏和系统索引
      • 自定义数据视图 ID:.ml-anomalies-shared
  7. 启用检测规则:您还可以根据上述 ML 作业标记的异常,启用检测规则以提醒您的环境中发生的横向移动活动。自该软件包的 2.0.0 版本起,这些规则作为检测引擎的一部分提供,可以使用 用例:横向移动检测 标签找到。有关导入和启用规则的更多信息,请参阅此文档
  8. 与“在野外生存”检测一起使用:此集成包可以与“在野外生存”检测一起使用,请参阅安装“在野外生存”包以检测恶意进程的部分。
Data Exfiltration Detection Rules

在“安全”>“规则”中,使用“用例:横向移动检测”标签进行过滤

仪表板

编辑

在配置完异常检测器和仪表板的数据视图后,横向移动检测仪表板可在 分析 > 仪表板 下找到。此仪表板概述了为横向移动检测包触发的异常。

安装 ProblemChild 包以检测恶意进程

编辑

要检测在会话中启动的恶意 RDP 进程,请安装 “在野外生存攻击 (LotL) 检测”包。按照软件包 概述 下的步骤安装相关资产。使用下面的筛选查询仅检查 RDP 事件上的模型预测。

克隆“在野外生存攻击 (LotL) 检测”包下提供的异常检测作业,并按照以下步骤进行自定义,以便仅处理数据源中的 Windows RDP 事件

  1. 单击异常检测作业最右角的 操作 面板,然后选择 编辑作业 选项。
  2. 数据源 面板下,输入以下查询以筛选恶意 RDP 进程。
{
  "bool": {
    "minimum_should_match": 1,
    "should": [
      {
        "match": {
          "problemchild.prediction": 1
        }
      },
      {
        "match": {
          "blocklist_label": 1
        }
      }
    ],
    "must_not": [
      {
        "terms": {
          "user.name": [
            "system"
          ]
        }
      }
    ],
    "filter": [
      {
        "exists": {
          "field": "process.Ext.session_info.client_address"
        }
      },
      {
        "exists": {
          "field": "process.Ext.authentication_id"
        }
      },
      {
        "exists": {
          "field": "host.ip"
        }
      },
      {
        "term": {
          "event.category": "process"
        }
      },
      {
        "term": {
          "process.Ext.session_info.logon_type": "RemoteInteractive"
        }
      }
    ]
  }
}

异常检测作业

编辑

通过识别环境中恶意文件传输和 RDP 会话来检测潜在的横向移动活动。

作业 描述

lmd_high_count_remote_file_transfer

检测到网络中向远程主机进行的异常高的文件传输。

lmd_high_file_size_remote_file_transfer

检测到与网络中的远程主机共享的文件大小异常高。

lmd_rare_file_extension_remote_transfer

检测到与网络中的远程主机共享的罕见文件扩展名。

lmd_rare_file_path_remote_transfer

检测到文件传输(由主机)所在的异常文件夹和目录。

lmd_high_mean_rdp_session_duration

检测到 RDP 会话持续时间的异常高平均值。

lmd_high_var_rdp_session_duration

检测到 RDP 会话持续时间的异常高方差。

lmd_high_sum_rdp_number_of_processes

检测到在单个 RDP 会话中启动的进程数量异常高。

lmd_unusual_time_weekday_rdp_session_start

检测到在不寻常的时间或工作日开始的 RDP 会话。

lmd_high_rdp_distinct_count_source_ip_for_destination

检测到与单个目标 IP 建立 RDP 连接的源 IP 数量很高。

lmd_high_rdp_distinct_count_destination_ip_for_source

检测到与单个源 IP 建立 RDP 连接的目标 IP 数量很高。

lmd_high_mean_rdp_process_args

检测到 RDP 会话中进程参数的数量异常高。

v2.0.0 及更高版本

编辑

该软件包的 v2.0.0 引入了重大更改,即弃用了该软件包中的检测规则。为了继续接收横向移动检测的更新,我们建议在执行以下操作后升级到 v2.0.0

  • 删除现有的 ML 作业:导航至 机器学习 > 异常检测,然后删除与以下 ID 对应的作业

    • high-count-remote-file-transfer
    • high-file-size-remote-file-transfer
    • rare-file-extension-remote-transfer
    • rare-file-path-remote-transfer
    • high-mean-rdp-session-duration
    • high-var-rdp-session-duration
    • high-sum-rdp-number-of-processes
    • unusual-time-weekday-rdp-session-start
    • high-rdp-distinct-count-source-ip-for-destination
    • high-rdp-distinct-count-destination-ip-for-source
    • high-mean-rdp-process-args

根据您正在使用的软件包版本,您可能还可以使用组 lateral_movement 搜索上述作业。

  • 卸载与此软件包关联的现有规则:导航至 安全 > 规则,然后删除以下规则

    • 远程文件传输激增
    • 不寻常的远程文件大小
    • 不寻常的远程文件目录
    • 不寻常的远程文件扩展名
    • 恶意远程文件创建
    • 在敏感目录上创建远程文件
    • RDP 会话中进程数量激增
    • RDP 会话持续时间的平均值较高
    • RDP 会话持续时间的方差较高
    • RDP 会话中进程参数的数量异常高
    • 与源 IP 建立的连接数激增
    • 与目标 IP 建立的连接数激增
    • RDP 会话开始的不寻常的时间或日期

根据您正在使用的软件包版本,您可能还可以使用标签 横向移动 搜索上述规则。

  • 使用 此处 的步骤将横向移动检测包升级到 v2.0.0
  • 按照下面的启用检测规则部分所述安装新规则

在 2.1.2 版本中,该软件包会忽略冷数据层和冻结数据层中的数据,以减少堆内存使用量、避免在过时的数据上运行以及遵循最佳实践。

许可

编辑

在生产环境中使用需要您拥有允许使用机器学习功能的许可证密钥。

更新日志

编辑
更新日志
版本 详情 Kibana 版本

2.1.4

增强 (查看拉取请求)
从透视转换中删除 scripted_metric 聚合

8.9.0 或更高版本

2.1.3

增强 (查看拉取请求)
改进软件包安装文档

8.9.0 或更高版本

2.1.2

增强 (查看拉取请求)
添加查询设置以忽略冻结和冷数据层

8.9.0 或更高版本

2.1.1

增强 (查看拉取请求)
为 Serverless 添加无人值守标志

8.9.0 或更高版本

2.1.0

增强 (查看拉取请求)
添加对 Serverless 的支持

8.9.0 或更高版本

2.0.0

增强 (查看拉取请求)
从软件包中删除检测规则

8.9.0 或更高版本

1.0.2

增强 (查看拉取请求)
向软件包添加了额外的 ML 作业和安全规则

8.8.0 或更高版本

1.0.1

增强 (查看拉取请求)
添加高级分析 (UEBA) 子类别

8.5.0 或更高版本

1.0.0

增强 (查看拉取请求)
添加仪表板并在生产环境中发布软件包

8.5.0 或更高版本

0.0.1

增强 (查看拉取请求)
软件包的初始版本