MySQL成數據勒索新目標,開發4步自查
作者:張祖優,騰訊雲@雲鼎實驗室
據最新報道顯示,繼MongoDB和Elasticsearch之後,MySQL成為下個數據勒索目標,從2月12日凌晨開始,已有成百上千個開放在公網的MySQL資料庫被劫持,刪除了資料庫中的存儲數據,攻擊者留下勒索信息,要求支付比特幣以贖回數據。
問題分析
遍觀MongoDB和Elasticsearch以及現在的MySQL資料庫勒索,可以發現都是基線安全問題導致被黑客劫持數據而勒索,原因在於這些服務都開放在公網上,並且存在空密碼或者弱口令等使得攻擊者可以輕易暴力破解成功,直接連上資料庫從而下載並清空數據,特別是不正確的安全組配置導致問題被放大。
其實類似問題已不是第一次,近期雲鼎實驗室觀測到多起案例,攻擊呈現擴大態勢,不僅僅是勒索,更多的是伺服器被入侵,從而導致數據被下載。基線安全問題已經成了Web漏洞之外入侵伺服器的主要途徑,特別是弱口令等情況。錯誤的配置可以導致相關服務暴露在公網上,成為黑客攻擊的目標,加上採用空密碼等弱口令,黑客可以輕易入侵這些服務。
安全自查
值此事件爆發之際,建議對自己的伺服器進行自查,避免相關數據丟失等問題,具體自查方式可參考如下:
1、排查伺服器開放的埠及對應的服務,如無必要,關閉外網訪問;可以使用NMap 直接執行 nmap 伺服器IP(在伺服器外網執行),可得到以下結果即為開放在外網的埠和服務。2、重點針對這些開放在公網上的服務進行配置的檢查,檢查相關服務是否設置密碼,是否弱口令。
3、如無必要,均不要使用root或者其他系統高許可權賬號啟動相關服務。安全建議及修復方案
一、採用正確的安全組或者iptables等方式實現訪問控制;
二、關閉相關服務外網訪問和修改弱密碼:1、MongoDBa. 配置鑒權
下面以3.2版本為例,給出 MongoDB設置許可權認證,具體步驟如下:- 啟動MongoDB進程是加上-auth參數或在MongoDB的配置文件中加上auth = true;
- 帶auth啟動的MongoDB,如未創建用戶,MongoDB會允許本地訪問後創建管理員用戶。創建步驟如下:
1. 切換到 admin 庫;n2. 創建管理員用戶,命令如下(user和pwd可以根據需要設置):ndb.createUser({user: "root",pwd: "password",roles: [ "root" ]})n3. 使用管理員用戶登錄後,根據角色創建您需要的用戶n
b. 關閉公網訪問
可通過MongoDB的bind_ip參數進行配置,只需將IP綁定為內網IP即可,如下:1. 啟動時增加bind_ip參數:mongod --bind_ip 127.0.0.1,10.x.x.xn2. 在配置文件mongodb.conf中添加以下內容:nbind_ip = 127.0.0.1,10.x.x.xn其中10.x.x.x為您機器的內網IP.n
2、Redis
a. 配置鑒權
- 修改配置文件,增加 「requirepass 密碼」 項配置(配置文件一般在/etc/redis.conf)
- 在連接上Redis的基礎上,通過命令行配置,config set requirepass yourPassword
b. 關閉公網訪問
- 配置bind選項,限定可以連接Redis伺服器的IP,修改 Redis 的默認埠6379
c. 其他
- 配置rename-command 配置項 「RENAME_CONFIG」,重名Redis相關命令,這樣即使存在未授權訪問,也能夠給攻擊者使用config 指令加大難度(不過也會給開發者帶來不方便)
相關配置完畢後重啟Redis-server服務
3、MySQL
a. 配置鑒權MySQL安裝默認要求設置密碼,如果是弱命令,可通過以下幾種方式修改密碼:- UPDATE USER語句
//以root登錄MySQL後,n USE mysql;n UPDATE user SET password=PASSWORD(新密碼) WHERE user=root;n FLUSH PRIVILEGES;n
- SET PASSWORD語句
//以root登錄MySQL後,n SET PASSWORD FOR root=PASSWORD(新密碼);n
- mysqladmin命令
mysqladmin -u root -p 舊密碼 新密碼n
b. 關閉公網訪問
- 啟動參數或者配置文件中設置bind-address= IP綁定內部IP
- 以root賬號連接資料庫,排查user表中用戶的host欄位值為%或者非localhost的用戶,修改host為localhost或者指定IP或者刪除沒必要用戶
3、其他服務
請參考以上方式或者官方文檔進行配置參考鏈接
- 《避免 MongoDB 被勒索詳解,騰訊雲上更安全》避免 MongoDB 被勒索詳解,騰訊雲上更安全
- 《下一個獵殺目標:近期大量MySQL資料庫遭勒索攻擊》下一個獵殺目標:近期大量MySQL資料庫遭勒索攻擊 - FreeBuf.COM | 關注黑客與極客
- 《知名搜索引擎Elasticsearch成為勒索軟體敲詐目標》知名搜索引擎Elasticsearch成為勒索軟體敲詐目標
- 《Redis 未授權訪問配合 SSH key 文件利用分析》Redis 未授權訪問配合 SSH key 文件利用分析
本文首發騰雲閣-騰訊雲技術社區:https://www.qcloud.com/community/article/519598001488335177
推薦閱讀:
※淺談如何對MySQL內核進行深度優化
※【原創】MYSQL 的那些「坑」
※12 條用於 Linux 的 MySQL/MariaDB 安全最佳實踐