1. 程式人生 > >Mysql中int型別強制插入float型會發生什麼(nctf中web ,mysql)

Mysql中int型別強制插入float型會發生什麼(nctf中web ,mysql)

首先建立一個表A,只有一個列,就是a,型別設定為int

create table A(a int);

然後強制插入資料5.1和5.5

insert into A values(5.1);

insert into A values(5.5);

然後查詢,select * from A;

得到以上結果,說明如果強制插入一個float型的數字後mysql不會報錯,而是將它進行一定的轉化,四捨五入。

而在php程式碼審計中,常用的漏洞有,php在判斷一個整型數字為X時,顯示出正確結果,但是直接輸入X會被某段程式碼檢查並過濾掉,我們就可以通過mysql的精度機制進行輸入X.y這樣的float,繞過檢查