首頁  >  文章  >  資料庫  >  深入了解SQL注入與預防措施

深入了解SQL注入與預防措施

php中世界最好的语言
php中世界最好的语言原創
2018-03-05 15:30:523003瀏覽

這篇文章透過SQL和MYSQL的對比,以及SQL注入的原理,以及如何預防SQL注入等方面,詳細分析了SQL注入相關知識點,希望可以幫助到一些有需要的人。

1 .什麼是sql注入(Sql injection)?

Sql注入是一種將sql程式碼加入輸入參數中,傳遞到Sql伺服器解析並執行的一種攻擊手法

2. 怎麼產生的?

Web開發人員無法保證所有的輸入都已經過濾

攻擊者利用發送給Sql伺服器的輸入資料建構可執行的Sql程式碼

資料庫未做對應的安全配置

3.如何尋找sql漏洞?

識別web應用程式中所有輸入點

了解哪些類型的請求會觸發異常? (特殊字元」或')

偵測伺服器回應中的例外狀況

4.如何進行SQL注入攻擊?

##數位注入:

Select * from tablename where id=1 or 1=1;

字串注入:

Mysql的註解特性:

#與--號後面的註解掉,無論密碼輸入的是什麼,都能正確查詢。

##嚴格檢查輸入格式:is_numeric(var),tp5的validate驗證,字串的注入採用正規看是否在[A-Za-z]之間

##轉義: addslashes(str)、mysqli_escape_string()函數進行轉義

6.MySQLi的預編譯機制

參數化綁定

參數化綁定,防止SQL 注入的另一道屏障。

#PDO 的更是方便,例如:

相關推薦:

sql注入網站的方法

PHP簡單高效防禦sql注入的方法分享

PHP防止sql注入的方法講解

以上是深入了解SQL注入與預防措施的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn