通过 RunDLL32 建立异常网络连接

编辑

识别 rundll32.exe 发起出站网络连接的异常情况。这可能表明存在恶意命令和控制活动。

规则类型: eql

规则索引:

  • winlogbeat-*
  • logs-endpoint.events.process-*
  • logs-endpoint.events.network-*
  • logs-windows.sysmon_operational-*

严重程度: 中等

风险评分: 47

每隔: 5m 运行

搜索索引自: now-9m (日期数学格式,另请参阅 额外回溯时间)

每次执行的最大告警数: 100

参考:

标签:

  • 领域:端点
  • 操作系统:Windows
  • 用例:威胁检测
  • 战术:防御规避
  • 战术:命令与控制
  • 资源:调查指南
  • 数据源:Elastic Defend
  • 数据源:Sysmon

版本: 209

规则作者:

  • Elastic

规则许可证: Elastic License v2

调查指南

编辑

分类和分析

调查通过 RunDLL32 建立异常网络连接

RunDLL32 是 Windows 内置的实用程序,也是操作系统本身使用的重要组件。RunDLL32 提供的功能可以执行动态链接库 (DLL),攻击者广泛滥用此功能,因为它难以区分恶意活动和正常操作。

此规则查找在没有参数的情况下执行 RunDLL32 时建立的外部网络连接,这可能表明存在命令和控制活动。

可能的调查步骤

  • 调查未知进程的进程执行链(父进程树)。检查其可执行文件是否存在、是否位于预期位置以及是否使用有效的数字签名进行签名。
  • 调查过去 48 小时内与用户/主机关联的其他告警。
  • 调查 RunDLL32 与之通信的目标主机。
  • 检查域名是否为新注册或意外注册。
  • 检查域或 IP 地址的信誉。
  • 识别目标计算机及其在 IT 环境中的作用。
  • 通过查找主机之间类似事件,评估此行为在环境中是否普遍存在。

误报分析

  • 此活动不太可能合法发生。如有必要,可以将良性真阳性 (B-TP) 添加为例外情况。

响应和补救

  • 根据分类结果启动事件响应流程。
  • 隔离相关主机以防止进一步的入侵后行为。
  • 调查受损系统或攻击者使用的系统上的凭据泄露,以确保识别所有受损帐户。重置这些帐户以及其他可能受损的凭据(如电子邮件、业务系统和 Web 服务)的密码。
  • 运行完整的反恶意软件扫描。这可能会发现系统中留下的其他工件、持久性机制和恶意软件组件。
  • 确定攻击者滥用的初始载体,并采取措施防止通过相同载体再次感染。
  • 审查分配给用户的权限,以确保遵循最小权限原则。
  • 利用事件响应数据更新日志记录和审计策略,以改善平均检测时间 (MTTD) 和平均响应时间 (MTTR)。

规则查询

编辑
sequence by host.id, process.entity_id with maxspan=1m
  [process where host.os.type == "windows" and event.type == "start" and process.name : "rundll32.exe" and process.args_count == 1]
  [network where host.os.type == "windows" and process.name : "rundll32.exe" and
   not cidrmatch(destination.ip, "10.0.0.0/8", "127.0.0.0/8", "169.254.0.0/16", "172.16.0.0/12", "192.0.0.0/24",
       "192.0.0.0/29", "192.0.0.8/32", "192.0.0.9/32", "192.0.0.10/32", "192.0.0.170/32", "192.0.0.171/32",
       "192.0.2.0/24", "192.31.196.0/24", "192.52.193.0/24", "192.168.0.0/16", "192.88.99.0/24", "224.0.0.0/4",
       "100.64.0.0/10", "192.175.48.0/24","198.18.0.0/15", "198.51.100.0/24", "203.0.113.0/24", "240.0.0.0/4", "::1",
       "FE80::/10", "FF00::/8")]

框架: MITRE ATT&CKTM