phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧
來(lái)源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-27 21:20:52
phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧
phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧:一、is_numberic函數(shù)簡(jiǎn)介國(guó)內(nèi)一部分CMS程序里面有用到過(guò)is_numberic函數(shù),我們先看看這個(gè)函數(shù)的結(jié)構(gòu)bool is_numeric (mixed $var)如果 var 是數(shù)字和數(shù)字字符串則返回 TRUE,否則返回 FALSE。二、函數(shù)是否安全接下來(lái)我們來(lái)看個(gè)例子,說(shuō)明這個(gè)函數(shù)是否安全。
導(dǎo)讀phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧:一、is_numberic函數(shù)簡(jiǎn)介國(guó)內(nèi)一部分CMS程序里面有用到過(guò)is_numberic函數(shù),我們先看看這個(gè)函數(shù)的結(jié)構(gòu)bool is_numeric (mixed $var)如果 var 是數(shù)字和數(shù)字字符串則返回 TRUE,否則返回 FALSE。二、函數(shù)是否安全接下來(lái)我們來(lái)看個(gè)例子,說(shuō)明這個(gè)函數(shù)是否安全。

一、is_numberic函數(shù)簡(jiǎn)介
國(guó)內(nèi)一部分CMS程序里面有用到過(guò)is_numberic函數(shù),我們先看看這個(gè)函數(shù)的結(jié)構(gòu)
bool is_numeric (mixed $var)
如果 var 是數(shù)字和數(shù)字字符串則返回 TRUE,否則返回 FALSE。
二、函數(shù)是否安全
接下來(lái)我們來(lái)看個(gè)例子,說(shuō)明這個(gè)函數(shù)是否安全。
代碼如下:$s = is_numeric($_GET['s'])?$_GET['s']:0;
$sql="insert into test(type)values($s);"; //是 values($s) 不是values('$s')
mysql_query($sql);
上面這個(gè)片段程序是判斷參數(shù)s是否為數(shù)字,是則返回?cái)?shù)字,不是則返回0,然后帶入數(shù)據(jù)庫(kù)查詢(xún)。(這樣就構(gòu)造不了sql語(yǔ)句)
我們把‘1 or 1' 轉(zhuǎn)換為16進(jìn)制 0x31206f722031 為s參數(shù)的值
程序運(yùn)行后,我們查詢(xún)數(shù)據(jù)庫(kù)看看,如下圖:

如果再重新查詢(xún)這個(gè)表的字段出來(lái),不做過(guò)濾帶入另一個(gè)SQL語(yǔ)句,將會(huì)造成2次注入.
三、 總結(jié)
盡量不要使用這函數(shù),如果要使用這個(gè)函數(shù),建議使用規(guī)范的sql語(yǔ)句,條件加入單引號(hào),這樣16進(jìn)制0x31206f722031就會(huì)在數(shù)據(jù)庫(kù)里顯示出來(lái)。而不會(huì)出現(xiàn)1 or 1。
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧
phpis_numberic函數(shù)造成的SQL注入漏洞_javascript技巧:一、is_numberic函數(shù)簡(jiǎn)介國(guó)內(nèi)一部分CMS程序里面有用到過(guò)is_numberic函數(shù),我們先看看這個(gè)函數(shù)的結(jié)構(gòu)bool is_numeric (mixed $var)如果 var 是數(shù)字和數(shù)字字符串則返回 TRUE,否則返回 FALSE。二、函數(shù)是否安全接下來(lái)我們來(lái)看個(gè)例子,說(shuō)明這個(gè)函數(shù)是否安全。