怎麼防sql注入
發布時間: 2024-04-22 14:23:51
A. 如何防止sql注入漏洞
1、過濾掉一些常見的資料庫操作關鍵字:select,insert,update,delete,and,*等
或者通過系統函數:addslashes(需要被過濾的內容)來進行過濾。
2、在PHP配置文件中
Register_globals=off;設置為關閉狀態 //作用將注冊全局變數關閉。
比如:接收POST表單的值使用$_POST['user'],如果將register_globals=on;直接使用$user可以接收表單的值。
3、SQL語句書寫的時候盡量不要省略小引號(tab鍵上面那個)和單引號
4、提高資料庫命名技巧,對於一些重要的欄位根據程序的特點命名,取不易被猜到的
5、對於常用的方法加以封裝,避免直接暴漏SQL語句
6、開啟PHP安全模式
Safe_mode=on;
7、打開magic_quotes_gpc來防止SQL注入
Magic_quotes_gpc=off;默認是關閉的,它打開後將自動把用戶提交的sql語句的查詢進行轉換,把'轉為\',這對防止sql注入有重大作用。
因此開啟:magic_quotes_gpc=on;
8、控制錯誤信息
關閉錯誤提示信息,將錯誤信息寫到系統日誌。
9、使用mysqli或pdo預處理
B. 防止sql注入的最佳方式
1、利用第三方軟體加固,監控所有傳入的字元串
2、網上有很多防SQL注入代碼,引入到網頁的每一個需要傳值頁里
3、對於每一個傳值,進行數據類型、長度、規則等判斷,比如傳入ID=1,你要判斷ID里的是不是數字,且不會超過多少位,如果不滿足條件就做其它處理
通常就這三種方法
熱點內容