SQL注入原理及实践(一)–SQL注入之布尔型盲注入
1)判断何为布尔型盲注入【无回显】
当不知道数据库返回值的情况下时【无回显】,输入 1’and ‘1’='1 和1’and ‘1’='2显示不一样,仅返回正确、或者错误的页面时,存在布尔型盲注入。
原理: 假设1’为真,则:
1’and ‘1’='1 为真 返回正确的界面
1’and ‘1’='2为假 返回错误的界面
2)布尔型注入涉及函数
所涉及的函数:
①if() if(条件,结果1,结果2) 如果条件成立,则输出结果1,否则输出结果2
②字符串截取函数:SUBSTRING(参数1,参数2,参数3)
参数1:字符串;参数2:开始截取的第几个字符;参数3:截取的长度
③获取长度函数:length()
通过构造以上函数可得:
if(SUBSTRING(参数1,参数2,参数3),结果1.结果2)
if(length(),结果1,结果2)
3)布尔型注入攻击
因此解题思路如下:
数据库 库名-》表名-》列名-》数据内容
①获取数据库名时,首先需要了解该数据库名的长度,因此解析如下: