MySQL成勒索新目標,數據服務基線安全問題迫在眉睫

據最新報道顯示,繼MongoDB和Elasticsearch以後,MySQL成爲下個數據勒索目標,從2月12日凌晨開始,已有成百上千個開放在公網的MySQL數據庫被劫持,刪除了數據庫中的存儲數據,攻擊者留下勒索信息,要求支付比特幣以贖回數據。mysql

問題分析

遍觀MongoDB和Elasticsearch以及如今的MySQL數據庫勒索,能夠發現都是基線安全問題致使被黑客劫持數據而勒索,緣由在於這些服務都開放在公網上,而且存在空密碼或者弱口令等使得攻擊者能夠輕易暴力破解成功,直接連上數據庫從而下載並清空數據,特別是不正確的安全組配置致使問題被放大。redis

其實相似問題已不是第一次,近期雲鼎實驗室觀測到多起案例,攻擊呈現擴大態勢,不只僅是勒索,更多的是服務器被入侵,從而致使數據被下載。基線安全問題已經成了Web漏洞以外入侵服務器的主要途徑,特別是弱口令等狀況。錯誤的配置能夠致使相關服務暴露在公網上,成爲黑客攻擊的目標,加上採用空密碼等弱口令,黑客能夠輕易入侵這些服務。sql

安全自查

值此事件爆發之際,建議對本身的服務器進行自查,避免相關數據丟失等問題,具體自查方式可參考以下:
一、排查服務器開放的端口及對應的服務,如無必要,關閉外網訪問;可使用NMap 直接執行 nmap 服務器IP(在服務器外網執行),可獲得如下結果即爲開放在外網的端口和服務。mongodb

二、重點針對這些開放在公網上的服務進行配置的檢查,檢查相關服務是否設置密碼,是否弱口令。
三、如無必要,均不要使用root或者其餘系統高權限帳號啓動相關服務。數據庫

安全建議及修復方案

1、採用正確的安全組或者iptables等方式實現訪問控制;
2、關閉相關服務外網訪問和修改弱密碼:
一、MongoDB
a. 配置鑑權
下面以3.2版本爲例,給出 MongoDB設置權限認證,具體步驟以下:安全

  1. 啓動MongoDB進程是加上-auth參數或在MongoDB的配置文件中加上auth = true;
  2. 帶auth啓動的MongoDB,如未建立用戶,MongoDB會容許本地訪問後建立管理員用戶。建立步驟以下:
1. 切換到 admin 庫;
2. 建立管理員用戶,命令以下(user和pwd能夠根據須要設置):
db.createUser({user: "root",pwd: "password",roles: [ "root" ]})
3. 使用管理員用戶登陸後,根據角色建立您須要的用戶

b. 關閉公網訪問
可經過MongoDB的bind_ip參數進行配置,只需將IP綁定爲內網IP便可,以下:服務器

1. 啓動時增長bind_ip參數:mongod --bind_ip 127.0.0.1,10.x.x.x
2. 在配置文件mongodb.conf中添加如下內容:
bind_ip = 127.0.0.1,10.x.x.x
其中10.x.x.x爲您機器的內網IP.

二、Redis
a. 配置鑑權ui

  1. 修改配置文件,增長 「requirepass 密碼」 項配置(配置文件通常在/etc/redis.conf)
  2. 在鏈接上Redis的基礎上,經過命令行配置,config set requirepass yourPassword

b. 關閉公網訪問spa

  1. 配置bind選項,限定能夠鏈接Redis服務器的IP,修改 Redis 的默認端口6379

c. 其餘命令行

  1. 配置rename-command 配置項 「RENAME_CONFIG」,重名Redis相關命令,這樣即便存在未受權訪問,也可以給攻擊者使用config 指令加大難度(不過也會給開發者帶來不方便)

相關配置完畢後重啓Redis-server服務

三、MySQL
a. 配置鑑權
MySQL安裝默認要求設置密碼,若是是弱命令,可經過如下幾種方式修改密碼:

  1. UPDATE USER語句
    //以root登陸MySQL後,
     USE mysql;
     UPDATE user SET password=PASSWORD('新密碼') WHERE user='root';
     FLUSH PRIVILEGES;
  2. SET PASSWORD語句
    //以root登陸MySQL後,
     SET PASSWORD FOR root=PASSWORD('新密碼');
  3. mysqladmin命令
    mysqladmin -u root -p 舊密碼 新密碼

b. 關閉公網訪問

  1. 啓動參數或者配置文件中設置bind-address= IP綁定內部IP
  2. 以root帳號鏈接數據庫,排查user表中用戶的host字段值爲%或者非localhost的用戶,修改host爲localhost或者指定IP或者刪除不必用戶

四、其餘服務
請參考以上方式或者官方文檔進行配置

本文轉載自騰雲閣,已得到做者受權。

相關文章
相關標籤/搜索