為什么參數化SQL查詢可以防止SQL注入?
sql注入就是指我們在URL中傳遞變量testid,并且提供值為23,由于它是對數據庫進行動態查詢的請求(其中?testid=23表示數據庫查詢變量),所以我們可以在URL中嵌入惡意SQL語句。
首先我們定義一個存儲過程根據jobId來查找jobs表中的數據
接著修改我們的Web程序使用參數化的存儲過程進行數據查詢。
現在我們通過參數化存儲過程進行數據庫查詢,這里我們把之前添加的正則表達式校驗注釋掉。大家看到當我們試圖在URL中嵌入惡意的SQL語句時,參數化存儲過程已經幫我們校驗出傳遞給數據庫的變量不是整形。
上一篇此次活動和以前有區別嗎
下一篇我有別人網站的源碼