天天看點

Hadoop黑客贖金事件解讀及防範

前言

年關将至,Mongodb資料丢失的事情還在眼前,數以千計的Mongodb資料庫已經被删除或者被黑客勒索,參考:

MongoDB黑客贖金事件解讀及防範

。就在最近一段時間,黑客也在攻擊Hadoop,有不少Hadoop叢集的資料全部丢失,這些資料甚至有上TB的資料量,對企業造成了巨大的損失。 本文講述這個問題及後續的預防方案。

希望看到文章的同學及時修複問題,避免資料丢失。也歡迎轉發,讓更多的同學知曉。

攻擊手段

一般使用者為了友善或者不注意,在電信IDC機房或者雲上直接開放了HDFS的50070 web端口。那麼黑客可以通過簡單的幾個指令,比如:

操作:
curl -i -X DELETE "http://ip:50070/webhdfs/v1/tmp?op=DELETE&recursive=true"
curl -i -X PUT "http://ip:50070/webhdfs/v1/NODATA4U_SECUREYOURSHIT?op=MKDIRS"            

黑客可以把tmp(可以其它目錄)下的資料删除;也可以看到很多日志資訊擷取敏感資料;或者不斷寫,把HDFS寫滿;更加有一些黑客把資料備份走,再把HDFS删除,直接發送勒索郵件。

最後界面如圖,一般黑客還提醒如下:

Hadoop黑客贖金事件解讀及防範

其實這個不是HDFS的漏洞,是HDFS提供的webhdfs功能,不過很多同學沒有意識到資料可以通過此途徑删除。

目前在 

https://www.shodan.io

 上查詢50070端口,如下圖

Hadoop黑客贖金事件解讀及防範

在中國有 8,500+ hadoop叢集的50070端口是對公網開放的,這些叢集理論都存在風險。這個隻是此網站公布的,真實的資料遠比這個多得多,安全形勢不容樂觀。

防護手段

基本的:

最好的處理方式是,把所有直接開放的端口,包括50070端口在内的所有端口對公網全部禁止。這些端口包括:

Hadoop預設情況開放了很多端口提供WebUI, 下面列舉了相關端口資訊:

  • HDFS
    • NameNode 預設端口 50070
    • SecondNameNode 預設端口 50090
    • DataNode 預設端口 50075
    • Backup/Checkpoint node 預設端口 50105-
  • YARN(JobTracker)
    • ResourceManager 預設端口8088
    • JobTracker 預設端口 50030
    • TaskTracker 預設端口 50060
  • Hue 預設端口 8080

等等

如果不清楚,則按照最小化原則,開放最小化端口,如果實在需要通路這些端口:

1、如果是雲環境,可以在雲上購買一台帶界面的環境(win、linux等,這個機器就是跳闆機),再最小化打通此機器跟Hadoop環境的通道。

2、即使要開通公網的端口,可以到ecs的安全組中,開通到你本地環境的公網ip的端口,不要全網開通。

PS:一些客戶說我這個是測試環境,不是生産環境,丢失了沒有關系。但是需要注意的是,如果客戶攻擊了你此台機器,此台機器淪為黑客的肉機不說,如果别的機器跟這些機器在一個安全組,則很有可能會攻擊其他機器的。

進階的

  • 關閉webhdfs的功能,dfs.webhdfs.enabled設定為false
  • 開啟類似kerberos功能(比較複雜,不過多表述)
  • 及時備份重要資料,比如雲上備份到OSS中

E-MapReduce

如果目前在ECS自建,或者想自建的同學,歡迎使用E-MapReduce産品:

https://www.aliyun.com/product/emapreduce

。 目前E-MapReduce産品購買叢集後

  • 預設會禁止所有大資料元件的所有端口。
  • yarn ui、ganglia等通過80端口通路,設定賬号、密碼通路機制,保證安全,無需直接開放50070端口。
Hadoop黑客贖金事件解讀及防範
  • 可以設定周期任務,把一些重要的資料備份到OSS中(通過E-MapReduce提供的工作流,運作DiskCP),備份整個叢集往往不現實,因為hadoop意味着資料量巨大,使用者可以自己設計備份原則,備份核心的機密的資料。
  • 核心團隊關注Hadoop相關漏洞,及時從産品、核心層面修複
  • 定期掃描一些端口,預防客戶誤開

後續會探求更強大安全保護機制,提供給客戶選擇,比如E-MapReduce層面的賬号密碼機制,E-MapReduce團隊會一直關注資料安全問題。

特别需要注意的是, E-MapReduce已經做好了安全防護,但是一些客戶打開公網的端口,最後導緻資料丢失,是非常悲劇的事情。

HBase技術交流社群

- 阿裡官方“HBase生态+Spark社群大群”點選加入:

https://dwz.cn/Fvqv066s

繼續閱讀