使用 WinRar 或 7z 加密文件

编辑

识别使用 WinRar 或 7z 创建加密文件的情况。攻击者通常会在准备数据泄露时压缩和加密数据。

规则类型: eql

规则索引:

  • logs-endpoint.events.process-*
  • winlogbeat-*
  • logs-windows.sysmon_operational-*
  • endgame-*
  • logs-m365_defender.event-*
  • logs-sentinel_one_cloud_funnel.*

严重性: 中等

风险评分: 47

每隔: 5 分钟

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

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

参考:

标签:

  • 领域:端点
  • 操作系统:Windows
  • 用例:威胁检测
  • 策略:数据收集
  • 资源:调查指南
  • 数据源:Elastic Endgame
  • 数据源:Elastic Defend
  • 数据源:Sysmon
  • 数据源:Microsoft Defender for Endpoint
  • 数据源:SentinelOne

版本: 214

规则作者:

  • Elastic

规则许可证: Elastic License v2

调查指南

编辑

分类和分析

调查使用 WinRar 或 7z 加密文件

攻击者可能会在数据泄露前压缩和/或加密收集到的数据。压缩数据有助于模糊收集到的数据并最大限度地减少通过网络发送的数据量。加密可用于隐藏正在泄露的信息以防止检测,或使泄露在防御者检查时不太明显。

这些步骤通常是在准备数据泄露时进行的,这意味着攻击可能处于最后阶段。

可能的调查步骤

  • 调查脚本执行链(父进程树)中的未知进程。检查其可执行文件是否存在、是否位于预期位置以及是否使用有效的数字签名进行签名。
  • 检索加密文件。
  • 调查过去 48 小时内与用户/主机关联的其他告警。
  • 检查加密中使用的密码是否包含在命令行中。
  • 解密.rar/.zip文件并检查信息是否敏感。
  • 如果密码不可用,并且格式为.zip或在 WinRAR 中使用的选项不是-hp,则列出加密文件中包含的文件名。
  • 调查文件是否已传输到攻击者控制的服务器。

误报分析

  • 备份软件可以使用这些实用程序。检查process.parent.executableprocess.parent.command_line字段以确定触发加密的原因。

响应和补救

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

设置

编辑

设置

如果在低于 8.2 版本的非 elastic-agent 索引(例如 beats)上启用 EQL 规则,则事件将不会定义event.ingested,并且直到 8.2 版本才添加 EQL 规则的默认回退。因此,为了使此规则有效,用户需要添加自定义摄取管道以将event.ingested填充到 @timestamp。有关添加自定义摄取管道的更多详细信息,请参考 - https://elastic.ac.cn/guide/en/fleet/current/data-streams-pipeline-tutorial.html

规则查询

编辑
process where host.os.type == "windows" and event.type == "start" and
(
  (
    (
      process.name:"rar.exe" or ?process.code_signature.subject_name == "win.rar GmbH" or
      ?process.pe.original_file_name == "Command line RAR"
    ) and
    process.args == "a" and process.args : ("-hp*", "-p*", "/hp*", "/p*")
  ) or
  (
    (process.name : ("7z.exe", "7za.exe") or ?process.pe.original_file_name in ("7z.exe", "7za.exe")) and
    process.args == "a" and process.args : "-p*"
  )
) and
  not process.parent.executable : (
        "C:\\Program Files\\*.exe",
        "C:\\Program Files (x86)\\*.exe",
        "?:\\ManageEngine\\*\\jre\\bin\\java.exe",
        "?:\\Nox\\bin\\Nox.exe",
        "\\Device\\HarddiskVolume?\\Program Files\\*.exe",
        "\\Device\\HarddiskVolume?\\Program Files (x86)\\*.exe",
        "\\Device\\HarddiskVolume?\\ManageEngine\\*\\jre\\bin\\java.exe",
        "\\Device\\HarddiskVolume?\\Nox\\bin\\Nox.exe"
      )

框架: MITRE ATT&CKTM