新聞資訊
當(dāng)前位置:首頁 > 新聞資訊 > 網(wǎng)站建設(shè)開發(fā)
來源:成都網(wǎng)站建設(shè) 作者:賽維思網(wǎng)絡(luò) 發(fā)布日期:2014-04-03 瀏覽:2169次
要最小化SQL注入攻擊的風(fēng)險(xiǎn),最后一步需要在PHP腳本中加入表單驗(yàn)證。查看截屏圖文件類型或截屏圖文件大小是否在應(yīng)用定義的限制范圍內(nèi)之前,需要檢查表單域來確保它們非空。我們編程的時(shí)候代碼本身沒有任何問題,不過要保證一個(gè)應(yīng)用的安全,這樣一個(gè)調(diào)用通常遠(yuǎn)遠(yuǎn)不夠。由于表單域需要一個(gè)數(shù)字,所以合理的做法是不只是檢查值非空,還要檢查這是一個(gè)數(shù)字值。
PHP is_numeric()函數(shù)就可以完成這個(gè)工作,如果傳入的值是一個(gè)數(shù)字則返回true,否則返回false。堅(jiān)持一貫地做這種小工作,比如需要一個(gè)數(shù)字時(shí)就檢查它是否是一個(gè)數(shù)字,最后會讓你的應(yīng)用盡可能安全而免受數(shù)據(jù)攻擊。
PHP腳本中將表單數(shù)據(jù)賦值到變量,需要對這些賦值進(jìn)行調(diào)整,使用trim()和mysqli_real_escape_string()函數(shù)清理表單數(shù)據(jù)。然后修改INSERT查詢,同時(shí)指定列名和值,而不再需要為ID和approved列提供值。另外修改驗(yàn)證表單域的if語句,檢查數(shù)據(jù)確保它們確實(shí)是數(shù)字值。最后,使用MySQL工具運(yùn)行ALTER查詢將approved列默認(rèn)設(shè)置為0。將這個(gè)新的腳本上傳到你的web服務(wù)器,在web瀏覽器中導(dǎo)航到這個(gè)腳本,就會避免SQL注入攻擊。
上一篇:表單遭到SQL注入攻擊
Copyright ? www.yrgym.cn All Rights Reserved. 成都賽維思網(wǎng)絡(luò)技術(shù)有限公司 蜀ICP備13002520號-3 Sitemap