保護Hadoop集群三大方法

2021-09-03 02:18:18 字數 3101 閱讀 2625

大約在兩年前,開源資料庫解決方案mongodb以及hadoop曾遭受過大量惡意攻擊,這些攻擊後被統稱為「勒索軟體」,因為其攻擊者會擦除或加密資料,然後向被攻擊者索要資金以恢復資料。自今年以來,不少惡意軟體開始頻繁向hadoop集群伺服器下手,受影響最大的莫過於連線到網際網路且沒有啟用安全防護的hadoop集群。

一直以來,hadoop集群伺服器都是乙個非常穩定的平台,因此企業願意選擇搭建並使用。但是,自9月下旬以來,被攻擊的伺服器已經從最初的每天幾台發展到70多台,demonbot(新型的惡意軟體)可以主動在網上搜尋易受攻擊的hadoop集群伺服器並對其發起進攻。一家名為radware的網路安全公司跟蹤demonbot發現,其每天可以發起超過一百萬次的嘗試。

雖然很多安全研究人員嘗試掃瞄並解決demonbot,但最終只是找尋到了部分蹤跡。唯一被證實的是,直到真正的ddos攻擊發生的前一秒,機器都是保持沉默的。目前只知道demonbot的ddos攻擊向量是udp和tcp floods。

目前可知的攻擊過程

據查證,demonbot利用了企業網路中使用的資源排程系統——yarn模組中未經身份驗證的遠端**執行漏洞以進行集群資源管理和作業排程。自今年3月起,github上就出現了證明安全漏洞概念的驗證**。目前看來,問題似乎是yarn中的配置錯誤導致的,它暴露了rest api並允許遠端應用程式向集群新增新的作業。yarn提供有預設開放在8088和8090的rest api(預設前者)允許使用者直接通過api進行相關的應用建立、任務提交執行等操作,如果配置不當,rest api將會開放在公網導致未授權訪問的問題發生。利用這種疏忽,攻擊者可以輕易提交demonbot惡意軟體。

radware表示,目前處於離線狀態的惡意軟體**引用了名為owari的mirai變種。然而,由於**中出現了不熟悉的函式名稱和邏輯,研究人員決定將其命名為demonbot,並標記為新的惡意軟體。研究人員已經在pastebin上發現了完整的惡意軟體源**,由乙個別名為self-rep-netis的人建立,其中包含部分源**以及用於建立多平台機械人的指令碼。

自今年以來,新的惡意軟體——xbash和demonbot發動了多起針對apache hadoop集群伺服器進行的位元幣挖掘和ddos攻擊。這種惡意軟體可以掃瞄網際網路上的所有hadoop集群,不安全的集群一被放置在網際網路上,幾分鐘內就可能被感染。

保護hadoop集群免受惡意軟體攻擊的方法:

1、不要將集群直接暴露給網際網路

將集群直接暴露給網際網路相當於為惡意軟體的攻擊提供了便利,demonbot只需輕易掃瞄便可鎖定目標集群,並利用漏洞發起攻擊。

2、使用kerberos進行強身份驗證

hadoop集群本身提供簡單的安全防禦手段,但這對於企業而言遠遠不夠,kerberos成為了不少研發人員的選擇。其實,大部分攻擊都利用了系統已有漏洞,並不是攻擊手段有多高明,這就好比小偷從大開的家門進入一樣簡單。如果沒有kerberos,任何與集**互的使用者都可以偽裝成其他使用者,甚至不需要特定金鑰,任何使用者都可以執行任何操作,類似於乙個所有人都知道root密碼的linux系統。

在乙個正確配置且使用kerberos進行身份驗證的hadoop集群中, 使用者與集群進行任何互動都必須輸入憑據(如使用者名稱和密碼)以證明自己的身份和許可權,此驗證提供了使用者和管理員期望的安全性:使用者在系統中的功能無法被他人訪問,只有管理員可以訪問管理帳戶。

如果沒有kerberos,任何人都可以訪問hadoop集群並執行各種操作。安全研究人員在hack.lu會議上演示的攻擊案例就是提交乙個簡單的yarn作業,並在集群的所有機器上執行**,這可用於在該集群的每台機器上獲取shell。xbash發起的攻擊之一就是使用metasploit模組向yarn提交位元幣挖掘工作。demonbot使用相同的技術對受感染的hadoop伺服器執行ddos攻擊。這種攻擊並不複雜,目標hadoop伺服器連線到開放式網際網路,並且未啟用kerberos身份驗證。

3、勾選安全服務

cloudera的工程師使用cloudera altus建立了乙個hadoop集群。altus是乙個雲服務平台,其能夠使用cdh在公有雲基礎架構內大規模分析和處理資料。雖然使用altus建立不受這些攻擊影響的安全集群很簡單,但也可以設定易受攻擊的集群。

在altus中,製作易受攻擊的集群意味著不要選中secure clusters,也不要使用允許網際網路上任何位置傳入流量的aws安全組。在建立對世界開放的不安全集群的幾分鐘內,我們就可以觀察到攻擊行動。yarn web ui會顯示許多正在提交和執行的作業:demonbot大約每隔一分鐘就會對集**起攻擊。

要想設定乙個更加安全的集群,我們需要滿足兩大目標:一是僅允許從一組有限的計算機對集群進行ssh訪問;二是通過kerberos啟用強身份驗證,這在一些工具中很容易實現,比如cloudera altus。在cloudera altus中,集群是在環境中建立的,環境描述了如何訪問使用者的程式帳戶及其包含的資源,指定了建立集群的基礎知識。因此,我們需要重點注意的是altus環境配置。建立環境有兩種方法:一是通過簡單的快速入門或設定嚮導,快速入門教程當然最簡單。建立環境時,選擇「environment quickstart」,然後選擇「secure clusters」的「enable」即可。

啟用安全集群後,將啟用kerberos。quickstart還將建立乙個外部世界無法訪問的安全組 ,我們在此環境中建立的集群,基本不會被現有惡意軟體攻擊。如果需要使用環境建立嚮導,可以單擊「 quickstart」中的「secure clusters」。不同的是,在第二種方式中,使用者必須自己提供安全組。建立安全組時,請確保它僅允許從altus ip位址進行ssh訪問。當然,無論你選擇什麼工具和平台,都需要保證勾選了安全服務,國內各大廠商在設計時應該都將其考慮在內了。

結論

綜上,企業在搭建hadoop集群時需要注意三點:一是不要將集群直接暴露給網際網路;二是始終啟用kerberos身份驗證;三是選用合適的平台或者工具時需要確保勾選了安全服務。

保護你iSCSI儲存系統的五大方法

www.2cto.com編外 可以結合本文看看 如何才能將網路黑客阻擋在iscsi san系統的大門之外?本文中將會推薦5種解決辦法。提醒讀者注意的是,這些辦法雖然都能起到維護ip san系統安全的作用,但各自都存在一定的優缺點。建議使用者在實施時仔細斟酌,只要使用得當,可大幅提公升儲存網路的安全效...

微信上成交的三大思想,五大方法

2.只要你敢賣,就有人賣,克服恐懼心理,不要害怕去成交,畢竟成交只是少數,記住經典一句話 不是我要賣,而是你要買 3.成交是一種氣質,氣質可以培養,不是天生的,是可以轉變的,一次又一次的成交是培養的途徑 如果沒有這三個前提成交真的很難。二 主動出擊私聊套路 不喜歡主動,很多的成交都是主動出擊來的,主...

微信上成交的三大思想,五大方法

2.只要你敢賣,就有人賣,克服恐懼心理,不要害怕去成交,畢竟成交只是少數,記住經典一句話 不是我要賣,而是你要買 3.成交是一種氣質,氣質可以培養,不是天生的,是可以轉變的,一次又一次的成交是培養的途徑 如果沒有這三個前提成交真的很難。二 主動出擊私聊套路 不喜歡主動,很多的成交都是主動出擊來的,主...