Php防注入(一)
1.函數:
Php的環境一般是apache+php+mysql,平常配置服務器一般是打開php.ini裏的安全模式,將safe_mode設爲on,還有就是將display_erors設爲off,即關閉錯誤顯示。還有一個非常重要的配置選項-----magic_quotes_gpc,高版本默認爲on,以前的版本中默認爲off。當magic_quotes_gpc爲on的時候我們怎麼防範php的字符變量注入呢?其實只需將提交的變量中的所有單引號、雙引號、反斜線和空字告符自動轉換爲含有反斜線的轉義字符。如把“’”變成“\”,把“\”變成“\\”,就ok了。下面我們分爲對magic_quotes_gpc=off和magic_quotes_gpc=on的注入清況分析一下。
將當前頁面form表單的input信息進行過濾
//method = post ----- $_POST[]
//input 的name屬性分別是edit[name]、edit[pass]、edit[pass2];
//
//$_POST['edit'];
獲取表單數據$_POST['input標籤的name屬性'],例如 .. //name=edit[username]
//php安全 “user‘’‘’id” 過濾
//第一種辦法 添加反斜槓函數addslashes()
// 取消反斜槓函數stripslashes()
//第二種辦法 php.ini
//要求用戶具備編輯主配置文件的權限
//magic_quotes_gpc = on|off