phpmyadmin上传webshell
前言
在渗透测试过程中获取phpmyadmin的账号和密码,该如何上传webshell
环境准备
windows server 2008 ip:192.168.2.128
php 5.6.27
mysql 5.5.53
apache 2.4
查看数据库是否允许导入文件
使用爆破等手段,获得用户名和密码为root root
接下来我们需要查看secure_file_priv的状态来确定是否允许导入文件
secure_file_priv会有以下三种状态
secure_file_priv= #不对导入操作进行限制 secure_file_priv='c:/a' #导入操作仅作用于c:/a secure_file_priv=null #禁止导入操作(默认)
查询当前secure_file_priv的状态
可以看到,当前状态为不允许进行导入导出操作,如果允许,则可以直接构造sql语句利用into outfile上传webshell,不允许则需要借助其他方法。
将webshell写入日志文件
既然无法直接写入文件,那只有借助其他方法了
我们尝试写入日志文件,首先我们需要检测两个全局变量,general_log和general_log_file
general_log值有两个,为ON和OFF,分别代表开启和关闭日志记录功能
general_log_file则代表日志文件路径
可以看到当前功能处于关闭状态,并且配置有日志路径,我们需要打开日志记录功能,并且将文件路径改为网站的根目录
好的,修改成功,现在开始向日志文件中写入一句话木马
在服务器中,log.php文件已创建成功,并成功写入
使用Cknife连接,连接成功