當前位置:編程學習大全網 - 網站源碼 - 簡要描述什麽是SQL註入,並寫壹個簡單的SQL註入語句。

簡要描述什麽是SQL註入,並寫壹個簡單的SQL註入語句。

在壹般開發中,前臺必須有兩個輸入框,壹個用戶名和壹個密碼。在後臺,從前臺傳入的這兩個參數將被讀取並拼寫成壹個SQL,例如,select count (1) from tab其中user =用戶輸入,pass =傳遞輸入。在連接這個SQL中的數據後,查看這個用戶名/密碼是否存在,如果存在,可以。對嗎?

但是,在某些情況下,這個SQL是根據用戶的輸入拼寫出來的。如果用戶故意輸入壹個字符串,會使後臺解析失敗,這就是SQL註入。比如用戶輸入密碼,輸入''''或者1=1 ' ',這樣後臺程序解析的時候,SQL語句就拼寫出來了。可能是這樣的:select count (1) from tab其中user =用戶輸入並且pass = ' '或者1 = 1;看這個語句可以知道,經過解析,用戶沒有輸入密碼,添加了壹個1=1的身份條件。這樣,當執行這個SQL時,返回的計數值必須大於1。如果對程序的邏輯判斷不太多的話,用用戶名userinput登錄,不需要密碼也是可以的。

為了防止SQL註入,我們應該先過濾掉密碼輸入中的單引號,然後在後面添加其他邏輯判斷,或者不要使用這樣的動態SQL拼寫。

  • 上一篇:冰塊英語怎麽讀
  • 下一篇:傳奇服務器問題
  • copyright 2024編程學習大全網