首页 > 其他分享 >【蓝队】规则系列: 反混淆/解码行为检测

【蓝队】规则系列: 反混淆/解码行为检测

时间:2024-11-04 21:31:16浏览次数:3  
标签:regex 混淆 Invoke 蓝队 cmd obfuscated filter 解码

原创 DarkLuke SecLink安全空间

免责申明

本文提到的检测规则仅供学习和讨论使用。我们提供的示例规则和指导并不构成任何形式的正式建议或解决方案。由于每个企业的安全环境和需求都存在差异,我们强烈建议企业根据自身实际情况和环境对这些规则进行针对性修改和充分测试,以确保它们符合您的组织的具体需求和安全要求。
对于因使用或实施这些规则而可能引发的任何问题或损失,我们不承担任何责任。

在本系列文章中,我们将探讨基于Mitre ATT&CK框架的TTP战术,如何在不同环境(云、企业、ICS)和场景下制定行之有效的检测规则,并且围绕实际攻击场景、检测、响应与调优展开。

本文是企业蓝队建设、规则分享系列的第三篇,主要介绍「T1140 文件、信息反混淆/解码」检测的规则编写,帮助安全团队提高针对企业终端的防护能力场景。

查看之前的系列文章传送门:SIEM规则分享:T1555.006 云密钥管理存储

介绍

Mitre ATT&CK框架将攻击过程分为多个阶段,从初始访问信息收集权限提升再到数据泄漏,每个阶段都包括多个战术和技术。

具体到企业终端,攻击者可能会使用混淆的文件或信息来隐藏入侵的痕迹以防止分析。

类别

战术名称: 反混淆/解码文件或信息

适用平台: Linux, Windows, macOS

场景

反混淆/解码文件或信息 (T1400) :攻击者可能通过不同方式来解码或反混淆该信息,具体取决于他们打算如何使用这些信息。

这样做的方法包括恶意软件的内置功能或使用系统上存在的原生应用程序

检测和响应

案例一

检测识别Powershell日志中混淆命令执行的行为。通过匹配特定的命令(如Invoke-Expression、Invoke-Command、Invoke-WebRequest)并检测其熵值或字符序列的异常,识别潜在的恶意活动。

title: 检测PowerShell中的混淆命令执行
id: 7f3e2d1e-89d4-4cdd-85f1-abb68c321fbc
description: 该规则检测PowerShell脚本的执行,其中包含高度混淆的命令(如`Invoke-Expression`、`Invoke-Command`或`Invoke-WebRequest`),并通过分析其熵值识别可能的恶意脚本。
references:
  - https://docs.microsoft.com/en-us/powershell/
  - https://attack.mitre.org/techniques/T1059/001/

logsource:
  category: process_creation
  product: windows
  service: powershell

detection:
  selection:
    EventID: 4103  
    Message|contains:  
      - 'Invoke-Expression'  
      - 'Invoke-Command'  
      - 'Invoke-WebRequest'

  regex_obfuscation_command:
    Message|re: '(?i)"command";\svalue="(.+?)"'  # 匹配命令
  regex_obfuscation_script:
    Message|re: '(?i)script\s+name\s+=(.+\.ps1)'  # 匹配脚本名称

  filter_noise_length:
    obfuscated_cmd|re: '.{25,}'  # 检查命令长度超过25字符  

  filter_noise_bxor:
    obfuscated_cmd|contains: 'bxor'  # 查找混淆常见关键字  

  filter_noise_spaces:
    obfuscated_cmd|re: '\s{30}'  # 连续30个空格  

  filter_noise_words:
    obfuscated_cmd|re: '\w{30}'  # 连续30个字母或数字  

  filter_noise_numbers:
    obfuscated_cmd|re: '((\s?\d{1,8}(\s+|,)?){15})'  # 数字序列混淆  

  condition: 
    selection 
    and (regex_obfuscation_command and regex_obfuscation_script)
    and filter_noise_length
    and filter_noise_bxor
    and filter_noise_spaces
    and filter_noise_words
    and filter_noise_numbers

fields:
  - process
  - process_*
  - signature_id
  - user
  - obfuscated_cmd
  - script_name

level: high
tags:
  - attack.execution
  - attack.t1059.001
  - attack.defense_evasion
  - attack.obfuscation

日志源:Windows事件日志、Sysmon

告警等级:高

误报(False Postive)

正常的自动化脚本可能包含复杂的命令,需要与开发团队确认。

某些合法的系统管理脚本也可能引发误报,应通过白名单排除。

案例二

检测Windows系统中执行certutil.exe时带有解码参数的行为。攻击者常利用Certutil下载并解码恶意软件。

title: 检测Windows系统中使用Certutil解码操作
id: 9bdf5a0e-c1b9-47a9-b631-3bfa5f32e2e1
description: 检测`certutil.exe`使用解码参数的行为,此行为可能表明攻击者正在下载并解码恶意软件。Certutil是一种常见的“活用现有系统二进制文件” (LOLBin),经常被攻击者滥用。
references:
  - https://attack.mitre.org/techniques/T1140/
  - https://lolbas-project.github.io/lolbas/Binaries/Certutil/
logsource:
  category: process_creation
  product: windows
detection:
  selection_certutil:
    Image|endswith: '\certutil.exe'
  selection_decode:
    CommandLine|contains: 
      - '-decode'
      - '-decodehex'
  regex_decode:
    CommandLine|re: '.*[^a-z]\-decode[^a-z].*'
  condition: selection_certutil and (selection_decode) and regex_decode
fields:
  - UtcTime
  - Image
  - CommandLine
  - User
  - ProcessId
  - ParentImage

level: high
tags:
  - attack.defense_evasion
  - attack.execution
  - attack.t1140

日志源:Windows事件日志、Sysmon

告警等级:高

误报(False Postive)

系统管理员可能会出于管理证书的合法目的使用certutil.exe。

自动化脚本或合法软件在执行过程中可能无意中触发这些解码命令。

响应步骤

SOC团队对混淆部分进行分析研判,如有必要,立即隔离受感染的终端,以防止进一步传播;如确认误报后,将相关的合法脚本或命令添加到白名单中,减少不必要的告警。

使用SIEM和EDR工具进一步调查取证进程及相关用户行为,确定攻击路径。

规则转换

推荐使用sigma-convert (https://github.com/marirs/sigma-convert),或者在线工具sigconverter (https://sigconverter.io/),将Sigma Rule转化为相应SIEM的搜索语句。

使用Sigma及DAC搭建传送门:1小时搞定检测即代码(DAC) - 附详细步骤

EventID=4103 Message IN ("*Invoke-Expression*", "*Invoke-Command*", "*Invoke-WebRequest*") obfuscated_cmd="*bxor*"
| regex Message="(?i)\"command\";\\svalue=\"(.+?)\""
| regex Message="(?i)script\\s+name\\s+=(.+\\.ps1)"
| regex obfuscated_cmd=".{25,}"
| regex obfuscated_cmd="\\s{30}"
| regex obfuscated_cmd="\\w{30}"
| regex obfuscated_cmd="((\\s?\\d{1,8}(\\s+|,)?){15})" | table process,process_*,signature_id,user,obfuscated_cmd,script_name

参考文档

Mitre ATT&CK Matrix:(https://attack.mitre.org/matrices/enterprise/)

Detection: Windows CertUtil Decode File:(https://research.splunk.com/endpoint/b06983f4-8f72-11ec-ab50-acde48001122/)

​#参考

标签:regex,混淆,Invoke,蓝队,cmd,obfuscated,filter,解码
From: https://www.cnblogs.com/o-O-oO/p/18526408

相关文章

  • [os/linux]:计算机中的编码和解码(ASCII)
    [os/linux]:计算机中的编码和解码(ASCII)    一、ASCII(AmericanStandardCodeForInformationInterchange)简介 1、在二进制的计算机中,ASCII用‘8位二进制数值’表示一个‘字符’;这样就形成了“字符”和“数值”之间的对应关系。ASCII表中的“字符”和“数值”,是......
  • 解码小红书CES算法,让你的笔记阅读量提升100%
    随着社交媒体成为日常生活的一部分,内容创作者们都在积极寻找提高作品可见性的方法。作为社交分享领域的佼佼者,小红书凭借其独特的CES算法机制,在众多平台中脱颖而出。本文将深入探讨小红书的CES算法工作原理,并提供实用技巧,帮助你显著提升笔记的阅读量。一、小红书CES算法解......
  • ArkTS 应用的代码混淆策略:提升安全性与性能
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。引言在移动应用开发领域,代码安全性一......
  • 多平台服务中的代码混淆与内存安全:ArkTS 应用的安全优化
    本文旨在深入探讨华为鸿蒙HarmonyOSNext系统(截止目前API12)的技术细节,基于实际开发实践进行总结。主要作为技术分享与交流载体,难免错漏,欢迎各位同仁提出宝贵意见和问题,以便共同进步。本文为原创内容,任何形式的转载必须注明出处及原作者。在开发跨平台应用时,代码安全与内存管......
  • 深度解读GaussDB逻辑解码技术原理
    本文分享自华为云社区《【GaussTech技术专栏】GaussDB逻辑解码技术原理》,作者:GaussDB数据库。1.背景随着国内各大行业数字化改造步伐的加快,异构数据库数据同步的需求场景越来越多。异构数据库同步,即将不同类型、不同结构的数据库之间的数据进行同步处理,以确保数据在不同数据库......
  • aes简单混淆加模拟执行
    github中的示例在gtihub中有一个混淆示例,https://github.com/luck-apple/aesTool,把它clone到本地创建项目新建一个native项目,语言选择Java向MainActivity中添加代码/***AES加密,CBC,PKCS5Padding*/publicstaticnativeStringmethod01(Strin......
  • 【小记】探探学习平台的字体混淆dm
    正在某学习平台做题,想着把题目复制出来和搜索娘深入探讨一下,却发现:嗯?怎么是一坨火星文?实际上有好几个学习平台都引入了这种字体混淆机制以防止复制,打乱了部分汉字Unicode码点和字形的对应关系。这回咱就来折腾折腾,看看这是怎么个事儿。1.怎么个混淆法来到某课堂平台,打开......
  • 【小记】探探学习平台的字体混淆
    正在某学习平台做题,想着把题目复制出来和搜索娘深入探讨一下,却发现:嗯?怎么是一坨火星文?实际上有好几个学习平台都引入了这种字体混淆机制以防止复制,打乱了部分汉字Unicode码点和字形的对应关系。这回咱就来折腾折腾,看看这是怎么个事儿。1.怎么个混淆法来到某课堂平台,打开......
  • 媒体播放器应用程序的解码器如下:使用 DISM 集成 HEVC 视频扩展应用;要使用 DISM 集成 H
    WMPLegacyandtheMediaPlayer Appare 100%differentsoftware'sandshareexactlyzerocodebetweenthem.MycodecsoftwaresupportsWMPbecauseitcanuseDirectshowcodecsbuttheMediaPlayerAppusesMediaFoundationCodecswhichare distributed......
  • HEIF编解码器安装手册
    HEIF编、解码器安装手册byNavyumHEIF编码、解码原理Img相关依赖库:主要的第三方库:libx265、libde265、libaom、libvvenc、liblibheif、libvips其他参考:libavif相关编码标准:H.264/MPEG-4、H.265/HEVC、AVIF(AV1/AOM、dav1d)、H.266/VVC依赖安装安装依赖时务必要注意安......