程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> PHP與SQL注入攻擊[一]

PHP與SQL注入攻擊[一]

編輯:關於PHP編程

Haohappy
http://blog.csdn.net/Haohappy2004

SQL注入攻擊是黑客攻擊網站最常用的手段。如果你的站點沒有使用嚴格的用戶輸入檢驗,那麼非常容易遭到SQL注入攻擊。SQL注入攻擊通常通過給站點數據庫提交不良的數據或查詢語句來實現,很可能使數據庫中的紀錄遭到暴露,更改或被刪除。下面來談談SQL注入攻擊是如何實現的,又如何防范。

看這個例子:

// supposed input
$name = “ilia'; DELETE FROM users;”;
mysql_query(“SELECT * FROM users WHERE name='{$name}'”);


很明顯最後數據庫執行的命令是:

SELECT * FROM users WHERE name=ilia; DELETE FROM users


這就給數據庫帶來了災難性的後果--所有記錄都被刪除了。

不過如果你使用的數據庫是MySQL,那麼還好,mysql_query()函數不允許直接執行這樣的操作(不能單行進行多個語句操作),所以你可以放心。如果你使用的數據庫是SQLite或者PostgreSQL,支持這樣的語句,那麼就將面臨滅頂之災了。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved