1.mysql 隱式轉(zhuǎn)換
如果兩個(gè)參數(shù)比較响委,有至少一個(gè)NULL,結(jié)果就是NULL,除了是用NULL<=>NULL 會(huì)返回1蓝角。不做類型轉(zhuǎn)換
兩個(gè)參數(shù)都是字符串达舒,按照字符串比較唬复。不做類型轉(zhuǎn)換
兩個(gè)參數(shù)都是整數(shù)穗椅,按照整數(shù)比較。不做類型轉(zhuǎn)換
如果不與數(shù)字進(jìn)行比較客蹋,則將十六進(jìn)制值視為二進(jìn)制字符串塞蹭。
有一個(gè)參數(shù)是 TIMESTAMP 或 DATETIME,并且另外一個(gè)參數(shù)是常量讶坯,常量會(huì)被轉(zhuǎn)換為時(shí)間戳
有一個(gè)參數(shù)是 decimal 類型番电,如果另外一個(gè)參數(shù)是 decimal 或者整數(shù),會(huì)將整數(shù)轉(zhuǎn)換為 decimal 后進(jìn)行比較辆琅,如果另外一個(gè)參數(shù)是浮點(diǎn)數(shù)漱办,則會(huì)把 decimal 轉(zhuǎn)換為浮點(diǎn)數(shù)進(jìn)行比較
所有其他情況下,兩個(gè)參數(shù)都會(huì)被轉(zhuǎn)換為浮點(diǎn)數(shù)再進(jìn)行比較
最后那一句話很重要婉烟,說明如果我是字符串和數(shù)字比較娩井,需要將字符串轉(zhuǎn)為浮點(diǎn)數(shù),這很明顯會(huì)轉(zhuǎn)換失敗
1a會(huì)被轉(zhuǎn)化為1
a會(huì)被轉(zhuǎn)化為 0
2.利用方法
當(dāng)我們遇到引號(hào)閉合的變量時(shí)
我們可以利用false進(jìn)行盲注
算數(shù)運(yùn)算
username= 'admin'+(payload)
username ='admin'-(payload)
username ='1abc'* (payload)
username ='1abc'/ (payload)
username='1abc'%(payload)
邏輯運(yùn)算
username='admin'<>(payload)
username='admin'=(payload)
位運(yùn)算
username='1abc'&(payload)
........
其他還有很多似袁,就不一一舉例了