目录
- 介绍
- 步骤
- WMI持久化分析
- 注册表映像劫持IFEO持久化
介绍
1、WMI 的全称是 Windows Management Instrumentation,即 Windows 管理规范,在 Windows 操作系统中,随着 WMI 技术的引入并在之后随着时间的推移而过时,它作为一项功能强大的技术,从 Windows NT 4.0 和 Windows 95 开始,始终保持其一致性。它出现在所有的 Windows 操作系统中,并由一组强大的工具集合组成,用于管理本地或远程的 Windows 系统。
尽管已被大众所知并且从其创始以来,已经被系统管理员大量使用, WMI 在攻击中变得日益普及,其作用有执行系统侦察,反病毒和虚拟机检测,代码执行,横向运动,权限持久化以及数据窃取。
一个Event Consumer代表当一个事件触发时进行的操作。
事件生产者(provider),负责生产事件。WMI包含大量事件生产者。
事件过滤器(fileter),系统每时每刻有大量的事件,通过自定义过滤器,脚本可以捕获感兴趣的事件进行处理。
事件消费者(consumer):负责处理事件,他是由可执行程序,动态链接库(dll,由wmi服务加载)或者脚本
事件绑定(binding):通过将过滤器和消费者绑定,明确什么事件由什么消费者负责处理
攻击者想在某台计算机上运行记事本时接收通知。记事本运行时,会创建相应的进程。可以使用 WMI 管理进程,并由 Win32_Process 类表示。当记事本开始运行时,Win32_Process 类的相应实例使得 WMI 事件生效 。
使用以下WMI语法:
SELECT * FROM __InstanceCreationEvent WITHIN PollingInterval WHERE TargetInstance ISA 'Win32_Process' and TargetInstance.Name = 'notepad.exe'
SilentProcessExit持久化技术是IFEO注入,并不使用debugger,而是利用GlobalFlag中的设置。首先是开启报告机制,再依靠Silent Process Exit Monitoring功能实施监视,当发现进程退出时便拉起预设监控应用。十分隐蔽的手法,除非监控注册表这几项,否则难以发现。
步骤
WMI持久化分析
打开工具目录C:\Users\Administrator\Desktop\应急工具集\wmi
输入命令python2 PyWMIPersistenceFinder.py C:\Users\Administrator\Desktop\案例\wmi\OBJECTS.DATA
根据调用的CommandLineEventConsumer
实验原理1可以得知,Bindings
的Filter
处对系统行为过滤,每当目标Win32_Process
实例分析出持久化文件的行为是:用户打开calc.exe时,用powershell执行ps脚本以达到持久化的目的
注册表映像劫持IFEO持久化
打开C:\Users\Administrator\Desktop\应急工具集\RegistryExplorer
导入C:\Users\Administrator\Desktop\案例\globalflag\c\Windows\System32\config
的注册表
反复按照这个循环来点就可以了
点击Tools > Find
筛选globalflag
每当notepad.exe进程结束/退出时,此恶意文件都会运行。
搜索SilentProcessExit
双击Key Path,在RegistryExplorer中打开键值项就可以查看恶意程序