1. 程式人生 > >SQL注入的過濾程式碼分析

SQL注入的過濾程式碼分析

SQL注入:在使用者的輸入沒有為轉義字元過濾時,就會發生這樣這種形式的注入式攻擊。所以在在有SQL查詢語句的網頁中對字元的過濾時很重要的。

在沒有任何過濾時,是很危險的,使用者可以在提交的資料中,插入自己想要插入攻擊程式碼。

在這裡插入圖片描述

mysql_real_escape_string()

PHP的mysql_real_escape_string() 函式轉義 SQL 語句中使用的字串中的特殊字元。

下列字元受影響:

\x00
\n
\r
\
'
"
\x1a

如果成功,則該函式返回被轉義的字串。如果失敗,則返回 false。

mysql_real_escape_string(string,connection)


引數:
string :必須,規定要轉義的字元
connection:可選,規定mysql連線,如果為規定,則使用上一個連線

在這裡插入圖片描述

但是使用mysql_real_escape_string()函式還是可能存在繞過。將攻擊字元轉換一下編碼格式即可繞過此函式。比如使用url編碼等。