sql注入(sqli)是一種注入攻擊,,可以執行惡意sql語句。
程式開發過程中不注意規範書寫sql語句和對特殊字元進行過濾,導致客戶端可以通過全域性變數
post和get提交一些sql語句正常執行,產生sql注入。
a. 過濾掉一些常見的資料庫操作關鍵字,或者通過系統函式來進行過濾。
b. 在php配置檔案中將register_globals=off;設定為關閉狀態
c. sql語句書寫的時候盡量不要省略小引號(tab鍵上面那個)和單引號
d. 提高資料庫命名技巧,對於一些重要的字段根據程式的特點命名,取不易被猜到的
e. 對於常用的方法加以封裝,避免直接暴漏sql語句
f. 開啟php安全模式:safe_mode=on;
g. 開啟magic_quotes_gpc來防止sql注入
h. 控制錯誤資訊:關閉錯誤提示資訊,將錯誤資訊寫到系統日誌。
i. 使用mysqli或pdo預處理
j.不要將敏感資料保留在純文字中
k.限制資料庫許可權和特權『』
sql 注入問題
1.關於使用intval強制轉換成數字的問題。數字大於2147483647會出現溢位出現負數。使用個方法來替代這個吧 n n a 2147483648.05555 echo intval a n result 2147483648 echo int a,n result 2147483648 ech...
SQL注入問題
什麼是sql注入問題?就是在拼接sql語句時,有一些sql的特殊關鍵字參與字串拼接,會咋總成安全問題 例如 輸入使用者民名和密碼時拼接sql語句 使用者名稱任意,密碼為乙個恒等式 select from user where usernamr sadfasfa 任意 and password a o...
SQL注入問題
sql 注入式攻擊是未將 與資料進行嚴格的隔離 導致在讀取使用者資料的時候 錯誤地把資料作為 的一部分執行而導致一些安全問題。sql 注入自誕生以來以其巨大的殺傷力聞名。典型的 sql注入的例子是當對 sql 語旬進行字串拼接操作時 直接使用未加轉義的使用者輸入內容作為變數 比如 var testc...