程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> mysql load data local 帶來的安全問題

mysql load data local 帶來的安全問題

編輯:關於MYSQL數據庫
由MySQL 服務器啟動文件從客戶端向服務器主機的傳輸。理論上,打過補丁的服務器可以告訴客戶端程序傳輸服務器選擇的文件,而不是客戶用LOAD DATA 語句指定的文件。這樣服務器可以訪

load data local 帶來的安全問題:
由MySQL 服務器啟動文件從客戶端向服務器主機的傳輸。理論上,打過補丁的服務器可以告訴客戶端程序傳輸服務器選擇的文件,而不是客戶用LOAD DATA 語句指定的文件。這樣服務器可以訪問客戶端上客戶有讀訪問權限的任何文件。
在Web 環境中,客戶從Web 服務器連接,用戶可以使用LOAD DATA LOCAL 來讀取Web 服務器進程有讀訪問權限的任何文件(假定用戶可以運行SQL 服務器的任何命令)。在這種環境中,MySQL 服務器的客戶實際上是Web 服務器,而不是連接Web 服務器的用戶運行的程序。
解決方法:
可以用--local-infile=0 選項啟動MySQLd 從服務器端禁用所有LOAD DATA
LOCAL 命令。
對於mysql 命令行客戶端,可以通過指定--local-infile[=1]選項啟用LOAD DATA LOCAL,或通過--local-infile=0 選項禁用。類似地,對於MySQLimport,--local or -L 選項啟用本地數據文件裝載。在任何情況下,成功進行本地裝載需要服務器啟用相關選項。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved