SQLi LABS Less-16

简介: 第16关使用POST请求提交参数,可以使用代理工具抓包或直接在输入框中修改参数后端代码根据用户输入账号和密码去数据库中查询,查询成功则返回登录成功,否则返回登录失败,页面没有显示的数据,SQL语句中使用了错误抑制符@来限制数据库的报错信息,因此不能使用联合注入或报错注入,推荐使用布尔盲注,源码如下

第16关使用POST请求提交参数,可以使用代理工具抓包或直接在输入框中修改参数


后端代码根据用户输入账号和密码去数据库中查询,查询成功则返回登录成功,否则返回登录失败,页面没有显示的数据,SQL语句中使用了错误抑制符@来限制数据库的报错信息,因此不能使用联合注入或报错注入,推荐使用布尔盲注,源码如下


image.png

用户名输入万能账号 1") or true # , 密码随便输入,使SQL恒成立,可以登录成功,由此判断注入点为双引号+括号的字符型注入

image.png

接下来验证数据库长度,显示登录成功则表示条件成立,比如下面的payload就表示数据库长度大于1

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

image.png

而后以此增加长度,显示登录失败则表示条件不成立,比如下面的payload就表示数据库长度不大于8

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

image.png

而后按照此公式猜库名,表名



相关文章
|
SQL 数据安全/隐私保护
SQLi LABS Less-20
第二十关请求方式为POST请求 , 注入点为 单引号字符串型 , 注入方式为 联合注入 通过 cookie 注入
228 0
SQLi LABS Less-20
SQLi LABS Less-30
第30关使用GET请求传递参数,在url中构造payload即可 后端源码中并没有做什么过滤,只是在参数两边添加了双引号
150 0
SQLi LABS Less-30
SQLi LABS Less-27
第27关使用GET请求传递参数,在url中构造payload即可 源码中过滤了/*,--,#,空格,select,union,需要考虑一下怎么绕过这些规则
358 0
SQLi LABS Less-27
|
SQL 数据库 数据安全/隐私保护
SQLi LABS Less-22
2关使用POST请求提交参数,对账号和密码中的特殊字符执行了转译的操作,难度较大
122 0
SQLi LABS Less-22
SQLi LABS Less-25a
第25a关使用GET请求传递参数,在url地址栏中构造payload即可 后端源码中过滤了and和or,但只过滤了一次,我们可以通过双写绕过
241 0
SQLi LABS Less-25a
|
SQL 安全 数据库
SQLi LABS Less-13
第十三关请求方式为POST请求 , 注入点为 单引号+括号的字符型注入 , 注入方式为 报错注入 本次报错注入基于 updatexml()
178 0
SQLi LABS Less-13
|
SQL 安全 数据库
SQLi LABS Less-14
第十四关请求方式为 POST请求 , 注入点为 双引号字符串型 , 注入方式为 报错注入 本次报错注入使用 updatexml()
160 0
SQLi LABS Less-14
|
SQL 安全 数据库
SQLi-LABS Less-1
第一关请求方式为 GET请求 , 注入点为 单引号字符串型 , 注入方式为 联合注入 第一步,判断注入类型 先输如一个单引号' , 看它会不会报错
145 0
SQLi-LABS Less-1
|
SQL 存储 安全
SQLi LABS Less-39
第三十九关请求方式为GET请求 , 注入类型为 整形注入 第一步,判断注入类型
117 0
SQLi LABS Less-39
|
SQL 数据库
SQLi LABS Less-27a
第27关使用GET请求提交参数,在url地址栏中构造payload即可 后端源码中过滤了/*,--,#,空格,select,union,需要考虑一下怎么绕过这些规则
189 0
SQLi LABS Less-27a

热门文章

最新文章