深入理解黑客攻擊-sql注入攻擊

在這個登錄頁面,我們需要知道用戶名和密碼,但是也有一種途徑,不需要知道用戶名和密碼

也可以進入網頁,這叫做sql注入攻擊

對於上面的這個表格,左邊是用戶名右邊是密碼

這是登錄頁面的代碼

StringSqlString=“Select*FromUSERWhere用戶名=‘”+Username.text()+”’And密碼=‘”+Password.Text()+”’”;

inti=SQLExecute(SqlString);

if(0==i)

{

  Alert(“用戶名或密碼錯誤!”):

  return;

}

else

  response.direct(“index.aspx”);  

那麼。

相應的sql語句就是Select From user  Where 用戶名=‘User1’ And 密碼=‘abcde

那麼sql注入攻擊


相應的sql語句就是 

Select From user  Where 用戶名=‘a’or ‘1’=‘1’;# And密碼=‘abcde’ 

這裏把後面的密碼部分覆蓋掉了。

Where 用戶名=‘a’or ‘1’=‘1’就是 一個判斷句

這總是爲真。那麼就可以達到攻擊的目的

不過,開發者已經意識到這個問題了

將登錄頁面的代碼改爲兩個函數,每個函數接受用戶控件名和密碼控件的字符串

現在已經不能進行sql注入攻擊了


發佈了54 篇原創文章 · 獲贊 15 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章