您好,登錄后才能下訂單哦!
這篇文章主要講解了“防止sql注入的方式有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“防止sql注入的方式有哪些”吧!
防止SQL注入的方式有:執行sql語句時使用addslashes進行sql語句轉換,過濾掉sql語句中的一些關鍵詞,提高數據庫表和字段的命名技巧等。
程序開發過程中不注意規范書寫 sql 語句和對特殊字符進行過濾,導致客戶端可以通過全局變量 POST 和 GET 提交一些 sql 語句正常執行。
1、 開啟配置文件中的 magic_quotes_gpc 和 magic_quotes_runtime 設置
2、 執行 sql 語句時使用addslashes 進行 sql 語句轉換
3、 Sql 語句書寫盡量不要省略雙引號和單引號。
4、 過濾掉 sql 語句中的一些關鍵詞:update、insert、delete、select、 * 。
5、 提高數據庫表和字段的命名技巧,對一些重要的字段根據程序的特點命名,取不易被猜到的。
6、 Php 配置文件中設置 register_globals 為 off,關閉全局變量注冊
7、 控制錯誤信息,不要在瀏覽器上輸出錯誤信息,將錯誤信息寫到日志文件中。
8、 可以使用 waf 防護系統進行防護。
SQL數據庫查找錯誤日志文件路徑
show variables like ‘log_error’;
在mysql數據庫中,錯誤日志功能是默認開啟的。并且,錯誤日志無法被禁止。默認情況下,錯誤日志存儲在mysql數據庫的數據文件中。錯誤日志文件通常的名稱為hostname.err。其中,hostname表示服務器主機名。
錯誤日志信息可以自己進行配置的,錯誤日志所記錄的信息是可以通過log-error和log-warnings來定義的,其中log-err是定義是否啟用錯誤日志的功能和錯誤日志的存儲位置,log-warnings是定義是否將警告信息也定義至錯誤日志中。
默認情況下錯誤日志大概記錄以下幾個方面的信息:服務器啟動和關閉過程中的信息(未必是錯誤信息,如mysql如何啟動InnoDB的表空間文件的、如何初始化自己的存儲引擎的等等)、服務器運行過程中的錯誤信息、事件調度器運行一個事件時產生的信息、在從服務器上啟動服務器進程時產生的信息。
SQL數據庫查找日志文件路徑
show variables like ‘general_log_file’;
日志是mysql數據庫的重要組成部分。日志文件中記錄著mysql數據庫運行期間發生的變化;也就是說用來記錄mysql數據庫的客戶端連接狀況、SQL語句的執行情況和錯誤信息等。當數據庫遭到意外的損壞時,可以通過日志查看文件出錯的原因,并且可以通過日志文件進行數據恢復。
SQL數據庫慢查詢日志文件路徑
show variables like ‘slow_query_log_file’;
感謝各位的閱讀,以上就是“防止sql注入的方式有哪些”的內容了,經過本文的學習后,相信大家對防止sql注入的方式有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。