防止sql注入,我們需要注意以下幾個要點:
在指令碼語言,如perl和php你可以對使用者輸入的資料進行轉義從而來防止sql注入。
php的mysql擴充套件提供了mysql_real_escape_string()函式來轉義特殊的輸入字元。
if(get_magic_quotes_gpc())$name =mysql_real_escape_string($name);mysql_query("select * from users where name=''");like查詢時,如果使用者輸入的值有"_"和"%",則會出現這種情況:使用者本來只是想查詢"abcd_",查詢結果中卻有"abcd_"、"abcde"、"abcdf"等等;使用者要查詢"30%"(注:百分之三十)時也會出現問題。
在php指令碼中我們可以使用addcslashes()函式來處理以上情況,如下例項:
$sub =addcslashes(mysql_real_escape_string("%something_"),"%_");// $sub == \%something\_mysql_query("select * from messages where subject like '%'");addcslashes() 函式在指定的字元前新增反斜槓。
語法格式:
addcslashes(string,characters)引數
描述string
必需。規定要檢查的字串。
characters
可選。規定受 addcslashes() 影響的字元或字元範圍。
防止SQL注入
1.什麼是sql注入 所謂sql注入,就是通過把sql命令插入到web表單遞交或輸入網域名稱或頁面請求的查詢字串,最終達到欺騙伺服器執行惡意的sql命令。通過遞交引數構造巧妙的sql語句,從而成功獲取想要的資料。2.sql注入的種類 從具體而言,sql注入可分為五大類,分別是 數字型注入 字元型注入...
防止SQL注入
最近看到很多人的 都被注入js,被iframe之類的。非常多。本人曾接手過乙個比較大的 被人家入侵了,要我收拾殘局。1.首先我會檢查一下伺服器配置,重新配置一次伺服器安全,可以參考 2.其次,用麥咖啡自定義策略,即使 程式有漏洞,別人也很難在檔案上寫入 了。參考自定義策略,有了這個策略,再爛的程式,...
防止Sql注入
防不勝防 可以肯定的說,過濾不是辦法,而且效率很低 過濾的目的主要是提供反饋資訊,必須前後臺都要做 但是,有很多辦法可以繞過 致命的單引號 能做的事情按重要性大致如下 1。資料庫訪問用預定義會話 preparedstatement 從根本上防止sql截斷 2。後台過濾 為輸入的資訊提供反饋資訊,只要...